From 29fa10e8f906c6a9d0211a08d302dbff5f841922 Mon Sep 17 00:00:00 2001 From: Olivier Biot Date: Tue, 13 Feb 2024 10:55:11 +0800 Subject: [PATCH] 16.1.3 dist files --- dist/melonjs.mjs/_virtual/_commonjsHelpers.js | 2 +- dist/melonjs.mjs/_virtual/earcut.js | 2 +- dist/melonjs.mjs/_virtual/howler.js | 2 +- dist/melonjs.mjs/_virtual/index.js | 2 +- dist/melonjs.mjs/_virtual/re.js | 2 +- dist/melonjs.mjs/application/application.js | 2 +- dist/melonjs.mjs/application/header.js | 2 +- dist/melonjs.mjs/application/resize.js | 2 +- dist/melonjs.mjs/application/settings.js | 2 +- dist/melonjs.mjs/audio/audio.js | 2 +- dist/melonjs.mjs/camera/camera2d.js | 2 +- dist/melonjs.mjs/const.js | 2 +- dist/melonjs.mjs/geometries/ellipse.js | 2 +- dist/melonjs.mjs/geometries/line.js | 2 +- dist/melonjs.mjs/geometries/path2d.js | 2 +- dist/melonjs.mjs/geometries/point.js | 2 +- dist/melonjs.mjs/geometries/poly.js | 2 +- dist/melonjs.mjs/geometries/rectangle.js | 2 +- dist/melonjs.mjs/geometries/roundrect.js | 2 +- dist/melonjs.mjs/geometries/toarccanvas.js | 2 +- dist/melonjs.mjs/index.js | 4 +- dist/melonjs.mjs/input/gamepad.js | 2 +- dist/melonjs.mjs/input/input.js | 2 +- dist/melonjs.mjs/input/keyboard.js | 2 +- dist/melonjs.mjs/input/pointer.js | 2 +- dist/melonjs.mjs/input/pointerevent.js | 2 +- dist/melonjs.mjs/lang/console.js | 2 +- dist/melonjs.mjs/lang/deprecated.js | 2 +- dist/melonjs.mjs/level/level.js | 2 +- dist/melonjs.mjs/level/tiled/TMXGroup.js | 2 +- dist/melonjs.mjs/level/tiled/TMXLayer.js | 2 +- dist/melonjs.mjs/level/tiled/TMXObject.js | 2 +- dist/melonjs.mjs/level/tiled/TMXTile.js | 2 +- dist/melonjs.mjs/level/tiled/TMXTileMap.js | 2 +- dist/melonjs.mjs/level/tiled/TMXTileset.js | 2 +- .../level/tiled/TMXTilesetGroup.js | 2 +- dist/melonjs.mjs/level/tiled/TMXUtils.js | 2 +- dist/melonjs.mjs/level/tiled/constants.js | 2 +- .../tiled/renderer/TMXHexagonalRenderer.js | 2 +- .../tiled/renderer/TMXIsometricRenderer.js | 2 +- .../tiled/renderer/TMXOrthogonalRenderer.js | 2 +- .../level/tiled/renderer/TMXRenderer.js | 2 +- .../tiled/renderer/TMXStaggeredRenderer.js | 2 +- .../level/tiled/renderer/autodetect.js | 2 +- dist/melonjs.mjs/loader/cache.js | 2 +- dist/melonjs.mjs/loader/loader.js | 2 +- dist/melonjs.mjs/loader/loadingscreen.js | 2 +- dist/melonjs.mjs/loader/melonjs_logo.png.js | 2 +- dist/melonjs.mjs/loader/parsers/binary.js | 2 +- dist/melonjs.mjs/loader/parsers/fetchdata.js | 2 +- dist/melonjs.mjs/loader/parsers/fontface.js | 2 +- dist/melonjs.mjs/loader/parsers/image.js | 2 +- dist/melonjs.mjs/loader/parsers/json.js | 2 +- dist/melonjs.mjs/loader/parsers/script.js | 2 +- dist/melonjs.mjs/loader/parsers/tmx.js | 2 +- dist/melonjs.mjs/loader/parsers/video.js | 2 +- dist/melonjs.mjs/loader/settings.js | 2 +- dist/melonjs.mjs/math/color.js | 2 +- dist/melonjs.mjs/math/math.js | 2 +- dist/melonjs.mjs/math/matrix2.js | 2 +- dist/melonjs.mjs/math/matrix3.js | 2 +- dist/melonjs.mjs/math/observable_vector2.js | 2 +- dist/melonjs.mjs/math/observable_vector3.js | 2 +- dist/melonjs.mjs/math/vector2.js | 2 +- dist/melonjs.mjs/math/vector3.js | 2 +- dist/melonjs.mjs/particles/emitter.js | 2 +- dist/melonjs.mjs/particles/particle.js | 2 +- dist/melonjs.mjs/particles/settings.js | 2 +- dist/melonjs.mjs/physics/body.js | 2 +- dist/melonjs.mjs/physics/bounds.js | 2 +- dist/melonjs.mjs/physics/collision.js | 2 +- dist/melonjs.mjs/physics/detector.js | 2 +- dist/melonjs.mjs/physics/quadtree.js | 2 +- dist/melonjs.mjs/physics/response.js | 2 +- dist/melonjs.mjs/physics/sat.js | 2 +- dist/melonjs.mjs/physics/world.js | 2 +- dist/melonjs.mjs/plugin/plugin.js | 6 +- dist/melonjs.mjs/renderable/collectable.js | 2 +- dist/melonjs.mjs/renderable/colorlayer.js | 2 +- dist/melonjs.mjs/renderable/container.js | 2 +- dist/melonjs.mjs/renderable/draggable.js | 2 +- dist/melonjs.mjs/renderable/dragndrop.js | 2 +- dist/melonjs.mjs/renderable/entity/entity.js | 2 +- dist/melonjs.mjs/renderable/imagelayer.js | 2 +- dist/melonjs.mjs/renderable/light2d.js | 2 +- .../melonjs.mjs/renderable/nineslicesprite.js | 2 +- dist/melonjs.mjs/renderable/renderable.js | 2 +- dist/melonjs.mjs/renderable/sprite.js | 2 +- .../melonjs.mjs/renderable/text/bitmaptext.js | 2 +- .../renderable/text/bitmaptextdata.js | 2 +- dist/melonjs.mjs/renderable/text/glyph.js | 2 +- dist/melonjs.mjs/renderable/text/text.js | 2 +- .../renderable/text/textmetrics.js | 2 +- dist/melonjs.mjs/renderable/text/textstyle.js | 2 +- dist/melonjs.mjs/renderable/trigger.js | 2 +- .../renderable/ui/uibaseelement.js | 2 +- .../renderable/ui/uispriteelement.js | 2 +- .../melonjs.mjs/renderable/ui/uitextbutton.js | 2 +- dist/melonjs.mjs/state/stage.js | 2 +- dist/melonjs.mjs/state/state.js | 2 +- dist/melonjs.mjs/system/device.js | 2 +- dist/melonjs.mjs/system/dom.js | 2 +- dist/melonjs.mjs/system/event.js | 2 +- dist/melonjs.mjs/system/platform.js | 2 +- dist/melonjs.mjs/system/pooling.js | 2 +- dist/melonjs.mjs/system/save.js | 2 +- dist/melonjs.mjs/system/timer.js | 2 +- dist/melonjs.mjs/tweens/easing.js | 2 +- dist/melonjs.mjs/tweens/interpolation.js | 2 +- dist/melonjs.mjs/tweens/tween.js | 2 +- dist/melonjs.mjs/utils/agent.js | 2 +- dist/melonjs.mjs/utils/array.js | 2 +- dist/melonjs.mjs/utils/file.js | 2 +- dist/melonjs.mjs/utils/function.js | 2 +- dist/melonjs.mjs/utils/string.js | 2 +- dist/melonjs.mjs/utils/utils.js | 13 ++++- .../video/canvas/canvas_renderer.js | 2 +- dist/melonjs.mjs/video/renderer.js | 2 +- dist/melonjs.mjs/video/texture/atlas.js | 2 +- dist/melonjs.mjs/video/texture/cache.js | 2 +- .../video/texture/canvas_texture.js | 2 +- dist/melonjs.mjs/video/utils/autodetect.js | 2 +- dist/melonjs.mjs/video/video.js | 2 +- dist/melonjs.mjs/video/webgl/buffer/vertex.js | 2 +- .../video/webgl/compositors/compositor.js | 2 +- .../webgl/compositors/primitive_compositor.js | 2 +- .../webgl/compositors/quad_compositor.js | 2 +- dist/melonjs.mjs/video/webgl/glshader.js | 2 +- .../video/webgl/shaders/primitive.frag.js | 2 +- .../video/webgl/shaders/primitive.vert.js | 2 +- .../video/webgl/shaders/quad.frag.js | 2 +- .../video/webgl/shaders/quad.vert.js | 2 +- .../video/webgl/utils/attributes.js | 2 +- .../video/webgl/utils/precision.js | 2 +- dist/melonjs.mjs/video/webgl/utils/program.js | 2 +- dist/melonjs.mjs/video/webgl/utils/string.js | 2 +- .../melonjs.mjs/video/webgl/utils/uniforms.js | 2 +- .../melonjs.mjs/video/webgl/webgl_renderer.js | 2 +- dist/melonjs.module.js | 19 +++++-- docs/docs/Class-Index.html | 2 +- docs/docs/index.html | 2 +- docs/docs/melonjs.api.json | 2 +- docs/docs/melonjs.api.json.md5 | 2 +- docs/docs/melonjs.html | 2 +- docs/docs/melonjs/Application.html | 2 +- docs/docs/melonjs/Application/Settings.html | 2 +- docs/docs/melonjs/BitmapText.html | 2 +- docs/docs/melonjs/Body.html | 2 +- docs/docs/melonjs/Bounds.html | 2 +- docs/docs/melonjs/Camera2d.html | 2 +- docs/docs/melonjs/Camera2d/AXIS.html | 2 +- docs/docs/melonjs/CanvasRenderer.html | 2 +- docs/docs/melonjs/CanvasTexture.html | 2 +- docs/docs/melonjs/Collectable.html | 2 +- docs/docs/melonjs/Color.html | 2 +- docs/docs/melonjs/ColorLayer.html | 2 +- docs/docs/melonjs/Compositor.html | 2 +- docs/docs/melonjs/Container.html | 2 +- docs/docs/melonjs/Detector.html | 2 +- docs/docs/melonjs/Draggable.html | 2 +- docs/docs/melonjs/DraggableEntity.html | 2 +- docs/docs/melonjs/DropTarget.html | 2 +- docs/docs/melonjs/DroptargetEntity.html | 2 +- docs/docs/melonjs/Ellipse.html | 2 +- docs/docs/melonjs/Entity.html | 2 +- docs/docs/melonjs/GLShader.html | 2 +- docs/docs/melonjs/GUI_Object.html | 2 +- docs/docs/melonjs/ImageLayer.html | 2 +- docs/docs/melonjs/Light2d.html | 2 +- docs/docs/melonjs/Line.html | 2 +- docs/docs/melonjs/Math.html | 2 +- docs/docs/melonjs/Math/clamp.html | 2 +- docs/docs/melonjs/Math/degToRad.html | 2 +- docs/docs/melonjs/Math/isPowerOfTwo.html | 2 +- docs/docs/melonjs/Math/nextPowerOfTwo.html | 2 +- docs/docs/melonjs/Math/radToDeg.html | 2 +- docs/docs/melonjs/Math/random.html | 2 +- docs/docs/melonjs/Math/randomFloat.html | 2 +- docs/docs/melonjs/Math/round.html | 2 +- docs/docs/melonjs/Math/toBeCloseTo.html | 2 +- docs/docs/melonjs/Math/weightedRandom.html | 2 +- docs/docs/melonjs/Matrix2d.html | 2 +- docs/docs/melonjs/Matrix3d.html | 2 +- docs/docs/melonjs/NineSliceSprite.html | 2 +- docs/docs/melonjs/ObjectPool.html | 2 +- docs/docs/melonjs/ObservableVector2d.html | 2 +- docs/docs/melonjs/ObservableVector3d.html | 2 +- docs/docs/melonjs/Particle.html | 2 +- docs/docs/melonjs/ParticleEmitter.html | 2 +- .../docs/melonjs/ParticleEmitterSettings.html | 2 +- docs/docs/melonjs/Path2D.html | 2 +- docs/docs/melonjs/Point.html | 2 +- docs/docs/melonjs/Pointer.html | 2 +- docs/docs/melonjs/Polygon.html | 2 +- docs/docs/melonjs/PrimitiveCompositor.html | 2 +- docs/docs/melonjs/QuadCompositor.html | 2 +- docs/docs/melonjs/QuadTree.html | 2 +- docs/docs/melonjs/Rect.html | 2 +- docs/docs/melonjs/Renderable.html | 2 +- docs/docs/melonjs/Renderer.html | 2 +- docs/docs/melonjs/Renderer/Texture.html | 2 +- docs/docs/melonjs/Renderer/getHeight.html | 2 +- docs/docs/melonjs/Renderer/getWidth.html | 2 +- docs/docs/melonjs/ResponseObject.html | 2 +- docs/docs/melonjs/RoundRect.html | 2 +- docs/docs/melonjs/Sprite.html | 2 +- docs/docs/melonjs/Stage.html | 2 +- docs/docs/melonjs/TMXHexagonalRenderer.html | 2 +- docs/docs/melonjs/TMXIsometricRenderer.html | 2 +- docs/docs/melonjs/TMXLayer.html | 2 +- docs/docs/melonjs/TMXOrthogonalRenderer.html | 2 +- docs/docs/melonjs/TMXRenderer.html | 2 +- docs/docs/melonjs/TMXStaggeredRenderer.html | 2 +- docs/docs/melonjs/TMXTileMap.html | 2 +- docs/docs/melonjs/TMXTileset.html | 2 +- docs/docs/melonjs/TMXTilesetGroup.html | 2 +- docs/docs/melonjs/TMXUtils.html | 2 +- .../melonjs/TMXUtils/applyTMXProperties.html | 2 +- docs/docs/melonjs/TMXUtils/decode.html | 2 +- .../melonjs/TMXUtils/decodeBase64AsArray.html | 2 +- docs/docs/melonjs/TMXUtils/decodeCSV.html | 2 +- docs/docs/melonjs/TMXUtils/decompress.html | 2 +- docs/docs/melonjs/TMXUtils/parse.html | 2 +- .../melonjs/TMXUtils/setInflateFunction.html | 2 +- docs/docs/melonjs/Text.html | 2 +- docs/docs/melonjs/TextMetrics.html | 2 +- docs/docs/melonjs/TextureAtlas.html | 2 +- docs/docs/melonjs/Tile.html | 2 +- docs/docs/melonjs/Timer_.html | 2 +- docs/docs/melonjs/Trigger.html | 2 +- docs/docs/melonjs/Tween.html | 2 +- docs/docs/melonjs/Tween/Easing.html | 2 +- docs/docs/melonjs/Tween/Interpolation.html | 2 +- docs/docs/melonjs/UIBaseElement.html | 2 +- docs/docs/melonjs/UISpriteElement.html | 2 +- docs/docs/melonjs/UITextButton.html | 2 +- docs/docs/melonjs/Vector2d.html | 2 +- docs/docs/melonjs/Vector3d.html | 2 +- docs/docs/melonjs/WebGLRenderer.html | 2 +- docs/docs/melonjs/World.html | 2 +- docs/docs/melonjs/audio.html | 2 +- docs/docs/melonjs/audio/disable.html | 2 +- docs/docs/melonjs/audio/enable.html | 2 +- docs/docs/melonjs/audio/fade.html | 2 +- docs/docs/melonjs/audio/getCurrentTrack.html | 2 +- docs/docs/melonjs/audio/getVolume.html | 2 +- docs/docs/melonjs/audio/hasAudio.html | 2 +- docs/docs/melonjs/audio/hasFormat.html | 2 +- docs/docs/melonjs/audio/init.html | 2 +- docs/docs/melonjs/audio/load.html | 2 +- docs/docs/melonjs/audio/mute.html | 2 +- docs/docs/melonjs/audio/muteAll.html | 2 +- docs/docs/melonjs/audio/muted.html | 2 +- docs/docs/melonjs/audio/pause.html | 2 +- docs/docs/melonjs/audio/pauseTrack.html | 2 +- docs/docs/melonjs/audio/play.html | 2 +- docs/docs/melonjs/audio/playTrack.html | 2 +- docs/docs/melonjs/audio/rate.html | 2 +- docs/docs/melonjs/audio/resume.html | 2 +- docs/docs/melonjs/audio/resumeTrack.html | 2 +- docs/docs/melonjs/audio/seek.html | 2 +- docs/docs/melonjs/audio/setVolume.html | 2 +- docs/docs/melonjs/audio/stop.html | 2 +- docs/docs/melonjs/audio/stopTrack.html | 2 +- docs/docs/melonjs/audio/unload.html | 2 +- docs/docs/melonjs/audio/unloadAll.html | 2 +- docs/docs/melonjs/audio/unmute.html | 2 +- docs/docs/melonjs/audio/unmuteAll.html | 2 +- docs/docs/melonjs/boot.html | 2 +- docs/docs/melonjs/collision.html | 2 +- docs/docs/melonjs/collision/types.html | 2 +- docs/docs/melonjs/consoleHeader.html | 2 +- docs/docs/melonjs/device.html | 2 +- docs/docs/melonjs/device/enableSwipe.html | 2 +- docs/docs/melonjs/device/exitFullscreen.html | 2 +- docs/docs/melonjs/device/focus.html | 2 +- docs/docs/melonjs/device/getElement.html | 2 +- .../docs/melonjs/device/getElementBounds.html | 2 +- docs/docs/melonjs/device/getParentBounds.html | 2 +- .../docs/melonjs/device/getParentElement.html | 2 +- .../melonjs/device/getScreenOrientation.html | 2 +- docs/docs/melonjs/device/getStorage.html | 2 +- docs/docs/melonjs/device/isFullscreen.html | 2 +- docs/docs/melonjs/device/isLandscape.html | 2 +- docs/docs/melonjs/device/isPortrait.html | 2 +- .../docs/melonjs/device/isWebGLSupported.html | 2 +- docs/docs/melonjs/device/lockOrientation.html | 2 +- docs/docs/melonjs/device/onReady.html | 2 +- docs/docs/melonjs/device/platform.html | 2 +- .../melonjs/device/requestFullscreen.html | 2 +- .../melonjs/device/unlockOrientation.html | 2 +- .../melonjs/device/unwatchAccelerometer.html | 2 +- .../device/unwatchDeviceOrientation.html | 2 +- docs/docs/melonjs/device/vibrate.html | 2 +- .../melonjs/device/watchAccelerometer.html | 2 +- .../device/watchDeviceOrientation.html | 2 +- docs/docs/melonjs/event.html | 2 +- docs/docs/melonjs/event/emit.html | 2 +- docs/docs/melonjs/event/off.html | 2 +- docs/docs/melonjs/event/on.html | 2 +- docs/docs/melonjs/event/once.html | 2 +- docs/docs/melonjs/fetchData.html | 2 +- docs/docs/melonjs/game.html | 2 +- docs/docs/melonjs/hasVideoFormat.html | 2 +- docs/docs/melonjs/input.html | 2 +- docs/docs/melonjs/input/GAMEPAD.html | 2 +- docs/docs/melonjs/input/GAMEPAD/AXES.html | 2 +- docs/docs/melonjs/input/GAMEPAD/BUTTONS.html | 2 +- docs/docs/melonjs/input/KEY.html | 2 +- docs/docs/melonjs/input/bindGamepad.html | 2 +- docs/docs/melonjs/input/bindKey.html | 2 +- docs/docs/melonjs/input/bindPointer.html | 2 +- docs/docs/melonjs/input/exitPointerLock.html | 2 +- docs/docs/melonjs/input/getBindingKey.html | 2 +- docs/docs/melonjs/input/globalToLocal.html | 2 +- docs/docs/melonjs/input/hasActiveEvents.html | 2 +- .../melonjs/input/hasRegisteredEvents.html | 2 +- docs/docs/melonjs/input/isKeyPressed.html | 2 +- docs/docs/melonjs/input/keyStatus.html | 2 +- .../melonjs/input/registerPointerEvent.html | 2 +- .../input/releaseAllPointerEvents.html | 2 +- .../melonjs/input/releasePointerEvent.html | 2 +- .../melonjs/input/requestPointerLock.html | 2 +- .../melonjs/input/setGamepadDeadzone.html | 2 +- docs/docs/melonjs/input/setTouchAction.html | 2 +- docs/docs/melonjs/input/triggerKeyEvent.html | 2 +- docs/docs/melonjs/input/unbindGamepad.html | 2 +- docs/docs/melonjs/input/unbindKey.html | 2 +- docs/docs/melonjs/input/unbindPointer.html | 2 +- docs/docs/melonjs/input/unlockKey.html | 2 +- docs/docs/melonjs/level.html | 2 +- docs/docs/melonjs/loader.html | 2 +- docs/docs/melonjs/loader/Asset.html | 2 +- docs/docs/melonjs/loader/getBinary.html | 2 +- docs/docs/melonjs/loader/getImage.html | 2 +- docs/docs/melonjs/loader/getJSON.html | 2 +- docs/docs/melonjs/loader/getTMX.html | 2 +- docs/docs/melonjs/loader/getVideo.html | 2 +- docs/docs/melonjs/loader/load.html | 2 +- docs/docs/melonjs/loader/preload.html | 2 +- docs/docs/melonjs/loader/reload.html | 2 +- docs/docs/melonjs/loader/setBaseURL.html | 2 +- docs/docs/melonjs/loader/setParser.html | 2 +- docs/docs/melonjs/loader/unload.html | 2 +- docs/docs/melonjs/loader/unloadAll.html | 2 +- docs/docs/melonjs/onresize.html | 2 +- docs/docs/melonjs/plugin.html | 2 +- docs/docs/melonjs/plugin/Base.html | 2 +- docs/docs/melonjs/plugin/BasePlugin.html | 2 +- docs/docs/melonjs/plugin/get.html | 2 +- docs/docs/melonjs/plugin/patch.html | 2 +- docs/docs/melonjs/plugin/register.html | 2 +- docs/docs/melonjs/pool.html | 2 +- docs/docs/melonjs/pow.html | 2 +- docs/docs/melonjs/save.html | 2 +- docs/docs/melonjs/scale.html | 2 +- .../src/application/application.js.html | 2 +- .../melonjs/src/application/header.js.html | 2 +- .../melonjs/src/application/resize.js.html | 2 +- .../melonjs/src/application/settings.js.html | 2 +- docs/docs/melonjs/src/audio/audio.js.html | 2 +- docs/docs/melonjs/src/camera/camera2d.js.html | 2 +- docs/docs/melonjs/src/const.js.html | 2 +- .../melonjs/src/geometries/ellipse.js.html | 2 +- docs/docs/melonjs/src/geometries/line.js.html | 2 +- .../melonjs/src/geometries/path2d.js.html | 2 +- .../docs/melonjs/src/geometries/point.js.html | 2 +- docs/docs/melonjs/src/geometries/poly.js.html | 2 +- .../melonjs/src/geometries/rectangle.js.html | 2 +- .../melonjs/src/geometries/roundrect.js.html | 2 +- .../src/geometries/toarccanvas.js.html | 2 +- docs/docs/melonjs/src/index.js.html | 2 +- docs/docs/melonjs/src/input/gamepad.js.html | 2 +- docs/docs/melonjs/src/input/input.js.html | 2 +- docs/docs/melonjs/src/input/keyboard.js.html | 2 +- docs/docs/melonjs/src/input/pointer.js.html | 2 +- .../melonjs/src/input/pointerevent.js.html | 2 +- docs/docs/melonjs/src/lang/console.js.html | 2 +- docs/docs/melonjs/src/lang/deprecated.js.html | 2 +- docs/docs/melonjs/src/level/level.js.html | 2 +- .../melonjs/src/level/tiled/TMXGroup.js.html | 2 +- .../melonjs/src/level/tiled/TMXLayer.js.html | 2 +- .../melonjs/src/level/tiled/TMXObject.js.html | 2 +- .../melonjs/src/level/tiled/TMXTile.js.html | 2 +- .../src/level/tiled/TMXTileMap.js.html | 2 +- .../src/level/tiled/TMXTileset.js.html | 2 +- .../src/level/tiled/TMXTilesetGroup.js.html | 2 +- .../melonjs/src/level/tiled/TMXUtils.js.html | 2 +- .../melonjs/src/level/tiled/constants.js.html | 2 +- .../renderer/TMXHexagonalRenderer.js.html | 2 +- .../renderer/TMXIsometricRenderer.js.html | 2 +- .../renderer/TMXOrthogonalRenderer.js.html | 2 +- .../level/tiled/renderer/TMXRenderer.js.html | 2 +- .../renderer/TMXStaggeredRenderer.js.html | 2 +- .../level/tiled/renderer/autodetect.js.html | 2 +- docs/docs/melonjs/src/loader/cache.js.html | 2 +- docs/docs/melonjs/src/loader/loader.js.html | 2 +- .../melonjs/src/loader/loadingscreen.js.html | 2 +- .../melonjs/src/loader/parsers/binary.js.html | 2 +- .../src/loader/parsers/fetchdata.js.html | 2 +- .../src/loader/parsers/fontface.js.html | 2 +- .../melonjs/src/loader/parsers/image.js.html | 2 +- .../melonjs/src/loader/parsers/json.js.html | 2 +- .../melonjs/src/loader/parsers/script.js.html | 2 +- .../melonjs/src/loader/parsers/tmx.js.html | 2 +- .../melonjs/src/loader/parsers/video.js.html | 2 +- docs/docs/melonjs/src/loader/settings.js.html | 2 +- docs/docs/melonjs/src/math/color.js.html | 2 +- docs/docs/melonjs/src/math/math.js.html | 2 +- docs/docs/melonjs/src/math/matrix2.js.html | 2 +- docs/docs/melonjs/src/math/matrix3.js.html | 2 +- .../src/math/observable_vector2.js.html | 2 +- .../src/math/observable_vector3.js.html | 2 +- docs/docs/melonjs/src/math/vector2.js.html | 2 +- docs/docs/melonjs/src/math/vector3.js.html | 2 +- .../melonjs/src/particles/emitter.js.html | 2 +- .../melonjs/src/particles/particle.js.html | 2 +- .../melonjs/src/particles/settings.js.html | 2 +- docs/docs/melonjs/src/physics/body.js.html | 2 +- docs/docs/melonjs/src/physics/bounds.js.html | 2 +- .../melonjs/src/physics/collision.js.html | 2 +- .../docs/melonjs/src/physics/detector.js.html | 2 +- .../docs/melonjs/src/physics/quadtree.js.html | 2 +- .../docs/melonjs/src/physics/response.js.html | 2 +- docs/docs/melonjs/src/physics/sat.js.html | 2 +- docs/docs/melonjs/src/physics/world.js.html | 2 +- docs/docs/melonjs/src/plugin/plugin.js.html | 2 +- .../docs/melonjs/src/polyfill/console.js.html | 2 +- docs/docs/melonjs/src/polyfill/index.js.html | 2 +- .../melonjs/src/polyfill/roundrect.js.html | 2 +- .../src/renderable/collectable.js.html | 2 +- .../melonjs/src/renderable/colorlayer.js.html | 2 +- .../melonjs/src/renderable/container.js.html | 2 +- .../melonjs/src/renderable/draggable.js.html | 2 +- .../melonjs/src/renderable/dragndrop.js.html | 2 +- .../src/renderable/entity/entity.js.html | 2 +- .../melonjs/src/renderable/imagelayer.js.html | 2 +- .../melonjs/src/renderable/light2d.js.html | 2 +- .../src/renderable/nineslicesprite.js.html | 2 +- .../melonjs/src/renderable/renderable.js.html | 2 +- .../melonjs/src/renderable/sprite.js.html | 2 +- .../src/renderable/text/bitmaptext.js.html | 2 +- .../renderable/text/bitmaptextdata.js.html | 2 +- .../melonjs/src/renderable/text/glyph.js.html | 2 +- .../melonjs/src/renderable/text/text.js.html | 2 +- .../src/renderable/text/textmetrics.js.html | 2 +- .../src/renderable/text/textstyle.js.html | 2 +- .../melonjs/src/renderable/trigger.js.html | 2 +- .../src/renderable/ui/uibaseelement.js.html | 2 +- .../src/renderable/ui/uispriteelement.js.html | 2 +- .../src/renderable/ui/uitextbutton.js.html | 2 +- docs/docs/melonjs/src/state/stage.js.html | 2 +- docs/docs/melonjs/src/state/state.js.html | 2 +- docs/docs/melonjs/src/system/device.js.html | 2 +- docs/docs/melonjs/src/system/dom.js.html | 2 +- docs/docs/melonjs/src/system/event.js.html | 2 +- docs/docs/melonjs/src/system/platform.js.html | 2 +- docs/docs/melonjs/src/system/pooling.js.html | 2 +- docs/docs/melonjs/src/system/save.js.html | 2 +- docs/docs/melonjs/src/system/timer.js.html | 2 +- docs/docs/melonjs/src/tweens/easing.js.html | 2 +- .../melonjs/src/tweens/interpolation.js.html | 2 +- docs/docs/melonjs/src/tweens/tween.js.html | 2 +- docs/docs/melonjs/src/utils/agent.js.html | 2 +- docs/docs/melonjs/src/utils/array.js.html | 2 +- docs/docs/melonjs/src/utils/file.js.html | 2 +- docs/docs/melonjs/src/utils/function.js.html | 2 +- docs/docs/melonjs/src/utils/string.js.html | 2 +- docs/docs/melonjs/src/utils/utils.js.html | 57 ++++++++++++++++++- .../src/video/canvas/canvas_renderer.js.html | 2 +- docs/docs/melonjs/src/video/renderer.js.html | 2 +- .../melonjs/src/video/texture/atlas.js.html | 2 +- .../melonjs/src/video/texture/cache.js.html | 2 +- .../src/video/texture/canvas_texture.js.html | 2 +- .../src/video/utils/autodetect.js.html | 2 +- docs/docs/melonjs/src/video/video.js.html | 2 +- .../src/video/webgl/buffer/vertex.js.html | 2 +- .../webgl/compositors/compositor.js.html | 2 +- .../compositors/primitive_compositor.js.html | 2 +- .../webgl/compositors/quad_compositor.js.html | 2 +- .../melonjs/src/video/webgl/glshader.js.html | 2 +- .../src/video/webgl/utils/attributes.js.html | 2 +- .../src/video/webgl/utils/precision.js.html | 2 +- .../src/video/webgl/utils/program.js.html | 2 +- .../src/video/webgl/utils/string.js.html | 2 +- .../src/video/webgl/utils/uniforms.js.html | 2 +- .../src/video/webgl/webgl_renderer.js.html | 2 +- docs/docs/melonjs/state.html | 2 +- docs/docs/melonjs/timer.html | 2 +- docs/docs/melonjs/utils.html | 4 +- docs/docs/melonjs/utils/agent.html | 2 +- docs/docs/melonjs/utils/agent/prefixed.html | 2 +- .../docs/melonjs/utils/agent/setPrefixed.html | 2 +- docs/docs/melonjs/utils/array.html | 2 +- docs/docs/melonjs/utils/array/random.html | 2 +- docs/docs/melonjs/utils/array/remove.html | 2 +- .../melonjs/utils/array/weightedRandom.html | 2 +- docs/docs/melonjs/utils/checkVersion.html | 2 +- docs/docs/melonjs/utils/file.html | 2 +- docs/docs/melonjs/utils/file/getBasename.html | 2 +- .../docs/melonjs/utils/file/getExtension.html | 2 +- docs/docs/melonjs/utils/file/getPath.html | 2 +- docs/docs/melonjs/utils/function.html | 2 +- docs/docs/melonjs/utils/function/defer.html | 2 +- .../docs/melonjs/utils/function/throttle.html | 2 +- docs/docs/melonjs/utils/getUriFragment.html | 14 ++--- docs/docs/melonjs/utils/string.html | 2 +- .../docs/melonjs/utils/string/capitalize.html | 2 +- docs/docs/melonjs/utils/string/isBoolean.html | 2 +- docs/docs/melonjs/utils/string/isDataUrl.html | 2 +- docs/docs/melonjs/utils/string/isNumeric.html | 2 +- docs/docs/melonjs/utils/string/toHex.html | 2 +- docs/docs/melonjs/video.html | 2 +- docs/docs/melonjs/video/createCanvas.html | 2 +- docs/docs/melonjs/video/getParent.html | 2 +- docs/docs/melonjs/video/init.html | 2 +- docs/docs/melonjs/warning.html | 2 +- docs/docs/settings.html | 2 +- 518 files changed, 608 insertions(+), 531 deletions(-) diff --git a/dist/melonjs.mjs/_virtual/_commonjsHelpers.js b/dist/melonjs.mjs/_virtual/_commonjsHelpers.js index 20a09d77b..2abb19250 100644 --- a/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +++ b/dist/melonjs.mjs/_virtual/_commonjsHelpers.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 9700f7e7e..b33d89907 100644 --- a/dist/melonjs.mjs/_virtual/earcut.js +++ b/dist/melonjs.mjs/_virtual/earcut.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 27234c034..de9688d2e 100644 --- a/dist/melonjs.mjs/_virtual/howler.js +++ b/dist/melonjs.mjs/_virtual/howler.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 94530c9d1..75b3d05c7 100644 --- a/dist/melonjs.mjs/_virtual/index.js +++ b/dist/melonjs.mjs/_virtual/index.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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/re.js b/dist/melonjs.mjs/_virtual/re.js index 281236ed2..79686f8fd 100644 --- a/dist/melonjs.mjs/_virtual/re.js +++ b/dist/melonjs.mjs/_virtual/re.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 9e0204b22..f5683bc5c 100644 --- a/dist/melonjs.mjs/application/application.js +++ b/dist/melonjs.mjs/application/application.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 ba35b99cf..7c8a03682 100644 --- a/dist/melonjs.mjs/application/header.js +++ b/dist/melonjs.mjs/application/header.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3ed4abf46..e4ba2bea4 100644 --- a/dist/melonjs.mjs/application/resize.js +++ b/dist/melonjs.mjs/application/resize.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 61ffe8e3d..d7c5feec8 100644 --- a/dist/melonjs.mjs/application/settings.js +++ b/dist/melonjs.mjs/application/settings.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 972ebb08b..ff09b72c2 100644 --- a/dist/melonjs.mjs/audio/audio.js +++ b/dist/melonjs.mjs/audio/audio.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2eca47b01..59708a610 100644 --- a/dist/melonjs.mjs/camera/camera2d.js +++ b/dist/melonjs.mjs/camera/camera2d.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 efe8b61fc..c27c94b39 100644 --- a/dist/melonjs.mjs/const.js +++ b/dist/melonjs.mjs/const.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 230838618..e34adf342 100644 --- a/dist/melonjs.mjs/geometries/ellipse.js +++ b/dist/melonjs.mjs/geometries/ellipse.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 4cbd13bb9..74251bf02 100644 --- a/dist/melonjs.mjs/geometries/line.js +++ b/dist/melonjs.mjs/geometries/line.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2dec6c60f..71ca23fb7 100644 --- a/dist/melonjs.mjs/geometries/path2d.js +++ b/dist/melonjs.mjs/geometries/path2d.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 a5bf61e61..d498e08a6 100644 --- a/dist/melonjs.mjs/geometries/point.js +++ b/dist/melonjs.mjs/geometries/point.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3efba2bea..b1c6c086b 100644 --- a/dist/melonjs.mjs/geometries/poly.js +++ b/dist/melonjs.mjs/geometries/poly.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 fb26506b4..b6f198a07 100644 --- a/dist/melonjs.mjs/geometries/rectangle.js +++ b/dist/melonjs.mjs/geometries/rectangle.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 0c1ca10f5..a9b5274f2 100644 --- a/dist/melonjs.mjs/geometries/roundrect.js +++ b/dist/melonjs.mjs/geometries/roundrect.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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/toarccanvas.js b/dist/melonjs.mjs/geometries/toarccanvas.js index 02c6879b2..b4ed98591 100644 --- a/dist/melonjs.mjs/geometries/toarccanvas.js +++ b/dist/melonjs.mjs/geometries/toarccanvas.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 9221bb1ea..ebdaa1828 100644 --- a/dist/melonjs.mjs/index.js +++ b/dist/melonjs.mjs/index.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 = "16.1.2"; +const version = "16.1.3"; /** * 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 bac70943c..81eb6003e 100644 --- a/dist/melonjs.mjs/input/gamepad.js +++ b/dist/melonjs.mjs/input/gamepad.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 923481a3c..9e6a2e487 100644 --- a/dist/melonjs.mjs/input/input.js +++ b/dist/melonjs.mjs/input/input.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 8e2cb1114..c8fa81b68 100644 --- a/dist/melonjs.mjs/input/keyboard.js +++ b/dist/melonjs.mjs/input/keyboard.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 21eaa201d..42d615448 100644 --- a/dist/melonjs.mjs/input/pointer.js +++ b/dist/melonjs.mjs/input/pointer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 5396108ed..b73660438 100644 --- a/dist/melonjs.mjs/input/pointerevent.js +++ b/dist/melonjs.mjs/input/pointerevent.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 d9985ab87..87caf0e48 100644 --- a/dist/melonjs.mjs/lang/console.js +++ b/dist/melonjs.mjs/lang/console.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 7b5a764a3..e40c96b81 100644 --- a/dist/melonjs.mjs/lang/deprecated.js +++ b/dist/melonjs.mjs/lang/deprecated.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 00704c105..c83f3b3ab 100644 --- a/dist/melonjs.mjs/level/level.js +++ b/dist/melonjs.mjs/level/level.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 64cfbcf33..3c4a10eac 100644 --- a/dist/melonjs.mjs/level/tiled/TMXGroup.js +++ b/dist/melonjs.mjs/level/tiled/TMXGroup.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 4105a8329..23ed838ea 100644 --- a/dist/melonjs.mjs/level/tiled/TMXLayer.js +++ b/dist/melonjs.mjs/level/tiled/TMXLayer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 a30dde421..18193d576 100644 --- a/dist/melonjs.mjs/level/tiled/TMXObject.js +++ b/dist/melonjs.mjs/level/tiled/TMXObject.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 a2fde7fad..f3b9581f4 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTile.js +++ b/dist/melonjs.mjs/level/tiled/TMXTile.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3863dff24..658844f4f 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTileMap.js +++ b/dist/melonjs.mjs/level/tiled/TMXTileMap.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3129fc693..1efa6ec66 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTileset.js +++ b/dist/melonjs.mjs/level/tiled/TMXTileset.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 cfbad387c..a51293b8c 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +++ b/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 410884bab..90959f24f 100644 --- a/dist/melonjs.mjs/level/tiled/TMXUtils.js +++ b/dist/melonjs.mjs/level/tiled/TMXUtils.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 bf7b038cd..ad15de570 100644 --- a/dist/melonjs.mjs/level/tiled/constants.js +++ b/dist/melonjs.mjs/level/tiled/constants.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 7504a5abd..b906abeea 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 68cab54f7..43aa78eeb 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 96ee2040c..a0c8b7538 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 75c5d220b..6ffadb612 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 647f1e3d3..1f8244fc5 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 77cea84e2..aa7599bb5 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 6589ae187..70b3b4d9b 100644 --- a/dist/melonjs.mjs/loader/cache.js +++ b/dist/melonjs.mjs/loader/cache.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 44517508c..624fa572e 100644 --- a/dist/melonjs.mjs/loader/loader.js +++ b/dist/melonjs.mjs/loader/loader.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 928539753..691540235 100644 --- a/dist/melonjs.mjs/loader/loadingscreen.js +++ b/dist/melonjs.mjs/loader/loadingscreen.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 eea6b501b..082826d38 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 0abf46dcb..c20831cff 100644 --- a/dist/melonjs.mjs/loader/parsers/binary.js +++ b/dist/melonjs.mjs/loader/parsers/binary.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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/fetchdata.js b/dist/melonjs.mjs/loader/parsers/fetchdata.js index 5888c3430..0543f9916 100644 --- a/dist/melonjs.mjs/loader/parsers/fetchdata.js +++ b/dist/melonjs.mjs/loader/parsers/fetchdata.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 6455669f4..43546fa81 100644 --- a/dist/melonjs.mjs/loader/parsers/fontface.js +++ b/dist/melonjs.mjs/loader/parsers/fontface.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 b2c9d1cf7..b08681e5c 100644 --- a/dist/melonjs.mjs/loader/parsers/image.js +++ b/dist/melonjs.mjs/loader/parsers/image.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 f2f5c9756..526836fa0 100644 --- a/dist/melonjs.mjs/loader/parsers/json.js +++ b/dist/melonjs.mjs/loader/parsers/json.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 17a7ace14..88a76783e 100644 --- a/dist/melonjs.mjs/loader/parsers/script.js +++ b/dist/melonjs.mjs/loader/parsers/script.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 53764131f..f461067f6 100644 --- a/dist/melonjs.mjs/loader/parsers/tmx.js +++ b/dist/melonjs.mjs/loader/parsers/tmx.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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/video.js b/dist/melonjs.mjs/loader/parsers/video.js index f8c3cbb49..0c99a4109 100644 --- a/dist/melonjs.mjs/loader/parsers/video.js +++ b/dist/melonjs.mjs/loader/parsers/video.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 0748dd062..16842fa0e 100644 --- a/dist/melonjs.mjs/loader/settings.js +++ b/dist/melonjs.mjs/loader/settings.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 83bb15535..5c93e1223 100644 --- a/dist/melonjs.mjs/math/color.js +++ b/dist/melonjs.mjs/math/color.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2a7361fe8..d4e3679fb 100644 --- a/dist/melonjs.mjs/math/math.js +++ b/dist/melonjs.mjs/math/math.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 be4c50a82..a08418987 100644 --- a/dist/melonjs.mjs/math/matrix2.js +++ b/dist/melonjs.mjs/math/matrix2.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 acbc66220..f39581ac0 100644 --- a/dist/melonjs.mjs/math/matrix3.js +++ b/dist/melonjs.mjs/math/matrix3.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 4c5b96156..5b74a3226 100644 --- a/dist/melonjs.mjs/math/observable_vector2.js +++ b/dist/melonjs.mjs/math/observable_vector2.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 632618a52..3ff8c5969 100644 --- a/dist/melonjs.mjs/math/observable_vector3.js +++ b/dist/melonjs.mjs/math/observable_vector3.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 5ab0f799d..3d0183491 100644 --- a/dist/melonjs.mjs/math/vector2.js +++ b/dist/melonjs.mjs/math/vector2.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 7aaa0cc49..8ca4e621e 100644 --- a/dist/melonjs.mjs/math/vector3.js +++ b/dist/melonjs.mjs/math/vector3.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 a9c01418f..d2fa01d7a 100644 --- a/dist/melonjs.mjs/particles/emitter.js +++ b/dist/melonjs.mjs/particles/emitter.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 76d7c2ae2..8025d1984 100644 --- a/dist/melonjs.mjs/particles/particle.js +++ b/dist/melonjs.mjs/particles/particle.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 59d10e7f9..a35d152b5 100644 --- a/dist/melonjs.mjs/particles/settings.js +++ b/dist/melonjs.mjs/particles/settings.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 036fbbe9f..83e99b11d 100644 --- a/dist/melonjs.mjs/physics/body.js +++ b/dist/melonjs.mjs/physics/body.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 9b9c3baf1..de52ee8e7 100644 --- a/dist/melonjs.mjs/physics/bounds.js +++ b/dist/melonjs.mjs/physics/bounds.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3acf05a01..28a17d53d 100644 --- a/dist/melonjs.mjs/physics/collision.js +++ b/dist/melonjs.mjs/physics/collision.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 db3a70d7e..3d5d1f9bc 100644 --- a/dist/melonjs.mjs/physics/detector.js +++ b/dist/melonjs.mjs/physics/detector.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 51a8799be..2acf261e1 100644 --- a/dist/melonjs.mjs/physics/quadtree.js +++ b/dist/melonjs.mjs/physics/quadtree.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 b14bd60f6..f61efa97d 100644 --- a/dist/melonjs.mjs/physics/response.js +++ b/dist/melonjs.mjs/physics/response.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 002fe04be..0a02df9f1 100644 --- a/dist/melonjs.mjs/physics/sat.js +++ b/dist/melonjs.mjs/physics/sat.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 c2e404063..df9c25963 100644 --- a/dist/melonjs.mjs/physics/world.js +++ b/dist/melonjs.mjs/physics/world.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 f61200ec0..c253fabb1 100644 --- a/dist/melonjs.mjs/plugin/plugin.js +++ b/dist/melonjs.mjs/plugin/plugin.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 "16.1.2" + * @default "16.1.3" */ - this.version = "16.1.2"; + this.version = "16.1.3"; /** * 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 899dac5fe..df05ae5b5 100644 --- a/dist/melonjs.mjs/renderable/collectable.js +++ b/dist/melonjs.mjs/renderable/collectable.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 545f6d121..d0698b562 100644 --- a/dist/melonjs.mjs/renderable/colorlayer.js +++ b/dist/melonjs.mjs/renderable/colorlayer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 daf50fb39..c1c6c6a96 100644 --- a/dist/melonjs.mjs/renderable/container.js +++ b/dist/melonjs.mjs/renderable/container.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 b7d4b5f44..a509d8bef 100644 --- a/dist/melonjs.mjs/renderable/draggable.js +++ b/dist/melonjs.mjs/renderable/draggable.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3a92181ac..f1407bf15 100644 --- a/dist/melonjs.mjs/renderable/dragndrop.js +++ b/dist/melonjs.mjs/renderable/dragndrop.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 95279ef70..c4441fcf6 100644 --- a/dist/melonjs.mjs/renderable/entity/entity.js +++ b/dist/melonjs.mjs/renderable/entity/entity.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 86c976696..bb588b86d 100644 --- a/dist/melonjs.mjs/renderable/imagelayer.js +++ b/dist/melonjs.mjs/renderable/imagelayer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 e82317b4f..632194c25 100644 --- a/dist/melonjs.mjs/renderable/light2d.js +++ b/dist/melonjs.mjs/renderable/light2d.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 0998658bc..647d7e948 100644 --- a/dist/melonjs.mjs/renderable/nineslicesprite.js +++ b/dist/melonjs.mjs/renderable/nineslicesprite.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 0989fba4b..f541eace5 100644 --- a/dist/melonjs.mjs/renderable/renderable.js +++ b/dist/melonjs.mjs/renderable/renderable.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 120c98518..dcf3452ac 100644 --- a/dist/melonjs.mjs/renderable/sprite.js +++ b/dist/melonjs.mjs/renderable/sprite.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3cbe05cd6..e5128002e 100644 --- a/dist/melonjs.mjs/renderable/text/bitmaptext.js +++ b/dist/melonjs.mjs/renderable/text/bitmaptext.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 a65078c3f..4e837d7ec 100644 --- a/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +++ b/dist/melonjs.mjs/renderable/text/bitmaptextdata.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 0f21b1368..1aa8a0340 100644 --- a/dist/melonjs.mjs/renderable/text/glyph.js +++ b/dist/melonjs.mjs/renderable/text/glyph.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 45cee83eb..944e23af7 100644 --- a/dist/melonjs.mjs/renderable/text/text.js +++ b/dist/melonjs.mjs/renderable/text/text.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 07440dadc..8944c9fa2 100644 --- a/dist/melonjs.mjs/renderable/text/textmetrics.js +++ b/dist/melonjs.mjs/renderable/text/textmetrics.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 712d842f9..0df2419d3 100644 --- a/dist/melonjs.mjs/renderable/text/textstyle.js +++ b/dist/melonjs.mjs/renderable/text/textstyle.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2b107b3db..be59eb649 100644 --- a/dist/melonjs.mjs/renderable/trigger.js +++ b/dist/melonjs.mjs/renderable/trigger.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 d76ddac82..236a1dff7 100644 --- a/dist/melonjs.mjs/renderable/ui/uibaseelement.js +++ b/dist/melonjs.mjs/renderable/ui/uibaseelement.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 3bf372017..077b33b04 100644 --- a/dist/melonjs.mjs/renderable/ui/uispriteelement.js +++ b/dist/melonjs.mjs/renderable/ui/uispriteelement.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 f4519f4f4..82f45f6bb 100644 --- a/dist/melonjs.mjs/renderable/ui/uitextbutton.js +++ b/dist/melonjs.mjs/renderable/ui/uitextbutton.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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/stage.js b/dist/melonjs.mjs/state/stage.js index fa66d3a69..92a38617d 100644 --- a/dist/melonjs.mjs/state/stage.js +++ b/dist/melonjs.mjs/state/stage.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2a686740d..c822a2610 100644 --- a/dist/melonjs.mjs/state/state.js +++ b/dist/melonjs.mjs/state/state.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 6ac98af22..eac8d1333 100644 --- a/dist/melonjs.mjs/system/device.js +++ b/dist/melonjs.mjs/system/device.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 b609719d5..853140d82 100644 --- a/dist/melonjs.mjs/system/dom.js +++ b/dist/melonjs.mjs/system/dom.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 af74fee1e..0fc935579 100644 --- a/dist/melonjs.mjs/system/event.js +++ b/dist/melonjs.mjs/system/event.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 417495281..7917336aa 100644 --- a/dist/melonjs.mjs/system/platform.js +++ b/dist/melonjs.mjs/system/platform.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 348901246..061ef648c 100644 --- a/dist/melonjs.mjs/system/pooling.js +++ b/dist/melonjs.mjs/system/pooling.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 a0b82bf17..f3376349a 100644 --- a/dist/melonjs.mjs/system/save.js +++ b/dist/melonjs.mjs/system/save.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 50b273949..19946a2ac 100644 --- a/dist/melonjs.mjs/system/timer.js +++ b/dist/melonjs.mjs/system/timer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 a15654689..d307ec21b 100644 --- a/dist/melonjs.mjs/tweens/easing.js +++ b/dist/melonjs.mjs/tweens/easing.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 43279911a..d4ea457d9 100644 --- a/dist/melonjs.mjs/tweens/interpolation.js +++ b/dist/melonjs.mjs/tweens/interpolation.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2bc6283a6..1e07d01f4 100644 --- a/dist/melonjs.mjs/tweens/tween.js +++ b/dist/melonjs.mjs/tweens/tween.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 4f4d6205e..bbb963fd9 100644 --- a/dist/melonjs.mjs/utils/agent.js +++ b/dist/melonjs.mjs/utils/agent.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2a0137a09..3e0e69d75 100644 --- a/dist/melonjs.mjs/utils/array.js +++ b/dist/melonjs.mjs/utils/array.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 de2e2ee10..ef7ff364d 100644 --- a/dist/melonjs.mjs/utils/file.js +++ b/dist/melonjs.mjs/utils/file.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 0e2fdce45..4a5228fd1 100644 --- a/dist/melonjs.mjs/utils/function.js +++ b/dist/melonjs.mjs/utils/function.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 e2eeae3d7..1209a984b 100644 --- a/dist/melonjs.mjs/utils/string.js +++ b/dist/melonjs.mjs/utils/string.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 977cf4663..95ffc5e91 100644 --- a/dist/melonjs.mjs/utils/utils.js +++ b/dist/melonjs.mjs/utils/utils.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license @@ -43,6 +43,17 @@ let GUID_index = 0; * } */ function checkVersion(v1, v2) { + // Convert to proper "x.y.z" format if necessary + if (/^\d+$/.test(v1)) { + v1 += ".0.0"; + } else if (/^\d+\.\d+$/.test(v1)) { + v1 += ".0"; + } + if (/^\d+$/.test(v2)) { + v2 += ".0.0"; + } else if (/^\d+\.\d+$/.test(v2)) { + v2 += ".0"; + } return semver.compare(v1, v2); } diff --git a/dist/melonjs.mjs/video/canvas/canvas_renderer.js b/dist/melonjs.mjs/video/canvas/canvas_renderer.js index f08afe717..10616e0b5 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 bf607300a..a83f78789 100644 --- a/dist/melonjs.mjs/video/renderer.js +++ b/dist/melonjs.mjs/video/renderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 5180f0fcc..4e49bd78b 100644 --- a/dist/melonjs.mjs/video/texture/atlas.js +++ b/dist/melonjs.mjs/video/texture/atlas.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 bd69a4310..2887ab67b 100644 --- a/dist/melonjs.mjs/video/texture/cache.js +++ b/dist/melonjs.mjs/video/texture/cache.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 2432803b7..16bd41dd6 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 9b582b496..619e71af1 100644 --- a/dist/melonjs.mjs/video/utils/autodetect.js +++ b/dist/melonjs.mjs/video/utils/autodetect.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 7907e1861..fff27c0af 100644 --- a/dist/melonjs.mjs/video/video.js +++ b/dist/melonjs.mjs/video/video.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 f079605a7..20b4b29c2 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 70c086b1b..0fe065db8 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 f21ebaf38..3717e08e7 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 6fed7a76e..52653be37 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 230ab26ae..5e2026590 100644 --- a/dist/melonjs.mjs/video/webgl/glshader.js +++ b/dist/melonjs.mjs/video/webgl/glshader.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 43123f513..ffa4db253 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 b4baf2eca..bcfc89ebc 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 624602a04..8c899fd72 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 791b35cf1..9ba6a50aa 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 9e3c71f06..47029c833 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 eadb7de98..e9b60db85 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 c2c869faa..d7a220496 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 45abaad5e..610697d2b 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 8e30002eb..28befb54d 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 dc867e46e..c8587bba4 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 - v16.1.2 + * melonJS Game Engine - v16.1.3 * 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 c1a21fb46..39e0c6847 100644 --- a/dist/melonjs.module.js +++ b/dist/melonjs.module.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v16.1.2 + * melonJS Game Engine - v16.1.3 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license @@ -23184,6 +23184,17 @@ let GUID_index = 0; * } */ function checkVersion(v1, v2) { + // Convert to proper "x.y.z" format if necessary + if (/^\d+$/.test(v1)) { + v1 += ".0.0"; + } else if (/^\d+\.\d+$/.test(v1)) { + v1 += ".0"; + } + if (/^\d+$/.test(v2)) { + v2 += ".0.0"; + } else if (/^\d+\.\d+$/.test(v2)) { + v2 += ".0"; + } return semver.compare(v1, v2); } @@ -42655,9 +42666,9 @@ class BasePlugin { * define the minimum required version of melonJS
* this can be overridden by the plugin * @type {string} - * @default "16.1.2" + * @default "16.1.3" */ - this.version = "16.1.2"; + this.version = "16.1.3"; /** * a reference to the app/game that registered this plugin @@ -42939,7 +42950,7 @@ Renderer.prototype.getHeight = function() { * @name version * @type {string} */ -const version = "16.1.2"; +const version = "16.1.3"; /** * a flag indicating that melonJS is fully initialized diff --git a/docs/docs/Class-Index.html b/docs/docs/Class-Index.html index b04397dcc..65a38d20c 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 acf9f45a3..bf2fc41e3 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 7a1a3f21f..89f1bd033 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-SzF8VZGHzD9OcKTcLGEdJ","name":"","type":"RootDoc","members":[{"id":"3rVjpWJ_Sq1weWPeNfVH2","name":"audio","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"wDzkuJHrjXIfBVe-61E5t","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":"yYAicJx1VfOJqJgzfmi8E","name":"disable","brief":"","scope":"static","type":"FunctionDoc","description":"

disable audio output

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Av6XXqdDgX7Fgelpq1WGN","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":"-ZUT0-ai3N-lWXM9is4f9","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":"lXHp-xhE5UlZUYU4J2g40","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":"tmdbgzxhyBo2EnCOsN9V1","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":"ZhAN8rfzwK0QngDzHCseW","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":"kWDFH91Xa029x2N19fszS","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":"5RAeypHH50uQ19FAnKUx-","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":"MQqhUQ0AWtqPyHL3IN1vb","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":"w_bycQ2ujEIhmYLTnWyEC","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":"REu1QtXF1oRh7DpPVLBGZ","name":"muteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

mute all audio

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pteDXhC8EpBqqa8NKNdIX","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":"ahHLmNkpNnNlgLTQ8HflR","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":"fLFi0vcSD9u6L9bLQhMhw","name":"pauseTrack","brief":"","examples":[{"caption":"","code":"me.audio.pauseTrack();"}],"scope":"static","type":"FunctionDoc","description":"

pause the current audio track

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5sAFEhVxRY0YBctNwe-ks","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":"BKtFyeYL6UWFfvwkqZE_L","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":"LFh9cA5yVQZff-Rs-ryav","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":"LKBgHP6_9oqrD_jra3Icd","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":"u2lwbFpV0DfjXJxg6d8E4","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":"tzIVGYey_OfaKsHkxnRKR","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":"k2Fy8jXNhpvtSr7xDvczS","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":"I5RK6msP3_NUp4saJ5j3y","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":"g8O18J2oeeQMQb6BVVK6m","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":"cUqsAP-9YGn6KpTBJD--5","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":"WBdCz5M_Egn1oCHoyV5aP","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":"10F4_72HRB5MGHRp6D3hL","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":"1PGNIQ2-lBtFMrLxE8mq3","name":"unmuteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

unmute all audio

","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"h7joUvFvZw14QehmdhUgv","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":"kDeeYUDxaUX5yAQZLZkaF","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":"aj_0yG2tnmVIRGBT2BGYm","name":"ACTION_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

e.g. doors

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

all of the above (including user-defined types)

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

collectable objects

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

enemies objects

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

to disable collision check

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

to disable collision check

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

non playable characters

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

playbable characters

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

e.g. missiles

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

user-defined collision types (see example)

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

e.g. walls; for map collision shapes

"}]},{"id":"Jf0WeHp68vwfwX46OYtr2","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":"btWNwUw2BLR4G5gnylaCk","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":"iq7VKsS5EhCK_GDHaBVtX","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":"zFNAy6zuoTJnuCx96t8I7","name":"device","brief":"","defaultValue":"false","type":"NSDoc","description":"

device type and capabilities

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

The device platform type

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

true if the device is an Android platform

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

true if the device is an Android 2.x platform

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

true if the device is a BlackBerry platform

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

true if the device is running on ChromeOS.

"},{"id":"z-_FfkuYQYw7KZd2J5q-U","name":"ejecta","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if running under Ejecta

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

true if the device is an iOS platform

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

true if a mobile device

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

true if running under Wechat

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

true if the device is a Kindle platform

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

true if the device is a Linux platform

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

true if running under node.js

"},{"id":"JjysHQBm6dK7XE4Aw4VQ7","name":"ua","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

the user agent string for the current device

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

true if the device is a Windows Phone platform

"}]},{"id":"64qLFKtmiVLZdMfQz_Yt5","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":"DzRXrqmbhP8KRVFgFwGfz","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":"XU11pCkmatBD-DucgJiCL","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":"X1_ysyoHrHt9cKk8UmhqH","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":"htf75yPcXmhEdEFOo2IKQ","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":"FzQuLSJz-4Avu6sU5REyl","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":"1DlaGx1b71Tx-b3Xt0iN8","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":"3fStGC03Lm7bQ_y1VwLnT","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":"L7imp7wFOe9eH-rJFNA0F","name":"hasAccelerometer","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

Browser accelerometer capabilities

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

Browser device orientation

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

Browser full screen support

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

Device HTML5Audio Support

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

Browser pointerlock api support

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

Device Video Support

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

Device WebAudio Support

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Xx9fmu7fY18n6_zw6q4jB","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":"ZfuvByXAIbnFCVDRGj0nO","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":"jJhZnY4zT9QFPSa-qzbD2","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":"6xAWG2-kKwM-VpGc05Lnz","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":"hpzZy2A-YNblJ48cQRktI","name":"nativeBase64","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Browser Base64 decoding capability

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

equals to true if the device browser supports OffScreenCanvas.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nZaQs5JLKyje-NRaSXxqN","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":"tlUEnoYZNxr_10pgya2Sx","name":"platform","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

the device platform type

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

True if the browser supports Pointer Events

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"poIWwcewTTYsJ8TIrJi8i","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":"D6FJeOKbXEaNvWhJ__5_M","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":"rCdOggWSVYuUP-px620jn","name":"sound","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Returns true if the browser/device has audio capabilities.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ofR_QllE2wuOKg7auHa3k","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":"oOq6tjPoMhL1ENX00q2nf","name":"touch","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Touch capabilities (support either Touch or Pointer events)

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

True if the browser supports Touch Events

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

W3C standard wheel events

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WC5u4EoVAIkMS8Gw3zc_u","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":"1Ukk-Ee9YzLAStZG7bPqe","name":"exitFullscreen","brief":"","access":"public","type":"FunctionDoc","description":"

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

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YCkdfSQZEU2_XNQYZPGH6","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":"eNd8NlIktsZXJf4uY5GKj","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":"jaaS5l2BVsvNyrtSSYIgu","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":"e_87CEtteHnUBHdcgrrmL","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":"b032a0IZqOYC2ajU2nExQ","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":"9XiM7jQqD1D1WKlz_D3kl","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":"1WHGZy1o9qlJyjwymXuXp","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":"-vHLvuWo5mPzLNQNJq3r7","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":"4CVC0sScDupyAt4lawsyB","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":"AY5LmE13rc5TgSzbfqx-l","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":"W4t7V4o65G8InWGDvwVDy","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":"EYVEtubERw4Zo9h7wide_","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":"d9x22tBnVRCXOptduA8uM","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":"FSIeUKdYPYe8kGR5_YEn0","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":"PCLQey1StV_AfLtY51bXr","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":"GyrflHGdRG8YTuCtS_QAF","name":"unwatchAccelerometer","brief":"","access":"public","type":"FunctionDoc","description":"

unwatch Accelerometor event

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5ue3NZ8l-Du8LlYLGwj-y","name":"unwatchDeviceOrientation","brief":"","access":"public","type":"FunctionDoc","description":"

unwatch Device orientation event

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7kWMYro_6FZ7pHn4QZ07D","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":"hUt6h6NxH9OJrZv25JqPT","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":"upCBH7XyeiTkPISx-11o-","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":"Qqz8vJcIMHzazQqwbCT-k","name":"event","brief":"","type":"NSDoc","description":"

an event system based on nodeJS EventEmitter interface

","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"oICCM70hPea-MT20YqORm","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":"tgto3YhgZDU4PaJb-HmNe","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":"Ko8ocjfx5INRDYNSwYXrs","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":"sAtpBjqfvlcy18A9LmTOQ","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":"g6RlE_3h2Ib9P_44fOKam","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":"lndGxiSKdPZnedMMwnJRf","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":"VfSqHMzQzLaHhnKo2TjbF","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":"wcS5i_dR0NCdIJzXhGg0l","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":"9yhKA86TX9RfhzBoCYwzP","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":"4pPoL1kwVWxVQjiejxGfv","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":"O7jsWKOUh1coHLm4JMiVK","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":"Y9GoMNKMm-YKxU3DBO88L","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":"A1DbtCbkflJyXA4WGbKX-","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":"6-NDWPkPTGz--9_uNJEso","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":"dPSM_lvhqR-F8UDHAWgpF","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":"o4xnHEL3_WLDJ7sfvEt0-","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":"CEniZ2r16P6xwmBqKAABl","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":"QnTbA0uTlpVsW6IaKrVoV","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":"5SGXyl1Fp9M5ZEHvlkxMo","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":"R8FWn91TKqNn6lybwkN_l","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":"e9G1Jp0aPwp_Q60dCP_B_","name":"LOADER_ERROR","brief":"","access":"public","defaultValue":"\"me.loader.onError\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when an error occur during preloading
\nData passed : {Resource} resource object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OJxw6I9wnoa2wWlThNlHj","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":"5zJ6COPJq3t_5hcQvfPwL","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":"P3yHyi1w9-mUN64os2IS8","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":"9w8ZFyRY9qA0wXKNwax05","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":"huUyOp3QfRrZQon4d6Z3x","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":"j1ehhkCfvlMAh6n6PwD1k","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":"POhglDT9Zcz0kOXGBmMmI","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":"gq8Xe_hKh12XouDresKy7","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":"D7Gg8xza42byEJAi2ScHf","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":"o7mqU_Ov12dtGeupQKUE0","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":"QJFRf7k5OS9UGxkmnNA_f","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":"dvULecKct18zBVx9cqUl_","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":"mVyDhx3vnxOGidcBZjXqH","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":"_Jd7aBaeFjHUxNOYOC7gN","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":"whzufGvPNt9877K3wlmYc","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":"MOWsiS872J80XIDzD0tT0","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":"O7YEfx3Wp_xcVbL-xLN0G","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":"4IFj65LT5A72n1ItWsVNN","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":"2yatxn6AhgZMDHSbvauQK","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":"PCIp8-4PEzNFwsOCylD-n","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":"pq07xXqUVH3hoMA8JJCaJ","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":"P-bQ3XZ92ffhx4x8zeIj3","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":"VAoZseCOB5Z3vL3eYmPDq","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":"B6It2pe7HyOJ1Ka8GpofW","name":"input","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"QwtdUmapCUF_s0FOjpGyH","name":"GAMEPAD","brief":"","access":"public","type":"NSDoc","description":"

Namespace for standard gamepad mapping constants

","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"x45j6Ahs3CpX_r5rvdd3A","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":"jPKbvlQhydbrLVTC2idPH","name":"A","brief":"","defaultValue":"65","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BgS85bxCKnlwOGjeps_8f","name":"ADD","brief":"","defaultValue":"107","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NTCbvk7Uao1HOL2E7LvUi","name":"ALT","brief":"","defaultValue":"18","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rGDImx0882VSRR_aJ2xtl","name":"B","brief":"","defaultValue":"66","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"umbFSxOEHzdgBie1WbQr9","name":"BACK_SLASH","brief":"","defaultValue":"220","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F3_rz1QouiHdqVxYBmt1z","name":"C","brief":"","defaultValue":"67","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"quCUirlBpgWlIPM_2IEz-","name":"CAPS_LOCK","brief":"","defaultValue":"20","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-2K1uw-vyOR6ELQ9qJ-yH","name":"CLOSE_BRACKET","brief":"","defaultValue":"221","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4Hur0tc0ikEr-NK0uWlCo","name":"COMMA","brief":"","defaultValue":"188","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hfQnTd7Azp1i27E6NYnOY","name":"CTRL","brief":"","defaultValue":"17","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-x08Vp7QgTLk6Y2JoybUe","name":"D","brief":"","defaultValue":"68","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8IGoDJuhmQtXjFhOwLgNx","name":"DECIMAL","brief":"","defaultValue":"110","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wW-QJof0fU44v8UlDDpU9","name":"DELETE","brief":"","defaultValue":"46","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AxwlETVfZ-qxJ_nJTAsam","name":"DIVIDE","brief":"","defaultValue":"111","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e3AcuLmyV1QKAQn7nkHSg","name":"DOWN","brief":"","defaultValue":"40","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8GlZtvqWSM4rR9vY075ib","name":"E","brief":"","defaultValue":"69","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dZUuMe10HoSkuz-Y6koOG","name":"END","brief":"","defaultValue":"35","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SNA2xnHJI-XPKt6gywmob","name":"ENTER","brief":"","defaultValue":"13","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RPJ76r6vop_e5Lnrk7mhj","name":"ESC","brief":"","defaultValue":"27","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YPwqQ2pK5sKE08GTpenjW","name":"F","brief":"","defaultValue":"70","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"whK2dH0my-J1ecjQ5o-3_","name":"F1","brief":"","defaultValue":"112","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yAvtjovwsnEDey97VXcam","name":"F10","brief":"","defaultValue":"121","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZB4sZfd9aa7yZz_a4-cux","name":"F11","brief":"","defaultValue":"122","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zYoYGZXCJRZ1gkiEO8qQH","name":"F12","brief":"","defaultValue":"123","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fj2_OzeWStDQc1fZVTfsk","name":"F2","brief":"","defaultValue":"113","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"35uOx7lqt0LyijxdiSYuW","name":"F3","brief":"","defaultValue":"114","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QhGE9uYhvtdFYIImkjNvx","name":"F4","brief":"","defaultValue":"115","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9bLWuQqNGSVlIUZNQDPk2","name":"F5","brief":"","defaultValue":"116","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qJs4EE8t47z6eR2fQEM3i","name":"F6","brief":"","defaultValue":"117","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FPiKjUOPLe75aQv_OAC8z","name":"F7","brief":"","defaultValue":"118","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sZ3PJknfQPXPN8O6-2XA9","name":"F8","brief":"","defaultValue":"119","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nHnESwheARahWqrAJuo1O","name":"F9","brief":"","defaultValue":"120","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bFfyV9gv_DyepMccnT0f5","name":"FORWAND_SLASH","brief":"","defaultValue":"191","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oq8-PNTCwYdzR_M2dVjcU","name":"G","brief":"","defaultValue":"71","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_GWCEQDCzf1ANAcZ4CZZQ","name":"GRAVE_ACCENT","brief":"","defaultValue":"192","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DJaSBo22pPyzq47zOeVpJ","name":"H","brief":"","defaultValue":"72","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FVMmpiViws6sfFTofvQVq","name":"HOME","brief":"","defaultValue":"36","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MmBsilzSqHMp9fnRz13hW","name":"I","brief":"","defaultValue":"73","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"983BXqi7lNoQyyPYdrJbZ","name":"INSERT","brief":"","defaultValue":"45","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r_AIR-nfg-X1ehCjEhqtJ","name":"J","brief":"","defaultValue":"74","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EcsXloPCCq8W4DgmYEptG","name":"K","brief":"","defaultValue":"75","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nIPiilzPLDrOysSwuhJf6","name":"L","brief":"","defaultValue":"76","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WnRB9xi5DqurtzZjB211d","name":"LEFT","brief":"","defaultValue":"37","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bA9u2I3g280y70_m47TME","name":"M","brief":"","defaultValue":"77","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nEOKb9TLwWpVkq_fzHATT","name":"MINUS","brief":"","defaultValue":"189","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9BXG4HKOXlVG9FPHR5ZuK","name":"MULTIPLY","brief":"","defaultValue":"106","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R_1V-BVqAjzN7TJqSaKkp","name":"N","brief":"","defaultValue":"78","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wsk-hJjFUs7OaOA6yQtca","name":"NUM_LOCK","brief":"","defaultValue":"144","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MLlMFklaH42sWSljGsm3L","name":"NUM0","brief":"","defaultValue":"48","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZYcB0bfr30mjfMF_CgHfR","name":"NUM1","brief":"","defaultValue":"49","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"smrf2MFkSllkwyTO4kHRG","name":"NUM2","brief":"","defaultValue":"50","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YZWqgx6GoYteS_HsjW1FC","name":"NUM3","brief":"","defaultValue":"51","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zFIHvWdfVAP2uIeBYPdPY","name":"NUM4","brief":"","defaultValue":"52","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ueTYHBYyVaxjEXrTVNxbN","name":"NUM5","brief":"","defaultValue":"53","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gb2YK83YFtFLL5UxB9WDV","name":"NUM6","brief":"","defaultValue":"54","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bCJUorIwlvx0zNDdR1pZ4","name":"NUM7","brief":"","defaultValue":"55","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SRuwKRI9veYjy4RCunrKO","name":"NUM8","brief":"","defaultValue":"56","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qxvyB-znD6BHmGTOeyyPs","name":"NUM9","brief":"","defaultValue":"57","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iuijhYfQkh_rCoUIqBgQw","name":"NUMPAD0","brief":"","defaultValue":"96","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jcl6sLpqPB5WK8nZbCfMu","name":"NUMPAD1","brief":"","defaultValue":"97","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eJXq3nKhRCDNukRMIuNTK","name":"NUMPAD2","brief":"","defaultValue":"98","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dW2BrL6A8yqPTGB6f-rNv","name":"NUMPAD3","brief":"","defaultValue":"99","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IVmCy2vWX1aLp1IRCwIhp","name":"NUMPAD4","brief":"","defaultValue":"100","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yURQ4CI_hxyOtBTUAhh-w","name":"NUMPAD5","brief":"","defaultValue":"101","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r45l9FehaIQUC7DCTTsPH","name":"NUMPAD6","brief":"","defaultValue":"102","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aSNN8Rpy4E5msEZLFFcxm","name":"NUMPAD7","brief":"","defaultValue":"103","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6Wuf1K1F-fZCbmIrsZ387","name":"NUMPAD8","brief":"","defaultValue":"104","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"plDxTvDWYRNcfRQSrJSjL","name":"NUMPAD9","brief":"","defaultValue":"105","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jjxTmM8GXwxyIBGX4Rfi8","name":"O","brief":"","defaultValue":"79","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4A_oJ8ItnpeWt-kbl_0aL","name":"OPEN_BRACKET","brief":"","defaultValue":"219","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P4iOLiD0r3FBfoH-UNv4T","name":"P","brief":"","defaultValue":"80","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zwq2BZGd7fllDafcVLUmh","name":"PAGE_DOWN","brief":"","defaultValue":"34","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DPfFzY_sbnqiKiw78NFYG","name":"PAGE_UP","brief":"","defaultValue":"33","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fzJM1elTjZiKTzX1rdC0q","name":"PAUSE","brief":"","defaultValue":"19","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mKvqiGjcBpXaoBbGHnfag","name":"PERIOD","brief":"","defaultValue":"190","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FKjS5t6tEkLUDEognAbC8","name":"PLUS","brief":"","defaultValue":"187","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5IqbM-6aZPTu4Ro6KOMkc","name":"PRINT_SCREEN","brief":"","defaultValue":"42","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fbpdl-SOp9dM9JOq1_wjW","name":"Q","brief":"","defaultValue":"81","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XyL3Mhftjog294XBWMdBn","name":"R","brief":"","defaultValue":"82","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Eh1AXWmGXXjbwAK8whB-M","name":"RIGHT","brief":"","defaultValue":"39","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DGWr21IJhENqHQMslj9Qt","name":"S","brief":"","defaultValue":"83","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C2jgQY_WwdHAOgWkGslc-","name":"SCROLL_LOCK","brief":"","defaultValue":"145","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jqEmoxsP5YZ8FjnJCXAVP","name":"SEMICOLON","brief":"","defaultValue":"186","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GDt5JNpaEdPjdMtsLB9zW","name":"SHIFT","brief":"","defaultValue":"16","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cQUHqBh6NmBTwsDcAsUNb","name":"SINGLE_QUOTE","brief":"","defaultValue":"222","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LsMq-kXO3bOqZFP7FXIG_","name":"SPACE","brief":"","defaultValue":"32","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RB0vWzvOcz3QiV1SYjanI","name":"SUBSTRACT","brief":"","defaultValue":"109","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-nQPsevNb7Rl-HeICt3SM","name":"T","brief":"","defaultValue":"84","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xFojIKIIog92_f2msDYGD","name":"TAB","brief":"","defaultValue":"9","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TnPGYJfsKV01RC8ypGujj","name":"TILDE","brief":"","defaultValue":"126","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TezgycoiMrCA3fCJbN5_3","name":"U","brief":"","defaultValue":"85","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NZh7Kculf2ECDxZas2O-Y","name":"UP","brief":"","defaultValue":"38","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vVvY-q2WBKp96dFYpefgs","name":"V","brief":"","defaultValue":"86","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QLMbhIHkTKW9vEPgObe2R","name":"W","brief":"","defaultValue":"87","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AQWi-oXZYF4aknuTov5Dp","name":"WINDOW_KEY","brief":"","defaultValue":"91","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QchLnYIJQeEcCVnxFnkKw","name":"X","brief":"","defaultValue":"88","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GDCPEsBmXAbQMWeB-SNWa","name":"Y","brief":"","defaultValue":"89","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XDIF1BN5OVMMPsHESoWrP","name":"Z","brief":"","defaultValue":"90","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"xhMbGxLep_wmJx-BozrdF","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":"hGLJHPVH6sO3bMS93Q3A4","name":"locked","brief":"","access":"public","defaultValue":"false","type":"PropertyDoc","description":"

      indicates if the pointer is currently locked

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

      Pointer information (current position and size)

      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tYHHewh_idZAeBHR2YrIn","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":"dncmkYGJbSV7wrIOje8xc","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":"KJ0iQan0PFOcGWdZcaB1d","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":"JA98B6XsfMthIAscCaXNb","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":"Eo2YcASA-JmL3WoQzCueU","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":"2zYen0lpx-qZq3p6i71EO","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":"QNVvejopwDyOq5v7ysEC_","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":"Z7a97ojr-YwEp53_2fLln","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":"60Hc8GNn_LgEhBKbHCXIK","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":"WbOFT-VTDh5WEuT7aW02N","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":"29GcrFHSIZOer8qMAq2iu","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":"osRmt_e-FL4CxfVTrPZrR","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":"bFivuFZAJZNZsruksdUt8","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":"nfRL8RkpG-xfTa1BN70Ei","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":"QRzBfPzD0CSQ-by0fgosF","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":"jzP8ECgAXQjIPQ5QttBGp","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":"jEie5hWBr8GPlfPoXrJB6","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":"MO_3QW--pjv1HaSoIgWBF","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":"hrq0frlQA2g-qTS-idKV9","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":"XZdrWr1JZadT7m2c-poqS","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":"m3Spg7992XZaG-q4HuZO5","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":"5EZZnB0I1u-ELbYd44Aw5","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":"jTMKXsGKHcFDWjzj62Rm3","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":"XyA1vOu8u3ACYHcBIq4B2","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":"CFPEqSvcsf7ajuKJKFS-0","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":"JX7SOlW8o9sGv4WzHeFtz","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":"EGvfijqr8mP9nzTJ8p9ka","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":"PIx-KKP5lqIkCTuMrMcvZ","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":"yeEK-JzAh-5UFDx9pi88r","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":"L43v45XEAPPtkvTBX5pnU","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":"MwMzTkRaxLsOb8ujqGPKF","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":"TXmPypqqRzmgZevdxlqp1","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":"T-B8zd5GaJO31iUxlhNWD","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":"0_Z5OcpL5oerf3jpgKYYM","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":"mSJBudsyxu5WJNnBllvN-","name":"loader","brief":"","type":"NSDoc","description":"

        a small class to manage loading of stuff and manage resources

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"wsmctonOblWSFBt2dDG9U","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')\" }\n// video resources\n{name: \"intro\", type: \"video\", src: \"data/video/\"}"}],"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":"kQWmAlXWcZULEsbBLp6DH","name":"autoplay","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        Set to true to automatically start playing audio or video when loaded or added to a scene (using autoplay might require us..."},{"id":"kTeYIdEvN6fX9Y3JMFWmZ","name":"data","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

        TMX data if not provided through a src url

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

        Set to true to automatically loop the audio or video when playing

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

        name of the asset

        "},{"id":"FtsyCr-CAk33vZ9--A_5_","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":"9qjp_Ily5gmu5sMGxAS3K","name":"stream","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        Set to true to not to wait for large audio or video file to be downloaded before playing.

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

        the type of the asset ("audio"|"binary"|"image"|"json"|"js"|"tmx&qu..."}]},{"id":"3ZBuUiQYvWvuSnjAtPfFK","name":"crossOrigin","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":" // allow for cross-origin texture loading\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 and Video data element.\nBy default (that is, when the attri...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HKpePcKDb0lsGn_SAj_3M","name":"onError","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// set a callback for error notification\nme.loader.onError = this.loaderError.bind(this);"}],"type":"PropertyDoc","description":"

        onError callback
        \neach time a resource loading is failed, the loader will fire the specified function giving the actual...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eiemgahUWnzNxXulMYFC9","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":"t7_XHd1dztRXv6II_cKwv","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":"oNd2lSSqWJIaPbajr5AQO","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":"nVaAG1rtD-en_TQGFLYs2","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":"hJYdrZWIQrSqQX7bBZ0ZM","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":"XEQPsYJf8YgK_uYWzjwAq","name":"getJSON","brief":"","type":"FunctionDoc","description":"

        return the specified JSON Object

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

        name of the json file

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"JSON","kind":"canonical"},{"value":"JSON","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ysoP-zRG8ZgL_DYONmmeQ","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":"MER43SflFG6eFBXFrMDJy","name":"getVideo","brief":"","type":"FunctionDoc","description":"

        return the specified Video Object

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

        name of the video file

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5eTNuhnic0Ub70lpI28ba","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 // load a base64 video asset\n me.loader.load({\n name: \"avatar\",\n type:\"video\",\n src: \"data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZ..\"\n };\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":"oKHsGU9yCDtlPdkND2o95","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 // video resources\n {name: \"intro\", type: \"video\", src: \"data/video/\"},\n // base64 encoded video asset\n me.loader.load({name: \"avatar\", type:\"video\", src: \"data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZ...\"};\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":"Ncn-Hy82nmMG7UQ-a40qT","name":"reload","brief":"","examples":[{"caption":"","code":"event.on(\n event.LOADER_ERROR,\n (res) => {\n // custom function\n showErrorNotification({\n text: `Error during loading content: ${res.name}`,\n done: loader.reload(res.src);\n })\n }\n);"}],"type":"FunctionDoc","description":"

        retry loading assets after a loading failure

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

        src of asset to reload

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"C9hmWJC04UACREmc3Ew-N","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", "video", "binary", "image", "json", "js&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":"QrJ5oguSw7j_v6O0-XStr","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":"WVXzp7HXYnxpRgezxp3Q3","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":"dv-YF0ZE81av4LFcQ40uc","name":"unloadAll","brief":"","examples":[{"caption":"","code":"me.loader.unloadAll();"}],"type":"FunctionDoc","description":"

        unload all resources to free memory

        ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"iVyvZOYs6ZdWlnVjSqgBj","name":"Math","brief":"","type":"NSDoc","description":"

        a collection of math utility functions

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

        constant to convert from degrees to radians

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tgIduMmDH64Df0Ou7np1_","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":"NkYc75bEen-lgygoJys80","name":"ETA","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

        constant equals to half pi

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

        constant to convert from radians to degrees

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

        constant equals to 2 times pi

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dasupJCEBVrf4D-wxS-kf","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":"csEZmtoF1U8ZtuB_kyWY2","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":"yjnXB5hTItOFQyIMEbs0e","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":"f36p4f84fD7ey9vilNbdy","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":"Pgj2pb3088WwcetjZXpLs","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":"vwzSTswk2ForCiZ0DTJa0","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":"nWmkZ0FxspApHwp39IYEt","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":"pcVcY6Y-9TTAcw8MtJPJJ","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":"n2b46SuF6QaLerjP_3ITN","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":"ME0GlX5x8qjce944IQvII","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":"z7IDzCDybUYKd5qrXrN9U","name":"ParticleEmitterSettings","brief":"","readonly":true,"see":["ParticleEmitter"],"type":"NSDoc","description":"

        ParticleEmitterSettings contains the default settings for ParticleEmitter

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"lfyr7RgBP6OW8YLd8y_LY","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":"SVBS1-muvcA_otibk1Rw-","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":"HdmjYuI0fTQndiJlE2AqW","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":"uqDc-8_y7oKYSYNuXEk6z","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":"J_K0N0FgAd1LcQ6LyWgvk","name":"floating","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        Render particles in screen space.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-g1F_3gVtgU5PdjlyHncB","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":"LM6hErH2HZgpA60I4eYOj","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":"awmTtUzVznv5yhV--FkRN","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":"eEgPhctVTqbcnZHJrwXZ8","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":"WjeVfZtWZbcYAZTaLrT94","name":"height","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

        Height of the particle spawn area

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MlRJZnscPX-1wc-HDvvda","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":"ginbszn8XYA6oDKaLRPoG","name":"maxEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Maximum end scale ratio for particles

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qejVPZKYhDYx4ikz8J0AY","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":"6SWngPMuoN5mVmNLPWpxE","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":"gOqVST8Xc7mkd7IZ-oFAy","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":"LEn2u0alBxKhEeBfxGoCs","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":"jxgAwTpwl6gTabd4JHwPp","name":"minEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Minimum end scale ratio for particles

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X-zkHfZCBUrGBS4WPcFM8","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":"jfj9Q-XkSwvvMllfeLmcc","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":"RI4U_XFSWAsWHNjdXzhlg","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":"L9Ja2qVZ60tcQXT7Fas9y","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":"yTa0uJPuHAhUMHeoAUQ_B","name":"speed","brief":"","access":"public","defaultValue":"2","scope":"static","type":"PropertyDoc","description":"

        Start speed of particles.

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

        letiation in the start speed of particles

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6TJ5MR_wVpy1QJOAIFtTE","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":"ReRbR-4RtdXFs38wJ9T-C","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":"3QcRxt1kkJqOC7NGeaM2E","name":"tint","brief":"","access":"public","defaultValue":"\"#fff\"","scope":"static","type":"PropertyDoc","description":"

        tint to be applied to particles

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

        Total number of particles in the emitter

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

        Width of the particle spawn area.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QRyWIyyR4lF6R7pqzecp4","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":"VwW1YYpxcnzxgzvTpHphN","name":"plugin","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"0utuInQDe9zv3LmC0zXJc","name":"Base","brief":"","deprecated":"since 15.1.6, see {@link plugin.BasePlugin}","type":"ClassDoc","params":[],"returns":[],"extends":["plugin.BasePlugin"],"implements":[],"members":[{"id":"g3fd1QWOJ779pOVNv9_w1","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

        a reference to the app/game that registered this plugin

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sRJDM8dLUJfHIjg3t9EzM","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":"xX00JikuPZJh0OsK7Bkhw","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":"erxQeYMmCcWuvFN9LgZoc","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

        a reference to the app/game that registered this plugin

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"THx56OOYnA-pyiTgO_bU2","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":"AtiETbjREXqewhtYVmpPw","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":"xDClUZAo0IqO1CA1bG82V","name":"cache","brief":"","type":"PropertyDoc","description":"

        Contains all registered plugins.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fyvux8bTPkDXAManmtkl5","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":"SIvLojdLY3hcIN1BPVEHl","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":"SxAZnN03gngZyT8wxtpVw","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":"QZCfAwKxQUqgluBwX8ScD","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":"VuEIsRiNrK-MKX-9CdtyF","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":"7pdxCJNa9YCds_485IJUr","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":"OMxVbZ35LXpUyctmGCqQ7","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":"g-r4ferb59OpNh99Ropru","name":"state","brief":"","type":"NSDoc","description":"

        a State Manager (state machine)

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

        default state ID for Credits Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6QZN-d-n9JGyLAnFSCBm3","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":"fx6Ny0IpdTpC8GS4Dh0EY","name":"GAME_END","brief":"","defaultValue":"5","scope":"static","type":"PropertyDoc","description":"

        default state ID for Game End Stage

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

        default state ID for Game Over Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-2J4D7TbLUdvHHV-7wxti","name":"LOADING","brief":"","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        default state ID for Loading Stage

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

        default state ID for Menu Stage

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

        default state ID for Play Stage

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

        default state ID for "Ready" Stage

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

        default state ID for High Score Stage

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

        default state ID for Settings Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4nVjzTiuqPPkDOnn9JupD","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":"rw-qM9y5Cj9zA4zqk8E8o","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":"nJrPaymfh3hXeINlcBqGh","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":"CoJpBiqFSRzdyraCc_VrW","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":"N5wFgn-390O3UKki-Bo-h","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":"M2AB8RmywVYTqUoU5Bc2x","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":"uofLGkpk7N06KXa0mYI0g","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":"dG-LSW0FCVomwBiARjS7V","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":"X33bccRcibr_LXeNnBt8M","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":"Zz2zsnt5L4SEied6kPgg5","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":"B3GoE9Ba4TbE-0X7tiGMH","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":"E-CxmpSqhB5GizYRTGUxQ","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":"Zec7MbTiGUcEM_RNnD0D8","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":"HcMIMZD5ONidD20KLvkry","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":"S-BY8aDsRsVh8CU78mRBR","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":"bgpF6ivAnwEyLzei7-D_c","name":"TMXUtils","brief":"","type":"NSDoc","description":"

        a collection of utility functions for parsing TMX maps

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"fa-7QdOQJtodkOuQwh8wU","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":"3f1bMw1HazPC10-P2Mqie","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":"SpradrXjcnUxJSZx_NNp6","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":"ruldfqRzzSmbA4Za64GkW","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":"G5Ac0FpiL0vsHA_9RROnX","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":"CH2TqD3demKZ4nrIEIhhW","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":"SNvBP-PIiwWMXkJ3pyzSU","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":"xtXzk-aG1TRkbiuA0lJhw","name":"utils","brief":"","defaultValue":"\"\"","type":"NSDoc","description":"

        a collection of utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"ITNUy7rFuTU1hOj-pzUWF","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":"n0UAqwm1YS38wEfd10xqr","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":"Rh8_lcJxLbQz3caNOLymh","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":"gDwo1riJdPadaYuF68xd1","name":"array","brief":"","scope":"static","type":"NSDoc","description":"

        a collection of array utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"bWGYtIgmPYy4lt6p1flPo","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":"lsjmBbaLrjcob6iAKICd-","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":"ZB0acelZcpoDMnoSH6ClF","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":"kvvYTAhM2XP1MWz756Vv9","name":"file","brief":"","defaultValue":"undefined","readonly":true,"scope":"static","type":"NSDoc","description":"

        a collection of file utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"phO9y4DB4q76Ll5wWbCT1","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":"n0zQO90ZimgMYp0UnrwhD","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":"_Xc1iPaCPHWfccvIex3Pi","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":"KVguXovspQ9ugZ-v6EyiD","name":"function","brief":"","scope":"static","type":"NSDoc","description":"

        a collection of utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"jqbWK3hjtonjwz6MLuEa6","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":"1VsDuoGm15IdFji-LBVXE","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":"WjlkSt4PyfFz_TESVGEZS","name":"string","brief":"","scope":"static","type":"NSDoc","description":"

        a collection of string utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"AvFFPvmzHCZEuTCQ6v_6a","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":"hp3cpHxJ1eJimE03Qn0cC","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":"x1b0fWO1nTAvg50T4HJ14","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":"Pw5nXb3wMFE1eGQZQY-0N","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":"n5q-dndbn5P_d8bp0a2PE","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":"6CtiC37dPYlLLmxVtprV4","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":"v1","optional":false,"description":"

        First version string to compare

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

        second version string to compare

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

        Return 0 if v1 == v2, or 1 if v1 is greater, or -1 if v2 is greater

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BB31X4dVPwkXoHdYvQlFG","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":"Q_tM3ZkGJ1FtH3zyvnc8J","name":"debug","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        display the debug panel (if preloaded)

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

        show/hide the debug panel (if preloaded)

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

        draw the hitbox in the debug panel (if enabled)

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

        draw the quadtree in the debug panel (if enabled)

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

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

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

        force the renderer to WebGL

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

        A reference to the active Canvas or WebGL active renderer renderer

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fd6yTXWrhMC_7cZHP9hkT","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":"6OVVk31UV2x6odA7V-kKu","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":"sGA7y0v-jy0b2ZfHEX2yB","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":"YU6wGf0KiCOJRkNM8Uzmf","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":"mKq_zGLWpJieuUT27_joL","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":"iniot9bACLpRDbSuh3oAx","name":"antiAlias","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        whether to enable or not video scaling interpolation

        "},{"id":"2WhV1RnAH9GFPzymw98gr","name":"canvas","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

        an existing canvas element to use as the renderer target (by default melonJS will create its own canvas based on given par..."},{"id":"JD8tk36Am5fvCFLwNS5MH","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":"sH3BW0zMNmbNBNzXBiN7i","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":"XVyVYa8Ljd3v9RhAcgxmn","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":"3acmCWR11HIAWJe1pCOXW","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":"sGIa6VUgcd9D1zuqFaxkL","name":"preferWebGL1","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        if true the renderer will only use WebGL 1

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

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

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

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

        "},{"id":"Hky9n72MPFNfKHfwI8C-c","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":"ZodndXalAUM-c9FGfvkjI","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":"7togCYnQxd7qIBrrgSMmZ","name":"transparent","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

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

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

          true when this app instance has been initialized

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_IKnnqBqm8tssWXu7b7gG","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":"qxZ2HQzqn3Nf4wHWUaTxx","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":"uMPSKFChJjtOhAgISfbQK","name":"parentElement","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the parent HTML element holding the main canvas of this application

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Wwr7ugG5F32aZrgVNo8ro","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":"tlJjL-ab6vkq-xC7Ib5ix","name":"renderer","brief":"","scope":"instance","type":"PropertyDoc","description":"

          a reference to the active Canvas or WebGL active renderer renderer

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tjl2Ya1QuWWp5bUy7Yqj8","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":"o_IlD2yUtSvxt3tVOA0w4","name":"settings","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the given settings used when creating this application

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_gTQOBMM4jSUUD1SoZkw2","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":"vsNm5R-QKnC1sQ8aRkupb","name":"stopOnBlur","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Specify whether to stop this app when losing focus

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

          the active stage "default" camera

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BRxuNNcnYcp9rGRzE-GI7","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":"_GKHEWQ9AYiaz-u3Aae4R","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":"7awSAN__a_V3z-W7UkzhL","name":"draw","brief":"

          draw the active scene/stage associated to this game

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6_DiCSKa-Vc7tyV6CI079","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":"9u88vfBDyfCqWOFvtdS7x","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":"rbOdtk3JiwQ4LIx9O5cCo","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":"j75d5AnHHOJCZrEuRIV7U","name":"repaint","brief":"

          force the redraw (not update) of all objects

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XzRwDztunXvO2zTnjvlvB","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

          reset the game Object manager\ndestroy all current objects

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vHLaZdV_UbuMpmVhl-8fs","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":"IZLQ63e4-LIyRgOgipVQc","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":"AeVK7WXHaQXBOOBd46jZ6","name":"BitmapText","brief":"","type":"ClassDoc","description":"

          a bitmap font object

          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"bhlHS7gDI7O5XPr65obDp","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":"HOQml158KrwAsqH2Hv01d","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":"3289sg3UxSo1KSl8RxhM1","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":"GPPxY3Ya2dmBjmC2XMOU8","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":"mVPA2dmZX9xm3cwYCKG-I","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":"EfL-s_spyy6hFd6rt31IZ","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":"f-IQLsJiwysj_8vnECOP8","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":"XG5PUIgJZh0H1Vk0M88Jd","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

          bottom coordinate of the Rectangle

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

          absolute center of this rectangle on the horizontal axis

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

          absolute center of this rectangle on the vertical axis

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

          the renderable default transformation matrix

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QGryzhUB-dMG-7dh0kMk5","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the depth of this renderable on the z axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I82ReRzf_0P9srTg5i5eJ","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":"c51yuE2fUHHJ1etXVMTFm","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":"-LI7eWiF7Sg5iaMP9SCcS","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":"YvJHZbtceDfAQ66Y6roUH","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

          height of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UIr9J3J9Mlkn8PlPBTSG5","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":"8b9_EtbU71f-9phAT-rdn","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":"vYIegsq9fhXnSPJcjSCgo","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":"JVFrFola-uW-tVqBCu_JN","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":"4mxHoL7muVxPaziOMNS8m","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":"8GL_CQJs7u32aBdNQkQpf","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":"06JIzhjOuyKCHlfvMS4CN","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          make the renderable object persistent over level changes

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

          left coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T14Mu3SQUy6fIbRRN-rxt","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":"5ElvxzV3J5FJ7wv3PG5LF","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":"m3aJL1dl4bAXBvGSe7oGO","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

          The name of the renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gePzxI3V-WHXsGBgxJCm-","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":"A1bSEYZpoFg4UG5cA27Wd","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

          returns the parent application (or game) to which this renderable is attached to

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

          the parent application or undefined if not attached to any container/app

          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AwcfsOpYK5v0cONwuPYUj","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":"0Sx5lKaRCUhxCfFxSrdwV","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          Position of the Renderable relative to its parent container

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

          right coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WFg3IIEbu6LWEBEbAUMMi","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":"XVkAw4MhE-fxxrY27dtMu","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":"RhZ3edjM5_iECsyw7X9ld","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":"mI8JWQAuRbTCnjaUESNFM","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":"FI_V3xmsm2AV8a5B3hp8J","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

          top coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"maudYKhJPrF6UrkhUGCKL","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

          the shape type (used internally)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lmLPImLKqUoXm3fqCwUZX","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":"M1L3aTESCF8SlvBq8nCTm","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

          width of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lUZqzOznojzT_mEtg4yWd","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":"rCKLbRx5mq5xVz9Kl6Nho","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          the text to be displayed

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D-2COiB51uqMK1gKmOMsP","name":"fontData","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          font data

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W2GlzQ3BB-ywfpcz_FvJ5","name":"fontImage","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          font image

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r6ObMc9ZGaKImTljMPwvV","name":"fontScale","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          scaled font size

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pJdYcO69fee1Xg0MD4Dwa","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":"rnwTtCs12Q5svDXRurnKL","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":"gO1T8I7A1nmK2IjofCpDc","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":"DDF8Ph1e2fQU93np9uS2l","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":"pjSaibRAcFqmK60WuQpd8","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":"iiltaBgvIfVgMBUGVtr4D","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":"YOsUewSfciPHMxBLu2RLQ","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":"Hhb5rE6s7yNfJ9bNEkDYh","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":"UHF82vwdoKJ7qzWSADHCp","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":"LVEj4jkXlANEAMz9LH8wQ","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":"8YH4gPTDm-u28A1waFexD","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":"Pph-2imKpJGfVStk8xpeg","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":"81iR13ysbc425P-0MtUhm","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":"mPB0WxR9NrofZDFgDJ1W3","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":"AIkbcs2Jen7wssfAh6REX","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":"bl2MWpCW-H_-KOABcl-J6","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":"AjG14vimawoLusOtKGmSt","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":"HvQjTZRxRoGJ476W0sLuT","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":"M2L6LUrX2MDpEBXnhaGtx","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":"MAVWpjST2yX7O7zlHfJ92","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":"ECyHdkrFtEcnJMrYhHc1K","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

          OnDestroy Notification function
          \nCalled by engine before deleting the object

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L20OpBE2LNQPPrph13WcY","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":"zAw34bNJtSuKV3aZ0qHhq","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":"swIfHceWt14gyhouAb_wb","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":"ldCyoSmd5cgK5kTzD600m","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":"V9RU4SCb-V_252ooDnqWG","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":"rbNxH5G5h0df8xe52vR0o","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":"0QJjOfDR1543AZ-dFGmdG","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":"fwF8OO91cgAU6MJSc-kcb","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":"GQvoGsIShPU8k8fE_uMJw","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":"X-IGXdKudUZtvK22BpLaB","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":"x_B3ci9dMbl8Mkv0GgacR","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":"pfDBj92utIUvaUtoB_FI0","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":"mpVwFcHI1Vp6ykhcf-dpj","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":"RfGK7axkYbcVciJ0XC7dG","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":"GZZepaMyJdMnjDToUdSnI","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":"ySW0ELBVzmmVOzJTKyiOl","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":"jn-vLp423fAV0jTRgXyxW","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":"K9vRSOyJEuoy0T6yTmY9R","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":"ESiSXj8j3XVAZb8nKD4PR","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":"xkkIQELM5MG6s7HQC2dHj","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":"gogf7Of_uebHfT4AwmwOr","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":"hxNgLJMG26U6wAAu0C7yl","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":"uUKyVmTx2LXT8cfQ-VAlF","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":"WR2UqyH48wD81Ngj75S3T","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":"D5viemEDEsLjNtlbI3fdh","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":"tLn_eUnonSkWqofDZFw-d","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":"yp7E13tgnhGZ68gHbTQ4t","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          The AABB bounds box reprensenting this body

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mxZajTBVEtZXzUXSRv0A1","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":"rboXo-mRrTDtqZZPHwq4F","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":"tf8a08B36wyxH7QgIG1Rv","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":"4_FDBVdi_df8NtmBC2hd0","name":"friction","brief":"","access":"public","defaultValue":"<0,0>","scope":"instance","type":"PropertyDoc","description":"

          body friction

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YD7yLnfTQTN_MJswewYcf","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":"8TA7FRQM85BgQfxmP7O4n","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":"bnyEk8obbjvdEkJj-fl-j","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":"v9xMgyhnQLa3urxPdFmLe","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":"s-OtUzW8OkjCdtSZKS2Zl","name":"mass","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

          the body mass

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"agZiZWLYIdUi3EO4MraOe","name":"maxVel","brief":"","access":"public","defaultValue":"<490,490>","scope":"instance","type":"PropertyDoc","description":"

          max velocity (to limit body velocity)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Adc6ya6xFQQ6adVKidFKp","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":"U36J_tIOKAGEFf_3ICl06","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":"E-M3G5V0ZdsUDLXjIA5SK","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":"rQ36F50omnXNGGZxT6g7G","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":"DXNwgK2FpadMrxDiR5asf","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","optional":false,"variadic":true,"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":"pFc2YX1lgvccozI8qIrUz","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":"fzbqphEZRoVUTs7CcyQx8","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":"4TN5hE9hi4dbKSiGj86QP","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":"waXDLj1KBaOn8JoJ9Wca3","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":"0ZHUONDeF-COP8Ce_-Lrg","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":"X4nsWz7MnK8iLLtSUrwwI","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":"jEs-JK7N-ecJscfS5RPJF","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":"4BgZv--GrJMYqHxteQv0I","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":"qsXVYKAFEXW9gHyD5xt04","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":"Or4iaJOvJ4FBxz1Cbq3XR","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":"Qu8M-pXYg4UBvA_MaiBqp","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":"puVg_DxKEMYRZ3qlG7HHu","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":"2ka-JPLGHPjWSA_km8ez3","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":"JoLH0EbZNbRY3JcC5B9ZA","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":"aQTu2rtrCPaNyKUSUs8Ur","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":"WvDJX3q41Z-hXeYeeIsYS","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":"aCBSVxWVxCZYwSn0Vf0EI","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

          bottom coordinate of the bound

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

          return the center position of the bound

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

          center position of the bound on the x axis

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

          center position of the bound on the y axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7InfnrqLyHtAJJkCjgmOI","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

          width of the bounds

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MZKA1R38-OuE4gyv1N85E","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

          left coordinate of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wR-q6eVIIUUy3UiAO0QXo","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

          right coordinate of the bound

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

          top coordinate of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cuzys6H9IOYgehVbM7mrt","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

          the object type (used internally)

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

          width of the bounds

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

          x position of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r-E7qkocVbPR1Tna2W7rN","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

          y position of the bounds

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L1ix4JbJ1C_WDYmvMI8lD","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":"q-vgAnUEzZqkm2wXab3k_","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":"TWPJ_9i5CnOcPKA0Ov4-w","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":"irGZGl0-FuY4x5kuFtgjF","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":"ayl2rqDyt7ajYSs5RcZ9z","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":"OC19_u_6PAJsdo5lC9Uj6","name":"clear","brief":"

          reset the bound

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zOPqNJnmEkx1SgvS70QsB","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":"0NfUqz8pKtAqcZv2l6XX9","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":"VAPbakFU_s16VWO5Xazap","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":"zq12KvUr0OwqOwN7SKooT","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":"hDIHFaM6ws1-becw7C1np","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":"MWFPPsD-0J5NVY4CPVG_z","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":"TqmRmCarxisMqpsdtqzKB","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":"hD7YHJOwP8zhHtXso7Q_h","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":"dCEQHSrzWmnGQWKaFrypk","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":"JnCLwwOgtQPG0s6OM1CuQ","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":"urNeo5G4iw1OglUUE4kQz","name":"Camera2d","brief":"","type":"ClassDoc","description":"

          a 2D orthographic camera

          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"F5wu1dZZb6-RuCB9MR9po","name":"AXIS","brief":"","readonly":true,"type":"EnumDoc","description":"

          Axis definition

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

          both axis

          "},{"id":"fJpgkWs-_JcGENuKGVyrO","name":"HORIZONTAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          horizontal axis only

          "},{"id":"96C1I_lxnHDvH7bn7GlYE","name":"NONE","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          no axis

          "},{"id":"FNhfb4tZekZ09vCkg4ge1","name":"VERTICAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          vertical axis only

          "}]},{"id":"_4UjHFU8Fum5Ay3Bd4vJ8","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":"7ss0JGRYgn4FrUJo-5jWW","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":"Job4T7dk5tM27g-Ymmr95","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":"yxsmm5i-zrwYsaA8zToDB","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":"rxfKyM9wFqlceNhtPdEjV","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":"dq-FrO7gFX5lZeM_5G9fD","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":"g4y9Ldy5Cgg6CYn1mrErT","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":"zTewql1XSbHMRP3qJiuMM","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

          bottom coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tXdjoMeoaCMWZLaiPUN6B","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          Camera bounds

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

          absolute center of this rectangle on the horizontal axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4Sv-C97s-M6llduClLD51","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

          absolute center of this rectangle on the vertical axis

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

          the renderable default transformation matrix

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MULvLEwvx9iSBln5OWwbe","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":"6gxOdUCIRYfDxp0ibEBUh","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the depth of this renderable on the z axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y5aHcqJDdN51zGMSQSYkt","name":"far","brief":"","access":"public","defaultValue":"1000","scope":"instance","type":"PropertyDoc","description":"

          the furthest point relative to the camera.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0JGz7dPDFEa_Hsb7sKssu","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":"nVAAgOvfzTL1ofkdclvcZ","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":"zfWdh7HKHS1zufFAgHMlb","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

          height of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aiM-F8GLyUX2JzjG7wiWI","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":"CgcKUtqo9oUOXPJsvVePS","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":"dMHr7hEO9hsNICOo6Q-TP","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":"DBq0ZJOgfl-9XVoHwrjo3","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":"jxdX0cLLhOm-G8T0nvHUp","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":"pdu51yIdhL3JZ1eq8Iv8R","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":"Kg7TJ_ZdERRf88oORtllE","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          make the renderable object persistent over level changes

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

          left coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-eZmC9jpUKnizv5FinWMp","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":"LE_KqSoO_arMldjMl8iFh","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

          The name of the renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mYT4ULwX9QCqlSBBG02cE","name":"near","brief":"","access":"public","defaultValue":"-1000","scope":"instance","type":"PropertyDoc","description":"

          the closest point relative to the camera

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pGJKX4v9Mkk197o_8Pue0","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":"uhW2auce-runmPbciJUq8","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

          returns the parent application (or game) to which this renderable is attached to

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

          the parent application or undefined if not attached to any container/app

          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aGjiRZRVRfox_FXHSfKIE","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":"bf924XjxAzFvCiMl9cH5U","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          Position of the Renderable relative to its parent container

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ytrzLAL9cowZjSO0vUGW4","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":"goVB_fTeskz59Z3OQf0PC","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

          right coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YtpolD82VR9tIdK2_anGi","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":"vwJ8p9izYunMvZ-Nggozk","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":"7HO64FDJSP1Xki4XOPaD5","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

          top coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_YMGUWWWmgv6UVC_VKfid","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

          the shape type (used internally)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8hSuQ4viKcpNf_zrKh6ju","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":"yZYhBHDozpY6bnQwBo9ba","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

          width of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j3aX69yPukLpNIQymsteL","name":"smoothFollow","brief":"","access":"private","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          enable or disable damping

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7oHRBrBF5uFYVoy0kdAJE","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":"ZiJaQ7bYvAM5rNFoIzjqT","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":"Q8x6H5hlp7WzG_Y8rpGnD","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":"Khnhy_FoaVUmv5odgna6_","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":"cZXzIpJsJ0nip7bjgpSi0","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":"rZDOHko-yMXOTqf7e-QHl","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":"SXsYr_RHVTQPIUqZVqpEC","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":"thtmeOpx9z5B0ehtsbMpx","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":"NrDMzIjotPceVli_hvMy0","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":"gSP5BjTcJdydPjkpyjfjj","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":"4rU56RAgKrs5ISwcq0UiP","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":"VGdxezTz4EyBIrp3mHczG","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":"AilWDSFE-LGrHPlRl5ADG","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":"lJWIJMEW5cnc4LWlhSKJ2","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":"1AcOuu39jE3eSPQZPe4-n","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":"_As7TFkAQ0fFuNBWYcXTE","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":"Z5d9ON7XpHp9nHkEzaRbn","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":"4czLq0s6U8Nh5WkUoU4Dr","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":"Kk_Z2LXCWvTaYB6wpcIjq","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":"ZLnp2lHgRFS2MY5s8oVbX","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":"4OXUA3ivpCDQUWoDjmpPP","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":"4_OQnIXu5kdEmEa1vCmSV","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":"YbHKJ9Kb2MXAUrJWWjLkk","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":"LN2lDPdW2uV3aBgQWcWid","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":"RQTtRArBjfR4SKHBykmQ9","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":"mrd4Abdkeww98sdzee7in","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":"_w5WMPnDRLzrM36udZLiM","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":"rlNVELkNB0_Hfq6S56owW","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

          OnDestroy Notification function
          \nCalled by engine before deleting the object

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"djNMUC-CzTm-4tcEA7eSQ","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":"soNjYs9-jNAl9ELRjdwXD","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":"I7ifTq6ag-Y31QMALreGi","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":"ALIOuy5hMtFVbdRYpg-sw","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":"kSLdWTl8SCujjl7Ugfbnf","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":"_o9AgtIuTEOnCr3U9BWsU","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":"wDgp1g-_k0qliCOdcuAaR","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":"XbtucepVnfnNXvybDkCCW","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":"SxDNgZ181DpZfA3VJTo4v","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":"vXXJkZGCx4Ub0uIrcdSLI","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":"rfTkRCpd2mrmOQ0ggLCnw","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":"9I5fOVCyCCbgKvDH13IJM","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":"3QsqcHXNXkoV8eLp7UufR","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":"4G9ghSQTY5spK8TQZRdCu","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":"Mpp5_niPg-_EaiRuW1fIJ","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":"O7Vr-_9HoenQZmsh89OEz","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":"UmD5VRnx7zHLH3CA1sUbZ","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":"hHGKy9U_s6m7AZE1ywvsl","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":"wFD82-XC5bBgUvldUWZ3J","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":"wO4ehOjb-TJcHD-szI3Uh","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":"t5G6K9AhEG2WtwaqCdGe4","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":"4GkX3s8gRyzCDRP1pP22N","name":"unfollow","brief":"","scope":"instance","type":"MethodDoc","description":"

          unfollow the current target

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lj_pZDTlH1cXhZReYwcEl","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":"8b4jzRO2O_p5Oy4SaHjHb","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":"4GruPpy528U-fIUIScZGZ","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":"g2gw8hYVqgrPde8TSfxZI","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":"lzy-yecMUO3HLNO0W4tTQ","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":"amLhFLeEuALcU1_BrVZeZ","name":"CanvasRenderer","brief":"","type":"ClassDoc","description":"

          a canvas renderer object

          ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"b0ovXSKbZBGThVBNVrojU","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

          the default method to sort object ("sorting", "z-buffer")

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bDWxCbA8LVVR08gSDbQdC","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          the requested video size ratio

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QKf4JyoomRrrkEmPFdp16","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":"B46qrUTAPuhG1biycwAG4","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          true if the current rendering context is valid

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

          The Path2D instance used by the renderer to draw primitives

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y_gWopcOGiSZ5a6Ob-8QJ","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":"g7xBpOnyIEZTOiY-VhFHY","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          The given constructor options

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jQjoxAvSFxIxr4FJcQ58T","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":"83hWiGo1taLu29xo9S1SI","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":"_jur4bUN3Nqde_HVUIS6a","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":"4ndpLzmiDIVBapJoJGSLx","name":"clear","brief":"

          prepare the framebuffer for drawing a new frame

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bAaDSgKukcyuDqmlIK67F","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":"vbdrF_H0OO6xGS10at9bc","name":"clearMask","brief":"","scope":"instance","see":["CanvasRenderer#setMask"],"type":"MethodDoc","description":"

          disable (remove) the rendering mask set through setMask.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6y0EpM1ji_4BGGXZYTlTx","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":"ByreMeGnowDDS0uplKomM","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

          clear the rendering tint set through setTint.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k7ylJZ2G8tm3W3p-it0CM","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":"SrtLV31KfONsZ3_eClM1c","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":"sDks2OWnXzuM9_wKaSJMd","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":"bI5ECaS3n89xkoUKucwbB","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":"qsM9hIDPBCAVXMkNp72__","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":"epOVTnI4tATsOxtBnPMkG","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":"wmLby7ffOpZjQqAw8raUK","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":"3zbYmRlRLySUPjYArmGH8","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":"tGJEy9jb-vyg0TWfBbwuR","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":"5m-HJ237fvg9oX-EVVnlI","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":"0uQJey5C9kkTJ8Jm50oJH","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":"HYEIVXIcaOnFEAw2oP7V_","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":"BnLBPvQuK2fiQ4vw7-EmI","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":"AAc4BpE0gzoH8lRCROwIX","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":"tSWEjnH3McaJtT-cWg5a-","name":"flush","brief":"

          render the main framebuffer on screen

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GYVv_xwihETIOxlR0Lbj0","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":"bbTQ_8NqD_lor95tKqvZQ","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":"MpA-mtARbuaJ17bioH9Bc","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":"526MbAAfWLynriTP-3AUD","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":"QwScrwgkWcY7_9D8I-iws","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":"3BQKzihzJzwbbgi_2lj7U","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":"4_EEPPN33QTTHQ6agxZ0l","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":"7Q5o54V8ZbEBkOVsvpJ58","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":"L8Npam1vOJTzK8hZoVzVu","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":"2UmdyhJo4Y-T8Z9WcFa_g","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":"lONDRHO4SYxbuh9l8nipQ","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":"Tt3vzZpgiOeh_CRjoC7dk","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":"rvUI9oWeXYVs1mm8-Laas","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":"KiaH7AlEr-f6PFYfdCU9X","name":"reset","brief":"

          Reset context state

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zFxWzPiKNXgJk7bhKnHcT","name":"resetTransform","brief":"

          Reset the canvas transform to identity

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vzgytcx7khDLSUiD0H16K","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":"veOIVWQ_IZCvcAG2jrezx","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":"a4ozAA9N6i18GAqAWrGzv","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":"7iwkdywkTExS36OqIFM-9","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":"ye1B2Fb6O9PDStxz5ekIZ","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":"doVtCLA1wak2v7N37BbHN","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":"vWATNXT_K38HrlFzSm_O9","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":"oPSeM5bM4S5w81gcyr-F2","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":"ERMCTZS2faxNJowOiJttq","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":"FZf-AMKbJ3y3maGeVIY0N","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":"KTCMvCxYaJUXzTsUlbGea","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":"QCrqUD_e8DqwDG2Y6DZ0F","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":"kNGZQ42SB2z2Qkv6ii4RN","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":"jVzESnGowmah9JdtAAxHH","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":"XQtROdhcVIjqwFsWvfxby","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":"jUwmzoOEpwrB2oRJPnMsW","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":"46-iyPWRMqNu2GNysnOII","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":"F4i8G6V-h99bJsZiujcvc","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":"8onL7AW3r-kaKpF1lOIZ4","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":"qHatd_W2HZ6jKwBe8o3gc","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":"9V3OR4B-zw6OklEJFcA5g","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":"REybgyqn9w4AHZnYMG3Ri","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":"NboklDHodOAeUXez_gttA","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":"mM1iHRrBnFmpNAHaC3qEY","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":"l4UJWYzsk3W46-ha7k3Ht","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"l1wbola082gt7RPlLGScf","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"bfs3Om_PKJkK-GvlPJWLi","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"MukREe7jpyqm5dsrFkB_D","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":"onLwkuAvZinJ-LVTWHNMd","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":"txXY_cIpQ_v8TnRHs1OYI","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":"GTF3vW4VmBrImtv_ovoD3","name":"canvas","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the canvas created for this CanvasTexture

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

            the rendering context of this CanvasTexture

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mo1HqM2ggOwd3WMhYHVKU","name":"height","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The height of this canvas texture in pixels

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NzkSSPck13GdcrizWXaP-","name":"width","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The width of this canvas texture in pixels

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tsCrrIxujRn1jxpabCu8q","name":"clear","brief":"

            Clears the content of the canvas texture

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rkDkhofzC_ZQn6o1cETO1","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":"02kMN5b5KSiZQnySriiB-","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":"JB6iZDbBB-U8lgGAz5Dyl","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":"5RSWSYz-Bb0UBLcl7Rvxw","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":"aPv5uGK-4wLPIJNmFtTH8","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":"xIXJ0bP8uYFo5xO93ryru","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"Ge4YaVj5e90Bb7RGhrB0w","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"GoEvNaY72aAdx71LFVxAI","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"CNEN1g2E6CNNv1TGC4K0C","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":"ayK2O8rOxyBQJYXgQslpi","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":"UkoYKhFzMJiK4-xU5w1XD","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":"AfpouRMqKgGL03abi7YQo","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":"OPDu6t_5u_oUoloFr4mgu","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":"Rp0KP1pr-9wXPaV2AgI8s","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_5ZRTeeYWuEa77IOCaZ_i","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c0Sz8f8J2Y0JRu8pYL4Cr","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":"jYah6FLfqIxwDFZXK4GjN","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":"hLGWqZPwtY8joz-G_lKti","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":"7mcIdnS5pUyO7QsQhgnn_","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f_4ODxCZVhrkP-OltcErn","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"68lmNHG_6ADsgnvq0DydH","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"02X6vwdTbGL1JTuxL8jhd","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4d2g3_AJHvC7k_ORt-X7c","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":"8mAIBiW0QkD3TB2iH7t90","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":"EYRI-pJLoTMlc9Hvk4yF-","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GasDY4WMUQ5eqdL9Keg4p","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":"vgAYzOF-jnLilTtEw-4UQ","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":"UqjVy5v1iYXpBdnTNoCxZ","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":"D0Tf9K8xG3hY9A11FE__u","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":"Lip-CshcQWzMQBoXp4-Nv","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":"At4uem_pHfk6Qn8kI0RTQ","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":"bO44lj5_cD7EJxJB7XyuB","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7lKHHgx8n1WPIAS4gFfq3","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Y_rsYt1dX2yMYrCC-xHy","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bEvxgGAUIzuVEa7ub0ZMQ","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":"kCh0ZR0am5SyKMDseRxxf","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1ly8ILjf9qjDzz0_xW00b","name":"offset","brief":"","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":"YVPFMKYk6Ik-qmK0VEncx","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":"Zkvn-aWyWymIet83fp91-","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"E7gS6tUOkf9TjlNF_nhaM","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":"VAGc8M3WS_PgPeZthL2n4","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S5IjOkjYON5D0MvaD8AYl","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":"GkpmS9rqGfuPc6Y_LAEGn","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XFmQ5UTh9RhQ9n8eklE_b","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":"PfY8m-Z4_9jCHufFjaJ1P","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OOIXMwb97s-KDEnMw9N4G","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XFhIh9KBsVtQl17zVSn2R","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":"LoEzltHOMl1WkHh_o8ylG","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5YUaDlTFfczwu-UvrVEFj","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 defining 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":"jWH5vPP-R0Pyv1NCNFl7q","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":"XIclooqgCwF1RFJXzTCnl","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":"oO59O1awbjwKPlcGX3o8h","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":"T_062u6NSTqYKjH1Zsz3j","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":"vTWll7XTEr3m3WSTWPrbx","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":"0sr3hmeyuGpdLNwFeIepu","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":"tc9HNxRFBMXZQn0Iro2hH","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":"yxZP4g7nKRw1-d6iDd7-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":"7JhEbvTGqL_prCy54UtY7","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":"0TiimV28Kk9u7GRg5sjDt","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":"_WEeoF576iPfWEc6hyGJP","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":"xhDbhYtiK6YzllpmQ1W5J","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":"7O6VGAAKjFbtRpPdLSaW0","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":"2ZB9kVoBJahJOgqeHPGl3","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":"Bfrw9sNJn6z5PVcvxDT6q","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":"q92Y-551NKqUrkoqLQdar","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":"HuhbCCrYUEzost9Ignefq","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":"p7usa4Ev20kLsQIh6Z7Px","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":"zM8_gXn8q3rJYbnGg4CtQ","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":"F0X-hrF3ENPr31hN3k8zB","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":"iR6Fg4rY1dhKGCPpK7CFq","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":"_i4fnDI2ffgdPM4SgGf1G","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":"ClkRPfEIfjWZGsizaVPNn","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6Zon1KF3hL0dLvSGKwb7x","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":"dgyEgo4APkvGVZNJNWP-I","name":"pause","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UnKQyo0i4Q5GmcspfbQ9c","name":"play","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NozTst3YwVXnvQ_Ol5Pe9","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":"7_wwImxPYSage5nwcdQr2","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":"IfweYvjd0TGrlFnG6bcp8","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":"ohwCA1SfGpDjNnTVwateb","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":"YJB46rrHdMzlNHWeP4ugC","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":"EcxzOM8eC8B5z6zW7_Bxu","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":"8adGfxI0SVhD2-D4MqM_8","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":"JdJBBaZaplDr8OcAQ6c3Y","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":"DCA1ABsHSiMiG3zwO1JIc","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":"b2Gn4F6lIc-mRuYpO_ovG","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":"F5DGAkQn065t2o-tDcASg","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":"ZNIyPJ3LkvMSEumbFWFM4","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":"dx70YqNrAL35c9VRr9fJP","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":"K1BoYPrbr73fJFgWH6hyZ","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":"NgWmjRp18Bg8yNVbnsyay","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":"SGQRJJhhs5WM0-n2GWZkZ","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":"L2TlR9GR7BmEhunFhCFtg","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":"UlH2AxAU38CDkh3Yrb2Pd","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":"nb9uAY_8XkExwMltPgIjn","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":"pG3SoiT4OSrP7IGKNuwxE","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":"ePE9UeW9NEwr9jc-umWwW","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":"wwIyOdxZ6aU73EJ1xnmfw","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":"cglMhnytwEe5WU6URbu-j","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":"M-3DQ2wH-MAuDmwvsVKKO","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":"gpWBT1Go9b7hDsijCDf1P","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":"MA3vcwpZ29SgGYr9hla4v","name":"Color","brief":"","type":"ClassDoc","description":"

            A color manipulation object.

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Mkm940Hr3o8-ofE9SXKA3","name":"alpha","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Color Alpha Component [0.0 .. 1.0]

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

            Color Blue Component [0 .. 255]

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

            Color Green Component [0 .. 255]

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CFzN-r7UvFTligdqsufna","name":"r","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Color Red Component [0 .. 255]

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kfcdhu8RvGj5M9W6OSic2","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":"PBN28KawvlnPcUwKEN9zj","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":"zIKpOsQZMdCpGAukJ1K_X","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":"s1lYcd3NeIHtiT4pVJAKL","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":"Axt0OP8grrRsIm2HwZGU_","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":"VX4Ro0tWxEAPnLl-YdiWA","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":"fd88MXYtS1pAWUnd1oCDx","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":"J57z2BEXyhm0Is87UChYJ","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":"QplUmnjmE9JXcvUejey35","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":"1ddRz49TsZd4bNDKGWlvb","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":"d2r9fkyPwwvo9S49WgQ7k","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":"yLNVsLL55JTxtbwbVW93i","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":"xGrt8qOZXl8wBiQO6XvW8","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":"aC38XjoyJLwgrVAYYRSo2","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":"tR70mlcdO2VE_IWMbRI6W","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":"UExMT7AYc4CVAYoJUhO5P","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":"kbLR2nK6r2fryGRJDhBLE","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":"a9yxFNIKiI2z9I4fMvbzo","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":"KqKSFLR3ia18amxOm8h_D","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":"zf3k5-Ktz5umTowvYk7KD","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":"JbPJyV1ZU-_JeBBgatBem","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":"zQyx_mg8z09JMa8Cq_KbK","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":"nO6LM7Gntkw6LBjChBT5l","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":"_X1jX5efnfJYL5Kzu17aS","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":"dh_klT4Oc8u_UE0fNVJlR","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":"WvlcgsKON32r_0gbYTtVa","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":"aHuBNFjdYWM1ZHXl0Uh1J","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":"IK_aW_wgvmovMop4EXtX6","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":"7F-rnGrJMMdcwWN3_0dRe","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":"ta-fI801NbIvm7kcIgGmh","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":"nEJVwf-cr51rEOws4rA_Z","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yGF81baTYD_-HpNEWu9PD","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"315vAvsRlI1tC5SX4DtHu","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dVL7e-XjSAlVDFspPe_qQ","name":"color","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the layer color component

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

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y7DZ_1anuU_xv5rk4K-ST","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M01Uiybp7YioAx_VG3Pcy","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":"24XmwQZ0jqZPe8tn04cze","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":"JHpAWsS-_RWJ6S8msG1Z4","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WRzK6FwS6sxwivd8uYtVH","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":"G_-eJZ8PqQkYIgsmbDGcg","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":"THmW0ilOPvEeYfDnP-Z4K","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":"ISvfoYATcAoIdo-HsVaKE","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":"0nR_sMr1DM-AAuCS-lCtZ","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":"z2NTXwIB27QjGbaa6B50f","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":"R0xo863NJTgekIZHJWjF4","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0MIRt9ffPfKf6NSt3KYfZ","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S0ab7tFR7DVmJ9CqgDA8o","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":"ok0BonSj6QVrqwFMtV4K5","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Xzls2FFB-LWshRBjHh6FC","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":"Hn8XTapVOVumtlJ05-0R_","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uKlxExMgD5yDCojli2dFl","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":"qDmtQItKM3ARCCeDpg5W_","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EcBMc-MsqhBgNzjfhD2jm","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":"SKLi-oHrDVa6g7__MWnAB","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":"o5TVi_0k4Egh9cIZsD2hM","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LYX-GXkMoDQSJ3kEXaAFD","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XrRqjuOMrEZbXvVdvg_rv","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":"c4q2sCnmqJNrp2vHfOYZu","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"32YQwbrV1g3HbMfS4e8x1","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":"mBcpnAMTyuHdLiqstSbce","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":"YGavVDFTT4wG92o0EGlyg","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":"bAf5rgxxzenL6SZHII43R","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":"JGuFhH5eO9UVMqcgUqdcQ","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":"U1OuZ2rEFPWR4q_NDF0nA","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":"mOWQAa9sQQZ03GbIswMCc","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":"zoNlyZtlFgGY7SV8J64UW","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":"owHIEdslifQEOZJlf14Lc","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":"OE9kkA5aiSwe_7JgoepZW","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":"cOBSICnJh6l662dkBwSsp","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":"3RDCV3Oq2iDlj0tqWeqJr","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":"S5jNGXlAXozhV1ebVuEpG","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":"cX53YxdJ7GpWcL5WDbp-d","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":"iatZSPRJGVyB1w-rtj6HU","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":"5IKiDGOrN1oaRxjc4Prsa","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":"myewHLFQiNHwtNwEF6q6b","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":"7rnUh1lhRDdqNmPMBUPaq","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":"MbEv_kVSfKoopAeriISWL","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ac1x2sldO-aqbAHJWfGe3","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":"1x62K2cqDXTX7-jznM8lO","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":"chYGESxaRxKWWltvMuvBC","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":"uZAAn5KSOAcNSrkhGfVa0","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":"LYPmu5keMDdu-ibNc-C_n","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":"M362qKu1x3LOOR7X23xxK","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":"5kwY3FWotI-uLN6C8ZNUk","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":"6H0GOzR5953WN4eKrTWd6","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":"pzmy8VJtzhpdqYTQEiqzy","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":"CY-iyOrZW_7JMbi1fgZiV","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":"LZpAmMJfs0YYHlqbJ_f_c","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":"ydnvlSfSoUPADvhJUCY-K","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":"d5QCaWqFHJg0hdG2v2jhX","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":"RD6Npss-PIZaBLGUf09p-","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":"5idVcOKt74bRAK_QbRBGI","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":"rvXkrIN7jlo_HKtHykfr1","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":"s4ffjzL6v1ydcTKwBabAy","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":"mtTVvQFQK24gWTCSADJz0","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":"l8qz34ARMzizWZhOpm21P","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":"c5wqlT5t2T8bTx1lzKmHq","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":"ioC9SSp_ii7gMNOwrpQZD","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":"U3fbkvKyVV_aS1MGgkZUx","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":"R4BL5phVLwnX_nDF5bqLN","name":"Compositor","brief":"","type":"ClassDoc","description":"

            A base Compositor object.

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"rlnXegrTOckckln0Pfm3v","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            an array of vertex attribute properties

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

            the shader currently used by this compositor

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

            the default shader created by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HsYPlF-JeoJVlAXvM81j_","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":"Ry9W-wBi8IrEYWpaYhFVB","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":"hHEIJifHV5Zh2NsQLNQNH","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            the vertex data buffer used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dC-ObBinoVf37z_MJLDU-","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":"ew7_w4iPln1q5Z9l7WXY6","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":"OGnkMOBM12eMRu_QeGBYv","name":"bind","brief":"

            called by the WebGL renderer when a compositor become the current one

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JFdWHXQaGlhWLdOM6J_QY","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":"hMVN-TP4aoVBx-89JAEb7","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":"OyrN2LYT90IsyJXzQhhWS","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":"2NoyOyeDC9-kmQ4RCDUFe","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":"_bbFI4jCNSEU5ksM7vo8g","name":"Container","brief":"","type":"ClassDoc","description":"

            Container represents a collection of child objects

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"rllQxDxYQ1BSqPkk50AM7","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":"9mTNEJDlPNPUC0oji_LCy","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":"_QOtwHriEGCLc1dsYGyoQ","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":"02oiQQ2LDnkIx-tdUXfVZ","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":"EnXUUTcYv4b_qyItNiuvt","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":"qFYiWQfjfx4eJICQ4qNmA","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":"LPNwipC8h63HO8iK4jrW3","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":"ZVF0XZo-ZfOttw07zWWgk","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":"AGvFpeu_RinNuWHrxB0xQ","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":"IXuAsjkWM1-1OiY64Xsxr","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":"w1FHTwnK6kUcVw9vbVKdQ","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MP2s4ynkkTL-JoZV7s2SV","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"onVo4Pzt-I3gLUra0nqTj","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mRFo-zv2gPdZf2a4eIrns","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":"uVoQP3mTfiNUH5OZZD5aH","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aMVkFrv6jozCQB5ocE0wJ","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":"F_Pn4pQLwGBAFc-a4twFO","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":"FjeK0g_zTpzuVyOpqqDqz","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":"3PoqfqWbvdLXlnreion9Q","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5bjJ4BmzN4moOmNkkR3z1","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":"U3lAsi4v9r1xIWvW-Iegi","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":"TNgGciDcbiCl7vS1mP7cY","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":"gZWSOMa4zpGfrCNb2my_z","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":"EZSZfO_rWvxvLVBhw61iw","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":"tdMBPgsD4KqJxwfajRvnU","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":"67QEZ3Ae_bgm0OuQMPXsY","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uwr93wXw6xCsWz7Zyde5V","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":"jwJ0kq-Roh_FmupqgSH75","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m2ghRA7GYsxkTO4J-ZKhv","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":"E9RIG_5UQZXZzLRovLLWn","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J4ryJeIL7XldAroX5znFF","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":"k0YRRHL7KV6NZHW_negay","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"85NRc1_gpP7TKbUa2LFZT","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            whether the container is the root of the scene

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P7lfEAHBU7uSaRVu75542","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":"DUkB2vph-TV9vtlLSXh_O","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":"5NM4hP7Z1f0E81j9zgwaj","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":"Nk1-TGF48QcZGimJ81S1N","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vSkqscUn2TM2ldHoFOYyH","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"42frC4RTn1gn8EnZuT8wc","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":"NuFQ2mhcE-iyLbeNh4vBg","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UbDb_H0Io2iMTUruItGSt","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":"TH5ih9ZGzNE4aBbyFwxmN","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":"H4ysCSxyoYlUIpriph1R4","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":"1vEFIciPeZrw9wdL03KDX","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":"7mRcJfR5SWpCej_UT5haK","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":"IcTh6-98wzwj2ls-xisJy","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":"3lGaRnhIppSudpMUtTIPM","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":"kke3N0Oby6rn69CbNymr8","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":"rg_1unX5_s33flMHDSoEm","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":"YmmTVdh_yq3QGOAnqatHQ","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":"iao7IPhALoG4W1_RHStCM","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":"JucFH20EYKHhunPNwyEKS","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":"ntfY3j9WF8dyef3wnZem7","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":"Hg0UIyZOrrzWDOuNUyWeN","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":"cywRncYzn8vtfnahU_VRY","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":"aUmZ6gBSzQb7p09L24Dwr","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":"PIRJdJS8ndSBE_sslaxfe","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":"fGmU-hyuthHE9QBrdnjDD","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":"kran_hB_k-rMgOYAo_LIL","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":"4QcyR2dAuAs46SaEACcx-","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":"wit2Z39wgST1MTVzPSV0P","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":"OifvNyKeIpR48C5uaRudw","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":"BvkxZt9uy8PZMniRZEPDk","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":"sDub-1qPA7a5JKljjeTfr","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":"otaxF4ue3SypBeMm_TLud","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":"DHWd9Pn_HawvK2AlW0xVh","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":"zS5iG3j0VHp_jGdePycXR","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":"czdIAJuIZrKkO4htqhM-f","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":"fk46D2s8TP0jjLRtMbwII","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":"UjyP25i-jgytEiM994Jhv","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":"geWtjeyau2K5t8WqObl6i","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":"myaejMbbHZP6V4r97ABYn","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":"rTXUGV2yGflqsEgNROqnq","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":"sWhO1wNf4r6qlvWFbvMEt","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":"dlCA09Bwd2DseKKErcDsG","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":"xJPVZrqIT03Odv-pLHrw8","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":"bIHe2PaZ226X6FT-iQBOK","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":"otgsmEawku3ByYT2oD7c3","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"95eK5M_WEVo8fkoJutAPn","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":"eNgq5h5Auo1rfZ-GXTM83","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":"te9eoPpK433yym0hXslUO","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":"DEgeYbu6SRNPTM6iHlS5I","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":"HGlrnqS1I9osGNr-_sJta","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":"WwmCJR5-6qqDK4txwQsY-","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":"o2-7LghZEno_AaEq3wgZG","name":"reset","brief":"

            reset the container, removing all childrens, and reseting transforms.

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sIDi-nlxCngEQRjmNL_q9","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":"u-NhEx2dEDsoz-EC4X36W","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":"RM9btngfh4Uo_O_aZ1BFa","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":"KrHxpOrxqKzf0c3savBkg","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":"Rl0YqOqnm4X8leGmPeeK4","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":"WRfo-HhhegArqpmh0-bfo","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":"HGv865OdGt1jB4AqUMBuP","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":"ZRzI3XTszXjcyyku7O3_z","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":"LaVR2CofsYwnf7tGIVL58","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":"DydlAgtkXOyIWssu-vbSB","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":"fkzUZtY82ilxVc6yRLw3i","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":"7ftVCES4d_LDgcwF6fKMu","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":"bWs-6Lxgxkm-AQOdoxkKm","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":"qQQaDIifzTc_WaUKYPMpu","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":"O1voZcYW36QwM4H2EXdpV","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":"f1Wk9cbHkIXVC7oGfaDSx","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":"g9HxrlEgqOe3rt7bWu6-X","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":"ogY21jZbbHFljCFjC6-mv","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":"Tt4gblJiMiQD1dTvvmwA6","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":"0fumJA6BsutTSVJaxfFv_","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":"fzOBPhR-Uv6_FXdrDVKXH","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":"qSOFHs24uCMnVQ9R2oO1k","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":"J3U4tALxO2pdYIpmt8dLx","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":"fXPb4QcTR7OYZLtAqe6EI","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":"HGdL01ycaEbGH2LN-gHAD","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":"0DLZYns8RW5X-fIU_dA9R","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":"Ij0MzZtt2kJxQ8XvGBa4v","name":"Draggable","brief":"","see":["DropTarget"],"type":"ClassDoc","description":"

            A Draggable base object

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"yHYxX-WPR7doT98N3UaOg","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":"I5qCWg8RdxtW9mdkpMwFd","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":"aEapBdw-lPKM80gPTYUzP","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":"yGm8r3zDQ2VqMwn6SBgVH","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":"olzUpiwjCIA5IQcldeYUm","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":"Wqq88GxBsAn2AmgKTkczl","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":"JitoXkLowsOMFSzICRbbI","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":"13AzRwydf3fpoXKQDmH0e","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-sVnvR5uDBuolYdTypUO8","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KidM2TB4h6bqVzn1DqzDQ","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":"yWzBtFIvA3yxMcwFPIpLZ","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":"6U-UqN-Ue8zqy8m7HS1dV","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OwzpMMPKz-tOahIM207tB","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":"C4x8W0ecezJ9OibBKL_5T","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":"ATDj_xhltdO_Arh77h6k0","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":"fIpm7jVjo3NrN3cbUb9xA","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":"3F6_Mv2WPIa8cBq8idoLC","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":"4w2Liamz7Dzc1hSL9kmmf","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":"j4B5UcP1phUyj936ORisl","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bfWDqjlwNpn7V9r28FyQl","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":"bbzY7edZ4xkwJ-Fv21WJP","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lWihuJksnNRWtifDQ07oN","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":"7cXtJnBtmzzjgRFi4MURE","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"T8gvl_TTwIMCat3pG0mpV","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":"pGyVJPZUM-5tyM4BDNFzk","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P1-nKOdQBMB45LoZb34BI","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"10qm1OGCmtxUFrz2ymRcb","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":"tLQiZ9BwT_8MYpQwUlol1","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":"TApgs5xy-hi3tK7DWYWAH","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VPAKONWqASslKp-SRYLEW","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z85K51r7SFytBVv8HNhpP","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":"6A_5WEKNyzLw3tHT5eou4","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qcDBOQs9A2LlnoLeql29k","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":"MKHxdhj8dxnTTqgst-Ptz","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":"ldLnaj2GHhwXWALuPZfN3","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":"WRzHFvefDh3G14UfTD9fC","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":"h14qmfVLNQkAgYZllz6N0","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-bpuBqzdUygvogQaTt7X","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":"psz33xohDP2IbaSx2dkJl","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":"D9lV32UVoSznRtWX8DmwF","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":"vXJXKjyaVHek663KJohaX","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":"cmAzfR9cU1nOoW5B63vQk","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":"bkZWgcBKCtEXjYarS94hI","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":"tj-iU8-ZtZUbZWLsjGL2Q","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":"Oc0yYERc49E3p35O1sTL3","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":"onEooiq7zayWlNS6ucOKS","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":"GfslXa28xD0BVCXik2aWo","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":"T4Du_37NhvSix1lp03ruQ","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":"hzgL0E0Nt6--9z3gbNBCO","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":"pyVREKbsKseOisBjnqLDw","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":"YI69ORCycPxVHrWL7IbAh","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":"K3POFm6ed0TSeidyURV0s","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":"TiYNdltK5GlVTQjf9t0-D","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":"W7nNKh3evw_HhsD1JvafR","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":"lnep-osUxc9fsRB30vjCy","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XNXQpeTTL_t_7PFPJkx20","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":"eeJiWppCih25EWxB5DJRR","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":"DTG_RxV9tRVbRRrmcLvnD","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":"1tGuqp6t4GHiL737UcljM","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":"x26VMCaA5D3SMCDFPzpeA","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":"abCzMvkxmYP1g4dHxjYk7","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":"mmTPqvWuGI3kmqTB-HF8I","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":"emFiXhlfVhPRG93hvneae","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":"mcGLNomcpRmF0cjaIM2jW","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":"SfWMh1kjHn46IELPTxyTG","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":"lgMTYRH65hZJ6PLTeSHI_","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":"QrVxn9vjbaL14EWKppWde","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":"vtANGTKftIdgzboaRPrmA","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":"rFLhMV5iqpJNofb1ZTBDf","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":"lI33wwBI4-sGlYUvWY7hR","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":"EZ_HRPGYcsdkAQjHY64s-","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":"bLexl-c7VVYSJg2-w4Fuo","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":"uQ8Z4qmROrqIDF0_Q6UYo","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":"DAYCNuuK40nidmBrMAMdD","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":"htUFdI7NYAQ3ZarltcZmI","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":"b8mpBhsSayWpiw07Tx2H_","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":"U5W8HBDKmaf9BeM-Z3PY2","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":"NWmtJX4sCCM04x5xl7XlR","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":"X0f-E3bEK-MH1G7ct_-Gh","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            dead/living state of the entity
            \ndefault value : true

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rB5h_IjyjUplSMg5bSojW","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":"kuIfI8oUEx4RXwlTlJtxo","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":"ShSzTgflYsY2noAduLPMG","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":"cjJm7q_zbtaTcndIhjvhL","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":"cgOff_aaBrGUwd9z2vW0o","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":"AiRZOXU9eKjzohM193uqu","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":"q9DKM1-L5UvY8MdeZMuJC","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the entity body object

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

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qVsQsqErDyus1J4r-PKpK","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3ZF0IOnvCXWH_qXq0loCR","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9solcg4FbONDr3FlL3Lud","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QkEhJtGl_5amzmeGLGY6e","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":"o5ov03TTNEeV7sJAbyhpD","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":"OzEaeS3Zu6F8S4bmBc9ae","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VJ7Co9vo0fC-dcgI_cejj","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object unique ID (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wKRptxyveEwW7i4eeFN9x","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":"A6x7xvTusutPDHldx6w4A","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":"mBwEypMgIFVZjeLk8dTi3","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":"XDSIGr9RRXoqvYun-BSv4","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":"YoKFMKx9kz3YZ1GloO318","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":"EHzX1R5QjAeyK6Ksx5qhr","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":"7rq6FHwwzCXuyAX9Tft_w","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VE5OR-0mdW9eNfTi0bxlf","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":"hPefZjdOr-VWTKtmoP0nF","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XPTOT_lijJx9w9S9phaUd","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":"fA5WiV3bgLUeHCX1j2p-c","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qG3eaqQZhytUA09FcUXQ9","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":"d83vjRB_CzpEQR0aqFTL6","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G1OjoFi6RukSVFcgrCxhr","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":"J8kMPpkHoiVAVlrGBytzz","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QPiF2eaEclClpxFcBZezw","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":"TiaTLUcQavCxo_CLfesMm","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":"v36xgtzaTpFkDIOi6vaFl","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

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

            object type (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l7zx80DJW7CshQimElJHq","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":"tGTIuUcnOGvC__-nxRF5M","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BdzjR_8cylHdCee1BeisH","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":"23gJukOA7Lk_1zKLWvg0x","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":"guC9drXJovUZAz4-wy2_W","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":"pLt0Mt6NwoUB9OonhVI6M","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":"24jUzyosfa60SuqdfBOYB","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":"v9bf9AsS_aTBnbhF71h6g","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":"sb3eiJHaInqpkuwAJ4PtT","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":"imdCryTYMnPt98ub8_E1J","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":"zVle7xHCW_NPfXPZ7rcW9","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":"HfmXL7Lgs0e5EKqPJGIFy","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":"jgNJY9EMU0xOvUOGw0Uy3","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":"iQs43YkiuOak-biAyGRfq","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":"5Iv2rqdjdzIiqyMZxO9Ir","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":"2wMOrYXeMGMC55A3HY8rA","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":"8q8P7CmnAW1GrYCK-nlYC","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":"JhOL5YVZjYY1OGtaUntDl","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":"Vk-GDNSZPOdaQyMIfcdUM","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":"OBQW9j6ua3hLnmG2eYvCe","name":"onBodyUpdate","brief":"

            update the bounds when the body is modified

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xoZpUI5kU3k5NL-EuucLN","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":"_Y0UQY6KvrnHnsHXUfHgN","name":"onDeactivateEvent","brief":"

            onDeactivateEvent Notification function

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cxu7aAclGD9HBMlYrPdxz","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uegicD7FJaDUxUX2vphVc","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":"typnExpPdK3CFd0-TazBa","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":"4vu0YVeDCVlOOdczxYd5j","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":"WEehJERfpUrFLypIjIbfD","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":"Hzn9NImKU_pXQNQcYeoZn","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":"8ZtcMvSkl6uUsVZBLDzjO","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":"wlp_ZRG7pSQIALBggDU3Y","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":"HNf9-DcbVFUbNFH_SppTl","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":"HCKisONSVpkI6LyYZ5t0Q","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":"_iwW8t1684GdhmqXwP6LW","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":"hirkQDLvmZDJTd7GWJGnQ","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":"b9NxbsZJcWnMGjQoa-gjK","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":"nY4aNHfQ2Mrq6c3K69RQh","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":"pM59NLyTMangYQkTn-5nr","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":"Zqt_jzzOHEF7lRH4BuUNQ","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":"YD_n78VB65ryYj1x3fqXw","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":"Vx2Uzs8PSFEpfbAKynEGZ","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":"sZC3Mb5tbsVpTalOme8DU","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":"FrTD3qOk8sWZGX5Kl17Kr","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":"Lcy-y69-8v7TzDM1r5ybV","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":"ckOxZXF5RRXLqMc253hk9","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":"-geiKSgQUREhhkAlNTj4z","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":"zyyuS_12avGi1P9m7djt4","name":"DropTarget","brief":"","see":["Draggable"],"type":"ClassDoc","description":"

            a base drop target object

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"LR7QRIAwma0es9XWVjdLx","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":"ZXypN5lC33_kF5OObp6TT","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":"i2nEV8Pi7ukkagPzQElT9","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":"uZI34lhVvzPAW4ZqdP1Nz","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":"CwkO_Y2LuipUCnuImvspS","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":"8hyOTnjdN2lHIxJ8yPJlE","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":"a5O_oIRyAwJ2iFvrAwJDG","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":"N4vfzNTwbtWIFTQlYeWcx","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZLvksZ85OPeavIHHo0Iat","name":"checkMethod","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

            the checkmethod we want to use

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z6IhL7WD1LvcMICOc6YGX","name":"CHECKMETHOD_CONTAINS","brief":"","access":"public","defaultValue":"\"contains\"","scope":"instance","type":"PropertyDoc","description":"

            constant for the contains method

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wlKrsLvgi3YZkWk09CUJX","name":"CHECKMETHOD_OVERLAP","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

            constant for the overlaps method

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

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ksKrVLZ9i9Jm74Rr1Vkjj","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":"OBVrp4RsTFBfNhkZMFrVG","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":"LGiq0z7Yj_t9Ph_d7VVIQ","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9AEjPEVSDNZJXKyq3EJex","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":"2rASH3pkss8aYu0kqM178","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":"Q_ehA7p4RbrHNHx3sF0IP","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":"fbPGc5VdR_t5KvZUG4IQh","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":"-2VmTc_0cuOtogrxYt5Hc","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":"s1P27cOyK94BDCgggcdV_","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":"KoohN96eZYEaEhg_AdJoL","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JftjSkmaNiPYCwSo1KnoS","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":"qxiXgQRRkr4zDEB2rSMJC","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3BIU6pSM5jd5FAYCgOFK-","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":"JUATs-P2OvhLettAna7zh","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lSTBIqwpjkRU2lm8A_GGv","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":"vPc0dB4hNzgyRbqfeCj2h","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fnZmd9yArN_Za-pNApAzV","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":"U58lPHdv69GP5cx7lq3Va","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":"7bP-_eeKvUgsw5TU0HI1K","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YgF1WwRVsVCTERcwgcbth","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PJrKg104TcEFfiQKhs8Rp","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":"G7XgYlh3m03zLre9DZ-c1","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JqZ0WPQFonKMi08E0VFYh","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":"IcCiedCkz5aqRaPeeo48H","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":"l8mtx8K44CfJMrvThk0uK","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":"9DVQdWiDFKv5jz0xOEigQ","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":"RbeOMuGE8mujlMoZS7fvu","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":"8xB9lGeO-RLZRqDYENvy4","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":"iHnRhMgMSXXirChD0D0_X","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":"VgNBbKa1lU6M8Ue2qcrgA","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":"yFfmynUZ64TJqRhDFY5ob","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":"1Mh98r2Hh_vKYozk6TRcz","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":"2FmGKnApXzfOY6eLmyRyp","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":"E3gdaB_-FpzjFDkCK2phA","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":"PKg9A3_YmICuZKIipowz7","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":"VfnZbf6iBGYRyxCkb_2we","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":"LCz5E8ocSHV98Pw9Sdu83","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":"UH6z04RlMTrTpx6BjCrSi","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":"s7QQYE6YMUWRBBlHYn9VZ","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":"jCA9Ky-7L5OFL7_f3BER4","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":"1YxnqM2UP0H-Pw0_hDQTP","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":"UcWMvQGQMQwFb155SRNu3","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":"Q6qcgpDMQ9hxWoWeX0n3y","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":"GLly3wjry-npbbP-xhFdI","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QfE8v4ts5hu6Hk7QsFukB","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":"P0In71SRNqTug2DiuSXFC","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":"qnIna18pG_NQFkVb5r2_f","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":"C3YLuvOi9PXK1LkrXmaD3","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":"DxyV44WxdGxpq6bBoL7hf","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":"t9wQv46xaKC_Gb4_4TDR2","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":"7S4kbDxDtwBfKOmjabatJ","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":"1JYVnmBCinjAEvpfAwFns","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":"3hwUdinAVbMaAjASvR3_8","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":"LpUDL6wYjP11W4rCmVMhJ","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":"1McBkNyWGyfOMWX15a5KT","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":"faDuPlHnadee5ErAVn8n5","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":"7MDAy_tad9jGk0hSFXxTN","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":"Do-T1PAL6otEgHBa-dp_W","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":"E2obSBBmEFEl5fH35_-pK","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":"YoHxFQ5HxiQxaEynrgRvs","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":"0vwA65hTlX820Z4SB9tO-","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":"_X5xhHk7-3k64Nfyp22AR","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":"4PbltIj2siCKgZVltuLtY","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":"BY0RpjKDj_vulyJm2eSwJ","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":"TizbS-HEcBfYHtbjbWG-3","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":"qt81IeX53_XpFliYeXMF1","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":"_S9PJwzpEENsqyN4d99PH","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":"z6CzsfNZjQCDKY7vJXQhK","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            dead/living state of the entity
            \ndefault value : true

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WClI3mT-xf7kKun8-Md_z","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":"oP9VPqeu6jrBV4bPFVaaP","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":"bpZKekF6RqN7aOx9v0Dv8","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":"60l2U89QCimJuqOW6Vgh6","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":"ejWB_YVp-kv0d4jujbEXS","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":"IS15z6VDjpHfgw1N1TUxb","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":"UFn1_0P5cqbjJ3rTZSQ2G","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the entity body object

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

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1btXSNLOC7m97pRGUCsS0","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XDWy-xElDDruqqywj2UqX","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fEVC-kF3GwMItXPlRvyvh","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":"Ki2YLBkg-YcLthhNGwAR_","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":"tK3E0vKAjhIYULGBSPEOH","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

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

            object unique ID (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rtPIiyHhuZXcH2OIRyUYv","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":"Recqj5H_rhiCd4dIgUDCM","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":"jEbNOwMb1gJB_vTHLpwqP","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":"4g4_V2WDZoSzJb1Y-zKaN","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":"hrcTOK-HZkiMzF4fMYULE","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":"V9kDJi7V_ysp9pfteCEoX","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":"FILSHTP2baOmCBpnKFGHI","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qQFIYVrGUVEgcFuu9yNhh","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":"wN-qY7n4KR2G13-CqWqZO","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mg4i1rT_5PMNQ15ga7Yck","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":"28q8h8CSUmavez8symN84","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"E0cRp13ApnjAxPuYCE0pj","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":"6FQfBTxSbIxKbfXBnjPsU","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bqda7QRSmHx3i_Yo1w9CV","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":"JGN2a2dwD_5-0-S-D6BeB","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3Ni39tuwryumWpdikDERT","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":"cxnnx26_NlScsVc2Q4fIR","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":"BTYdzAIzsTLqwxIiawd8Z","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

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

            object type (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EUHCw0l5WL-ADZkFh_Mhe","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_OfQ1vwKFy7iR-7yD1Is","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SC3lw0-qLtG5JZ3z1MEv_","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":"Ng8m_dg_vcTYDGwyMBoz4","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":"EyV5G5fMKfTv5qjlN22l_","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":"KoMvTMB2qSdaR0OQ0HvC3","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":"blLE1BbSpHzDdrlmJERgr","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":"qFNSwiwM21f1Scp8dwmgM","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":"CWf-l42iL4ZUd6M2IWsy9","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":"Co-Oplft0dE_Q6ngNnqBI","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":"i_lnmq1XpF_BJzZts2tA0","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":"a-DAqURK7QmWoT2I2ij9e","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":"GAgbfD5Bs0KKFr32NNJSQ","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":"i0hZNfN24vhZ3I4G-uaEb","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":"F4VDEd5qoORvlfTsSOMLN","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":"4j6OxFnnDqOlkfZd3_TY1","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":"0F9LyajbTPm8PtnRAtDsg","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":"mgw0EfhIwUuqj-P9HeMtw","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":"3DxBZj997Xfac9v3h80ZM","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":"bm-e5OObuHB4dgOwZ64zO","name":"onBodyUpdate","brief":"

            update the bounds when the body is modified

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b0vCz46KW21Mq9FJMvY6c","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":"zZ1ghXYQhxtri_ABVigUD","name":"onDeactivateEvent","brief":"

            onDeactivateEvent Notification function

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9eRHWILfFqHckx5UzPt57","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UC588UO28xxcBXD1h2NPj","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":"RhRuECjGdXfNCkEj0nQ0G","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":"2gdlr_dbM8bxjLyeBT8lh","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":"kctN8D4sr38nQoo-eM9aw","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":"GLtTIMSjQTH-L4S4OtRrl","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":"qUiS8qbG5DC4zjCDPw1m6","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":"ejbJ132YicImzwHX0I-6Q","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":"aif5trUck0X1EtyuEOebN","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":"ugyAI2UojhnJ8FONPpDDU","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":"FuN0u7hHpSsb-erBHZhLN","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":"IkitorPlCKU_DMwMA_Du0","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":"zjDC-oqBwDvaWmHrWk862","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":"shfTsiRcAA-VjOl_2paBU","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":"r_aW1asspgvMpZ4QorlLS","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":"zTKxjSoX4Prlb54-T2cHk","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":"rTBTs6mbtANgd6-pwQ5ti","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":"co2dVJFcliFxlE39Ap9Cu","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":"nb3q3MR5VeOdxsRLKe7ts","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":"9ndDTnFdRX9SkXdFL2ffP","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":"JawdpSgm6YEjdTCS9-QZj","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":"i-StHkwH928JDbUWqbRug","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":"4rCptvFcIisMOwxJVy04a","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":"jjt0AZ9S7f4aVGNbfQDUl","name":"Ellipse","brief":"","type":"ClassDoc","description":"

            an ellipse Object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"zdiO33Gzu6GBoQWGRf5vW","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the center coordinates of the ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gHXDj0yxJpwap_OR7nemf","name":"radius","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Maximum radius of the ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8SJ10J8LTxA9bjrUyvpBa","name":"radiusSq","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Radius squared, for pythagorean theorom

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HVaKb1V-20z9jqRQ462Lm","name":"radiusV","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Pre-scaled radius vector for ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PPM1LHglvMkGe9NHoFgEo","name":"ratio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            x/y scaling ratio for ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q0G6Wtl3rqDQG7yeN_0G0","name":"type","brief":"","defaultValue":"\"Ellipse\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eGbHAe2SicJdPfdNRCZgh","name":"_bounds","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

            The bounding rectangle for this shape

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TGrg2wvqBnJ0rfKXaDQY6","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":"_Iosc5HkbQPUBBBI1f-Qc","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":"3rN-MfZIvh9E098wy5doz","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","optional":false,"variadic":true,"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":"xbJNaKMJz1dNGLM2cnVT7","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":"Cr-62zzt6U9SvrnMpP-lw","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":"Ma_tTY3Ko5C8FX43Iculk","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":"2lwg3H68K5jy1IcADS6gE","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":"c9ln4g0Nq6Xfg1_dxpUN9","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":"4xM7TfyL5YcicsaqBOfX3","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":"y1Rfz9igxSc9bmx3Sif3j","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":"GCUklxAJPkSco91e99twM","name":"Entity","brief":"","type":"ClassDoc","description":"

            a Generic Object Entity

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"5R__NFxY72cpQMMt4BYOo","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            dead/living state of the entity
            \ndefault value : true

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9nEKmixGktJ-FTiaaHSfK","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":"Bfz6EItb6HnLdsSz6lPBT","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":"Jnn2ALMpI3wrcGXTLFZv_","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":"_oo_SVoxwxgnN0R3j8-ZD","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":"Xn-qae_zdxHGZ-uMQr5rx","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":"xup7pIkW_YX_oR6xVndE3","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":"LkK_Y6lLoa8BvqceP1BOi","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the entity body object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2TAeg0xL0uLBtL6XG0BPH","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XnrCPrW_R_F-SM2h8hAQQ","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

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

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VQ1a6qEp8_Kw6En4Mi23O","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":"unB0Cvn2FQHcXGbX7AVsz","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":"RDO4K1NEMDSXvy0hQfbik","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iSNn-8P9aQSlqQH5UE4_w","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object unique ID (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gY7ateiNIS6xJcSEDIB1C","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":"vW9ns0ixaizMSdap8u_NT","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":"01KyFrdMLQjJwlDZZqRf0","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":"G7-kPbHlJnHIKQ3T5HUgi","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":"wPqHQfq-o0kJm6KuFGlK2","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":"QP4NoG7SogtH5XoX-IWBE","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":"YA3YaZGsMj7NO0M5qL4jg","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w--lWw2ai57k4v3_ZrTxy","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r_aTEaY8PlY_aYKP0O1d4","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":"CIzhDGHatGumdpQk8d3au","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nRjAzCiDp-I3x3-SJTZrf","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":"hZc7CmuPVwHjAw1Wrmn4c","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6OeoKrlCpZ1JiZSyLs1-7","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":"Vc7yKAs_OAgG0BLrKb6fw","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CHJvOpsLB4ui3P2tgZdBf","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":"qU5fZDcAhzKY4awllH17B","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sIWfs8seyM24UXDnJbSUU","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":"PpcbcbO6C38hjnti7Seei","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":"JXKPylR0iCIL1fFiJP_Dq","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

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

            object type (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yaRu2isVw5-IBl-7RlK1v","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":"htsZ3lHushinOVR6l2_Ll","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VephsQnece7GmmlpvOAYL","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":"Bd1s18VlpL0zE6yw05jeQ","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":"UfObQDrndomOn6MN7j95G","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":"ltCUpbUbKJYXe49aOclin","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":"Jicd_tcSIzYGxnQHsP9wO","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":"ywTxF0P-zOfR27kAscGm4","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":"bGsVq-xgHBEMeYYirEqR4","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":"3Rh1duFUcmx82Axf97NHN","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":"5HwwpD6WtmnNZM0E0OZen","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":"q2xu_3bxp6JYHhn5EdeDk","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":"saZtxHA6Pw3GhY7NRX3ed","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":"kI_njGmad3AJJmZsTRkhK","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":"f8PRDxn83zXOsagydXbVW","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":"mcZ8z3qtHlPoSRRKQ2g6f","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":"SAKyjpwj9zx3wxSgFNYG9","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":"HFR9wzuiWXrfRkGNZi-PK","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":"iC8BBz2QgRth_UcB3NqNX","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":"SdcqIUx3pZuh6mWOwIzda","name":"onBodyUpdate","brief":"

            update the bounds when the body is modified

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dPw5udQFSY64qvmNCcv7f","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":"jbHB3ej4OqSMA4tC7Ofzj","name":"onDeactivateEvent","brief":"

            onDeactivateEvent Notification function

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WuwtG7BdEzLRy5N-3AVqk","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oUsLsdH7dbnwRrqANjeXA","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":"9W6K89xZHHsGIJQ31Kezd","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":"T-_S3PFxbh44QrixnSd12","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":"rKgN3ffSWGrD_wIUK_6MN","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":"jZ4lDCNWPtIg4gzEslAVg","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":"f-2tc1JI94RinMtdpEKmo","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":"lks14itaNYlXWDWXozo50","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":"NKbSLNAVnAWG7AAHkLS-i","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":"blxbJjpSZgN32D81yMcBx","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":"12lR8sjfSBIQqKM030eOf","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":"X6DbNkS7Fs_xeFaWFmYml","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":"Rsg8iXgGHUWC7DnPUHSnY","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":"h3ThN9EVwl11J0xAMPkkj","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":"BRLJMD8VZF8d407DmCdZc","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":"DG4CwGex2aMTuZTWYhJ4_","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":"RWDewRro_LePMTQVpiDz7","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":"73mW-YKhMxtzaUq3aMTEZ","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":"P_1YEPE9xNXECBLYAPzQv","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":"U6PEESo57VbSQ5QSF6s6g","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":"VPl8nCjXHpDjsmX45hkQM","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":"Rpa_3FXyyZePHgC5BAnAT","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":"z6Qhwz22fBOtiIq2HqKAu","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_nHr46I8KuCNzQVTiD9M","name":"GLShader","brief":"","type":"ClassDoc","description":"

            a base GL Shader object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Zh2b5M41kaShnmFx4Acv1","name":"attributes","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the location attributes of the shader

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

            the fragment shader source code

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

            the active gl rendering context

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4XD4fgUHDVWkvYT-cdLPG","name":"program","brief":"","scope":"instance","type":"PropertyDoc","description":"

            a reference to the shader program (once compiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"475zYEezmHL_Zj1F1qwYU","name":"uniforms","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the uniforms of the shader

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l-7hO-sE-2mHwWOHJVnFe","name":"vertex","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the vertex shader source code

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yghb2XFTcEhDsO1Mzxz0R","name":"bind","brief":"

            Installs this shader program as part of current rendering state

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lfrMKhufG9LHx2mR1hrPF","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":"_an2EEp-z2ryFYOqwc9VR","name":"destroy","brief":"

            destroy this shader objects resources (program, attributes, uniforms)

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2LBlDbpRB21NLYN9-cGU1","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":"xciT840ZZlMNP5wYgT8Rv","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":"r89WjgtaOWSrBbz1lDnay","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":"xy7h7gFNhl-qKes420UBs","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":"OCTjKV6Dhmnk7UxD89W0_","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":"KeGilaXlN4Xp8vrfF9T2Z","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":"FRjEHRQj3v_Zagq8MWXQH","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":"ymOqaNvza6jBd3Asy7x_F","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":"sDkgmP5l5wPaoD8JzD877","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nH7X9xpLsGGtvguZbMIK7","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FpgzLCJB89NwiGuRr6KlI","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":"zG521LLqo9ZPR2sCMAufw","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":"bGrvijjxqVQhy9yNb3pc9","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":"fHIY_vH0--Z_nmiJcEcFy","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

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

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GO3z3sEJYbc5M5hOqe33V","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":"epOk2ZjkzdQuG3NSIRbwO","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":"t0ITKB1FT7jWVikq3fuvU","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"758jzM0xlgrX9rZ5i6_xX","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":"0ZiElb54V6aAQ0UdZCv4H","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":"CWaKLd6Vx3g48mdyr8--a","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":"nJhh8ApqkywFFkXtpty73","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":"rP4oNwdsnFSBsulFNgXyv","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":"-uG1FtL-dEeva-CdS6AhD","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":"yhyyFxzvveFwS3uoZHUdS","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XWQDp98c9pCfd-lHKFLMR","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"97Hz9FX4oQqIcVouDqbOJ","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":"I8nufOr6CXjhUuyvTO6HW","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6I6C3w5KaoCXlO71mmoMB","name":"offset","brief":"","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":"05Duq_3sKroWeEHuY289k","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":"QdksfsLsoUkB2CsK7FKXo","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J0FuhJAG2HuX8TnkSLtPv","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":"IrF8Wu9bIFXyoQU0XfHLk","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SWHvJIlW-zbIrhoeKw47l","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ui8zCM_F_pgbYO_YyBPP1","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":"1B4GmhDJqjnXtL4ttXDjT","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DLrumSBXbY7G9eBQrZ61n","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":"yOJAy2ZLd98PbGbwPQYIf","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wY-4irn5RNoLkovUDefxF","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nuE2ed-cGa4AcDysqKPxP","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":"flgYttSAb2JmHfvCYdhNU","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hFzpc86z6tJAA9DKvn_ab","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 defining 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":"PSUTUZKre8E56BeVO1Otb","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":"nefq3KXV12g8bgq7lMwBy","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":"TolMiSw01gbuClbpRU_Xd","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":"L4YrNfcdiSkYmDpiUjOD3","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":"kyiJ6qHyCG0_S8N1Le_9Q","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":"rT1S0MmCrA084GEs0Ob_8","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":"E-r3IHm7CIjYtc4vkPJeZ","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":"bA9LoMdgEdXK9Z2AyRiKj","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":"eGjH7iVKHf18sNkevz8AW","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":"c-k2upp46zvEofbCyBIpc","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":"oPtpTVdSp2Ws08ZwTnp8D","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":"sOoO08ZtvvMoWAOUP-NF9","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":"fwM6zrG0oAarQ4Uwxcire","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":"2cyjPEHqDhreL7ntOMJUx","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":"RaljX80xMpD1wW3MiF94N","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":"CWAsPFe3-C--GHDDZ97xT","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":"qft371G4IpqXAtk9hzWFZ","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":"fGF05bEVaNN4J1bgJdrLN","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":"iaBSDvnM6fy_D3l_VLmKZ","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":"uAh8CvL7GJXHKCxOEzxv0","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":"TJEx7gfW298qmGg8DuPJt","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":"O25c80X5lDn15fXil2lqr","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":"vNBhyJ6_YaM6KmJ0ETZJu","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GShVyGBLZTw8E3gnLkRDy","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":"27e_Oa7pqz9heUWfUozoM","name":"pause","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YQo-dcR3xk2X3qGVFsK47","name":"play","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZTS_AkqFrrsq19PszZAnH","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":"lxqwtslMhmfDpW0Wze5Ru","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":"1SKLXX_JtxuLMQEunjVOo","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":"faWD36I4HHdrnzh6pXEeT","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":"E4rw_pqNW9u_ZOk5u8X6H","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":"hWJ3gLE9V-qSrDmk_LkuJ","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":"_1g7OgvNxNpDDevjpgYOW","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":"V5gTLVv7tJ23y5au2nbI_","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":"OyQMEefloVBTCZJAjctDe","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":"WMXbh9NjXNO-19HakMxoz","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":"7S9otkzROGvLIV-LgaPj6","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":"JwQikn_AyEhof32Q-L92g","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":"WTAUekPnywgTnT8t9XJdJ","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":"ExdzODomRxQ-C5UQ6ttYe","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":"hRlH79HPLBooAgdnVOHYR","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":"s8e11_LeX7DiOHGEEIb2k","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":"prcSEOHAtytV41B_PEEz4","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":"RdxYdPhx4EbtVNUQ2YF2Q","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":"PUL1ZwjYhRsP8m5BVyuat","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":"9N0APCA3ebdvsmRT9C_Zk","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":"FAbQYdMzOGylwCpA6yC9k","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":"ojiNmbCv-wiiNwjXhUrDg","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":"6gnSZUZzd5HDbCu9jP6mV","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":"em2XEy_JAI7XwnXGbh0KD","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":"yrOSFeQc7CsNSVFknwpuC","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":"6gfcfdYxFgN9nFhB6DwVT","name":"ImageLayer","brief":"","type":"ClassDoc","description":"

            a generic Image Layer Object

            ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"EFXo9ovozY51rMt8zR6g4","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":"XxQ9kSwB3XGrH8tIA-_eS","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":"akrKCsAY6c5uqE9hVZeTN","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":"5yCODTU9zGzxNYhxf3S6N","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":"GfewFo0tunKg2HgORP1dP","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s9umQ7mTz2j-NeOYyo2K7","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ki5AW0McWUqTFgrJ42Az_","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":"8T1K6RRYR5WLmtCp9K3NQ","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":"sHDV5k58N9RHCeMMP9SNm","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":"uPj6LEak3B1rnp8c22r45","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6XW7MtPy1iU7-hjMcEIR9","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LHqwQyJK7fM-QODROklrI","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

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

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RYPfW-LGj1DD3-BEmh7C7","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":"hZCpluRy353nGCdZZ63Tz","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":"9WsGlyCquqo_ARwrlQsbK","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MrleV58YcMTWJscg7JZVs","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":"5U4U9Iw57Mic8UyoDAII1","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":"CbNiMDDkeNksyF3bA9ly7","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":"qKer9ZbGI_hw4CHsWDmBD","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":"FBZqmmXJJxeadlPRtqin8","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":"es7aTdaoGgTio3t-KHCRs","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":"DZNjTK7FJFvzBlziUBLyf","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z92Ws1Ve46FLEadcPQMnL","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NjcTl385bI6RaPE0Dfsh_","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":"SpOJrbhKzCEZt0GxJ5xnT","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UgBKyAXKbI-35CudZ8lkZ","name":"offset","brief":"","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":"tkME3Hps9gISWFyThlMzs","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":"Od7P0471WneFUi3hVlILR","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4QNtKY84WuWitZ1sPDyiy","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":"YAVuzmyqmcbMWkhm67938","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DLSbfB3O4OCmtSMLf7RGO","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":"cli_3OGnOY-dEtiGmQYuS","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":"SPmtEEYuXoGpUiA5O-XRv","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mD58YCFZyvq6BMuYR_DzJ","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":"nnXCI7jgGiwEtxmjTlUBI","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Soc9KAZDndSQL91mn5e07","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":"gfdoGmByEJLN4n6KF20Xu","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zx6CejVhHYvz-7vZKNujn","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Eut23WQotWhBZEjCCuy3l","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":"r00hVKsMoJFwuM48LDur0","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9gs-2RjVkdH94tcK_ncKM","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 defining 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":"4iAIWUIJ6UsKlDQsp_AIL","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":"jN5-O3AHyEc8uBqR1GUNF","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":"f0tIHxAT-ogzZ4HYf_AXa","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":"SizAfukPtSiU5eKPxfdBL","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":"K685VdLFNyfA28VcSONCV","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":"axwBnxIBjmLsXNHMa8w3E","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":"qRu78sVeldLIw_hH4X3iG","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":"7zSPblT19oCftXD0ofj6U","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":"oVwMXtcxlDT447THYZPau","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":"HGT4JGYQbZfE95Ut_G8O7","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":"Zk7DtRFLrGMJZ2rWWDg2x","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":"R1Rphn9UKVVMooAvGAYFE","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":"FK1JjyjhXVTDl-jfJOj-Z","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":"9S4uoQd2QA1JVWucOH5xN","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":"oc6vDHerhyn_huaFCvKGY","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":"O971OCydN8gXelCuyopN7","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":"wMVPJwQZJw_vtYTd3IYnD","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":"j8_IbgYlou8rbbr9rfv3U","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":"3SkMub46E56d1YGWuTCyP","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":"thrheaD8kD0weaHoz5b3N","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":"suwcnSdOL3hlVDTTi__mr","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":"CYPekHQKdLNIC7FNLPdrI","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":"15OQ7QA8QOuKtj1QuuCbP","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T4bbLQxFiesFYCo3k2uJm","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":"M1vaUpn71e6daRJH0eKdU","name":"pause","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2dXxa6EVXxXFwJKY-Zew3","name":"play","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xa1BuJ3zThNBudAi5mpbW","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":"Tmd1-5pH85BMpkEGp2DeH","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":"gbUCO6Yr008euvqj9euPB","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":"fdGeBTHZnO3q6tChDt08n","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":"287hu9yaqihRFGFK7r3uG","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":"pfBOZSANvzbdHEFQgjkuV","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":"e-YasRfWtzJFVTb94WY8D","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":"yoDugl8Iwgw-hGzenACef","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":"6UsKFDa5waT-YFCNl-_5S","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":"Ylw0Nh0TbHiH1etT5qWWv","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":"C896KCGfzP9QEZRjFVbeK","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":"QWWRX2AJ6eSB09AlzMP-I","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":"pzbRTswiyxYYblYObmIbv","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":"rWh6-4op-VgvZAJd14sA4","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":"6Vluytps3FY9uKpB__thh","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":"aDMY-jyTZ0BMcjUmh5wiI","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":"vuUnw5Z6klKfjiThVk-nz","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":"wdGAejeRJz-sfXk8gQ0Wi","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":"OrtzrHkhFG_WwRoRryRJ0","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":"0_vb2QaPrVdOtKAblMW4B","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":"-Bm63BT2arB-JQ072ciIv","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":"YZV1EFaPUxPIXnA3UndtT","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":"fO77RvaVSeLUMZx0ANTiW","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":"19QcLSEe60tezQc90bQut","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":"cr8PDHlKa3DAGApZ3tzF6","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":"WdCfry3aitHMGX6pxPheE","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":"vAORPJgF6rb_34L1cEBtO","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":"C-nypnvEJb9aI2U8ZDMY4","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":"FhudbGJ67JoT7lB2KQaW2","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":"9_VVO6UtsxzIz3VrJLXg9","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":"wFDNglAIITVwH3Xionw0A","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":"-pJLcNww9jIo9x458tgXg","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":"2f1aWe4j76-CZKKejYMwy","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":"ufPJUTDBOqm5PkLtboAYL","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h5LML6G-Lkj44f6lf5e_8","name":"color","brief":"","defaultValue":"\"#FFF\"","scope":"instance","type":"PropertyDoc","description":"

            the color of the light

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

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KGfjdtXETc7s3E6xfVAGV","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":"lXXDicrxxdqjApbAqVBcl","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":"GEn69DF0WiGFmdmPQg2gC","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x5eHJAE6hkK3quDJDZm-X","name":"intensity","brief":"","defaultValue":"0.7","scope":"instance","type":"PropertyDoc","description":"

            The intensity of the light

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"afZjtmNVyNqPC7eGhTcf6","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":"cKMG842AXWbD69qvOiPEX","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":"R4UuiyaFsGoUAgy8mlhWl","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":"ZZKNrPgwWnBPnzmILLk6o","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":"vwhSkmyaxUZJ-e23BYWd_","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":"Goy1-4J4pUoOAkAzhU7xh","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":"qSFGy_9_e-hlznECF_HMW","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"On3a26jKauvC2y3u-eRXu","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YnnEGE6E6gJXPVVlsUHcL","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":"fIRuBqf-CG0_yCoETdRfk","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yh9VFG2MxHRP_delPlNgW","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":"yyZN-ZEfCdkkPmvbB_cPn","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IU5QlBB9OHsluWrygYVjS","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":"lpQt-1i0qBeyKw8vJ9iTk","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dY-eRc3nQCjQze2frqNYh","name":"radiusX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            The horizontal radius of the light

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

            The vertical radius of the light

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Hw-2muvvMMCGTf1h0ZFm","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":"eK73ybDRPZsjE8cAfelnb","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":"3wcio2R_tJg5FC6W02nfP","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N_oerTxtunJ2HqezpaUwC","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7rUfi3gWgD_Zl20Oogmd2","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":"SDsJsXjxvSWZQSfgT8kuY","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AnmcEAHGbQzwl8oHs4C_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":"L5nPKRoZTfRvgEKL7cj7F","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":"iAhbDeiTsHf97tePpzzKj","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":"xZHUKK79Uv27_xfiSNBWX","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":"gNW_EJ1EKLoPHNoXrLuUF","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":"PVHpoUcL2wox7e_AYseo7","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":"DvLdSteUvC9Cgjia_S2i1","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":"6lBz_vTapiURxwR4WvGZI","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":"Rj_mVromTvFVjjiSyp3_o","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":"28x8977hsuhwGF785m4V-","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":"Ogdduf7o0RLyOld28MRA2","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":"kSmotrGp4lfOmn6LT29rh","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":"gQYhkmyk-BrzEmhsvca3z","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":"3KjmF6e_s5YnrdckhW1IE","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":"NWr_cJDTjfEeiVzc1Ghtm","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":"QU2Dh4dMTxRT2f6ZhTi4d","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":"wqxHL_Pm5EOQ6eI6dS8bv","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":"JBcN6dE7at_qlLaRmW72X","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":"gNp7naS48n6FgMefTOzcY","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":"TPwr4OatSrdC-rNO4hiP_","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vmUDfKLX58xMbittFgytv","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":"Tg-0yTK98ZdRLo-U8zJDh","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":"LvmYeBoWh1eLdjZG5d5ls","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":"_CxCPLBH9cRd8j8sUFMGb","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":"rz01OEJCWNtheEmAZZ73s","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":"9ecUuea0-xUAu7fTQpp2Q","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":"Pn0dNY3gy8baPz0kdj2il","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":"Pv3lMKX-0RglruJO-ZS0v","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":"nBrwgaj7T3rwPxLPgI7S-","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":"4s0yOH599JkhyjgZo9R6k","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":"tg_0z00ZvmbqRmWY7I2hi","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":"Z4mh6IX_wA3iyoZgL_znx","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":"bSoI0qaalU0pRKtYa8Hf9","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":"wSNN8mk2Jy0yc7slplYin","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":"44vbclHprl-YD4c7w-cw6","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":"Mh6M63zcH1I0Hui9rtWie","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":"BuU7iGnIMEIPpgRxOUNaa","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":"2-H0UUoBra8QYpAbsD02T","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":"OTPbbB-GFkkW-iBJfoyEW","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function

            ","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 dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QbdWA-YP1bdb2ri_Jd4Vd","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":"H3akYjcoW_BKBaH-4gbtI","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":"KV3Ij0JQ97VcXxaGm8R5P","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":"jWK_TVM_TTE9QT-3c0BeO","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":"AlZSEFW0hT69sCqZeWYdr","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":"DTjRWdWHMk6gvskhE-JzJ","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pOXTA7X8noGM78r2Cj5oU","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QJ2u7A4bWfCVSxU5gRv0B","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":"yMHt77uBcfCcuXUxvrJAu","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":"a6XeNNL0lOCBXxgxXfICp","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":"l54xSMZ0bkfzdbO-firxw","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":"DeCRGFpjdtTzVH86wHgIU","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":"iLcCKW4pB7QRmUsI2VsNW","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":"nMyBleNJWrLDCUjm9HOft","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":"-Ma8qqKP62MOdDaTlE7ow","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":"_sRDEVpSK4DqkxX-2RX2d","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":"qXXrsIfI1qGJeq3n54M0E","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":"ymKsWjvJzgJg49l5m018H","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":"v7eOUM6ZN_2bU7k0jIt0y","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":"8Jk-esl8kXA_JxkBiuCQL","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":"h1KgapMUz_jAKSMZHxUZJ","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":"PQEGebqmAuEfD8p7D7ewc","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":"S-a9VorsteKuH5-10lPwh","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":"xFSLnKJEreMBY1yCpTbbb","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":"gajATUx0L55hQOp3hiFYy","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":"9Cjffq9kYt-TxeCp8sH7V","name":"Matrix2d","brief":"","type":"ClassDoc","description":"

            a Matrix2d Object.
            \nthe identity matrix and parameters position :
            \n

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"eAO_lcUSvyk8dNWGspKrE","name":"tx","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

            tx component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"40bGDzRq5RtWVRhfPD5dV","name":"ty","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

            ty component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RguoXMlPWgdx_MzGCjucR","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":"ANtKZiMwo4pl_Sr6v9ODa","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":"DbKSxXYXSmejhAcQLRrGV","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":"rQFyrCZQVz79RdN77BcCm","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":"L7zcZO14Mzr4-VeAK9FkX","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":"aHH9VgbZD0nPO8wC8jniX","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":"FnXAKDKLZ2quZwG_kjBh9","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":"CMdOU2o1vunH44VRSUzH4","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":"b8Un9Q9ig3AqiQmv0cV4r","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":"cDSZLMb2Ug1vehkPhvkXy","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":"e_jPrQUWAej-FuysA6RBv","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":"pcAsZp_s4ZH8jqAOFJ1T1","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":"ztf5Aan-578nOYyjpv9qI","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":"B2zJ5hgLKwfm-1BCaQpuM","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":"ZpVnsRd28JbPkFM4cjjsZ","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":"oXfgEAd_zr32q9u9ZeMgC","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":"NWoNKRewSaaeYBotfBy7e","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":"Y_SkWwSuf0Px3Kd_PxqXO","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":"4aN5wZ73HcZ9iY9ckPMpd","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":"4Jh_-DuJ_bVSBa42Z646M","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":"hkhxbNYlJVmaOm1dN4TDJ","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":"LnaZyB1fdnRhetOauipQ4","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":"zvELaNA0DUKy2Onpwu23Q","name":"Matrix3d","brief":"","type":"ClassDoc","description":"

            a 4x4 Matrix3d Object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"bkiGvufaBYXV3toYwSUL6","name":"tx","brief":"","scope":"instance","type":"PropertyDoc","description":"

            tx component of the matrix

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

            ty component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LgYh-R9kbO9Jd0_NRDgk6","name":"tz","brief":"","scope":"instance","type":"PropertyDoc","description":"

            ty component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fBSyPQ_qGzr2Mnmiz1bgt","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":"3dV2ZKLKbzirJUZkLKsAW","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":"2Jkxrg-ge47E95v7KmXdG","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":"ejV8DxQYX_64WptaMRhbK","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":"Dp9zTNZbVOr6aw-Qfq6Sv","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":"6vH3CQN9o4PbyjsrE1sFg","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":"juwdn-n1BYnqA8PgpA-E1","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":"8XrARZxoQiiGjBdSjI_Ck","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":"RoDnrN8mskYcXiD3rXj0M","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":"OPjnF2ABeZSx-Gvi3Lb0V","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":"j7EbiOM_YK9-uriIoCdMQ","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":"xBLVxezGhOeIN7GHS2paa","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":"fpJb_zzrqzBR_n6q69iJh","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":"MJhTw9LRkHIDXzdjQ_o2A","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":"MWt1zLV4WoZ5AxHE7bVTh","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":"5LkMVSUoCr9SYWJes1Jp5","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":"ojxTkJ4RltlGWnIARaGpn","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":"ivX71rW4GRwlLTtKt9HiP","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":"jCkVzGn7fKSa2pXwLN4jw","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":"ptWSN7tRbF_-YKJrwzDLZ","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":"QI5xxo6ixm_e6Dg1BxJBC","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":"aLrKjyqF6JoEZdcx9VLKi","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":"weQEiwwM5WstU8mhjDPnX","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":"n9GxHmMESC-2QFd-KB0eI","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":"9kf6fJepNDaQjPiK3-2T1","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":"Mc99RAz1ZG8z88M8iI-UK","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":"wSPzjN5ISlaHfxkQ7V3T_","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":"IyVSn8J6A4rvRAc_sLm4u","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xY8nMnDd8U_DKjbIc1kvt","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2UF-GI4q4hwA9YzVHhLmk","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":"5HxmvV_ua9Wxqc2FjGjAP","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":"kasA4RCiU3TLa2vyL3MG0","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":"y1OHhNGxDm5djb2Kqb3tF","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

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

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Wj2iSVY4pr5rnCnIYelC","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cPJQknq8dIJFk3aw2G1aS","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":"5xyk6oFe6P5kbxqiuTrRn","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":"JVB19E-J1vaLP6WuWHudt","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the NineSliceSprite

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GuoSS06gFZlUZlECeoRNl","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":"u3SbtXmQu99gVcDQui3gW","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":"4mT3lcK8pVvijj_VtbE6p","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":"Mj0QrOj73nbf_ACB2oJ1Z","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":"MElU0mQ9ylz0u0pGWrRns","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":"1M59XfM6E85Lhf_4ouPo2","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":"F0y1dofmRBCU536UuPakB","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"og3e1b-Z9i6V3k2BJlaYl","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p3mX7W5IB5tbOBaH7Yf87","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":"WXJZ7r7mysdP65Lg8jDlt","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E-zqr4qMG251PkmSUTasG","name":"offset","brief":"","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":"1z3Jno5yQXLq9wTeqDvIr","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":"o3aatkJO5VVEZ2fqfWtma","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"G8piTiP7UlW0nxRnPLUNR","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":"V9rm2tmBt0DcyR1McmD1S","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n6F7Mztc3Kn-f8mbrmZAK","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3rtmBvzO47JzHjo-pEStl","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":"CSqmWpdTAg8exCVeI9fsT","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ry2DbxVTuVxHwFQ6bqgKI","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":"RcsdPOu2Na9JwEoTcvI6j","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JGQgZKAeEx49eVhNlubt7","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4xI3h-v7nSVAZjbIkqLPW","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":"oc1S88ZQfXvVhltjEfpJY","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the NineSliceSprite

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fMI07czGt5Jrb9lMH6_V6","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 defining 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":"pd6m9zf67ImTZ7OUdgnbL","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":"F-aBBTuHJASxeZHnJI4DV","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":"fdMJIMXS2CQFQT0D0-N1q","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":"fY2UwslGXRMCta-kW_kdQ","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":"936neVmZktWl1CmMVExen","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":"THewOWgzQPtrnGTNRGkfp","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":"hdA1LwgUpgNBv8DFSSEnI","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":"7kmk-jvtF1dCcDkakfZNI","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":"8wHMDrbtWC_SaHByokeaq","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":"wpA1O3B0d8nVAupFXHWVf","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":"DEF7d6e7ljke0SC1-IXTt","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":"4zNTvCGXkZX23IBV2n9RJ","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":"qyZZqKERz7ZgGP9rZrgkq","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":"96UYLVzhbGpMA4MJdLsog","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":"YPaikptaCtf_LbFsITguf","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":"Y7qtMAdw45C4NVSea2FV7","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":"MD55QxAoTMtgR3sVRc4Yq","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":"wTaiVuuFZZzQt8eMulvYU","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":"T3jkSd704jQrQ5KghkiRE","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":"855hKxlwfXShHlAYjYvIZ","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":"lZ7UzslyGs_uCmHZP2OE7","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":"SSxT5epXvldun9KH_uoVg","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":"fK8ijlnbFisKfIrmeCnJ1","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vENrnCXZ6AYkWm6QVket1","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":"gf8APSmh3yiOYPlilRbNy","name":"pause","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c_XDDtO0ISxHdWytseOT4","name":"play","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XCGjvw9Augn9JE1xPF3cE","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":"JLLapkAHAwfkdsrq5M6Gu","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":"v-6TtNhMClrYs5Oc_rwMb","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":"d7-dfjPXw_3PxnSHChu9S","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":"Ef6su8EkDIqj9DytujD-k","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":"uoA68qykIdGMa-QLgYWlh","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":"IH1ryWwigDleY6E7n9GMH","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":"jShxIPtSXg2sd6ulzriVg","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_6cdFNS9vH2_xSFP62wC","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":"YyXQRKz-2KtktpTf67mpy","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":"xF9_DBBrqEftT6cYf5buW","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":"Wo8A5WqlycjG-1k_dJFH5","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":"X7UjTuCQP-OBEqmJpds-r","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":"opPrXGYE0akxi1x6370Ce","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":"9PPNHjwnCpnl1sVEq2NqH","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":"m6qR4EmSaCkUIW5ebuOFw","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":"f2p14PPDUPMv0g3r27VRf","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":"0YwAIPrEFGsyvIbijTfIx","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":"D47BjH5rd396vSJgAm7tt","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":"HAUe56I1BPsvXC2xdTMun","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":"zbvr1upO8GFfvgHYayve2","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":"rMFis2GK-SLNBriwpv4Mw","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":"Xgk-RO8sBTB0RrGXtmaB9","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":"h5HvTS2j04PqSYjJoJsl-","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":"hWXDXaSFckiUsHCdGphVN","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":"HXKny6FVJyLTekYgg3_pb","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":"R_YFlsSzW8PJ5ab7OKW9w","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":"v-MPhJRZgePj5GfF6lBe2","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":"pcCOyZXzM3LAcRFcNFcTO","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":"utmGTGsTC5RBN9OR7gg-E","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":"m9e-rh3KFor7tdfvProY8","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":"2-p-5MdCD-IUFzo4IqTqt","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":"44A0lf9YIQGk06Y_3O76I","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":"TKdiEfV3hKbBgg1FUTsaa","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":"6JIgn5v58kvbukpr5iP6X","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            x value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BOLKY-cn21IHxJbFDQg_6","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            y value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ppxdzN0MjUxuthRI3K5hY","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":"vlQKwgv-VKNlN4-dIQGuW","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":"0V-oojk9P-MBgUWBlx6Uq","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":"nKykWqEPWXeRhgFIMy-6q","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":"oUqlNn7yN4bQesnpUyaA9","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":"KybK3RNufmwTXMB8RRAf0","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":"pmUX0lT_QIhLM7n8YfqA5","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":"7Cur4rFV00r_Q9IuFligH","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":"odW0XIbRRT1enouzN9H1s","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":"qd3yqRVq1TaB93zpK9BeN","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":"cT3Bbnw0h_KUcQWUI1PLv","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":"uUZHGKFalSgYICx8Kde2F","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":"3iMBPyKljp5WYqBTl5nqg","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":"5diKhpLVztNfWA_Y0ClnJ","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":"EnkgIHy91q1MflzoMOMwe","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":"ip80ymAlhCZEZshBYoHN_","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":"SkA2x329InYhVMuJzbhen","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":"hxy0xKSFciLlfTdeKdWGm","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":"5szR6fmLnAeC28_6-P8ZT","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":"1nzz_xCp9uLvNO-ajBCzr","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":"pYeixpCluB_EkPHq3Fx66","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":"MSkqLW_E14YZKyBPy-cpC","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":"k5paiAuxUNIvqrWdmy0FF","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":"H_3mGarU1GraBougqVA41","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":"ZGtriSOa0FBsQqlPgBX8O","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":"U4sBthexkZmkBNRLBEx9K","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":"wf93NEYQzU9witUf8ZKbc","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":"L6HZLZevjGJlzJ0M-LbmK","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":"A2HI6IyuupE_QA2Jy-ZnX","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":"k9SkSEJkp3lU7qezyeT9m","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":"bCSJWlWRVPgkKEaL8VoPg","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":"dEZnziOfDPm8Nc8AAIuqX","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":"5EJA2nUAT235UWhRzePBL","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":"7GvDXipwZ9FZoDqRGJMTj","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":"X4lZET1YvE9oHYJmosgUX","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":"HBxMl1iPcFQ7Bs8u56Yv4","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":"JLTADRDvMsttzsW7-C0lG","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":"NP8LthBp5owsbHl9sCW0S","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":"MpJZWa8DW5zzWc5oiWWz3","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":"8P2hzbfY-0NufrGZP3ZSM","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":"UCy1Tefhi1KVHZvq7pdqg","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":"c31ZdeftcIObo4gpLg_dV","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":"iwsA5uxrg6pQ5Q9wSxp2N","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":"osDe837GxVWIwH7SumUxh","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            x value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J7Q4qkBKlpYLzzlqlR8PK","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            y value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X1Q02hz25ZxOyCWJPk6tX","name":"z","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            z value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EHeqSe3LPca9Wg6WEo_Q7","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":"Om8oKFsHqM01cwX3A-i1p","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":"H2ifWhhVsXopWGAtnn3EE","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":"lcO7tvaS0n9TMGE-hQ28J","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":"K5RPYODSc9BtLlxW9QdcB","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":"pZKv1aSBFtwyatuV4t4qd","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":"ognRX870TPZRqvAJazpBw","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":"VU7ORD92QNqAWPyYZ2DWb","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":"dys88j6Gan1KmF3HqeKxh","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":"MAbiGhV5dH0zOKzY8PYzH","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":"0j70b5g0fAGAe6vZm_4Jz","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":"EcIWb4rHXbdt_MheZKETC","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":"-xhP50byp5Oyq9fPkB02G","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":"5GEl43OHmLWSAWXu8x8X4","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":"Azq_w6ZqmS95heh8qfGt3","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":"-mlalN8fm_nfLOlz7NOu_","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":"NKx-u0d2FmV47AoMw991K","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":"-SyVhzSvWm8tbpq9HzpxQ","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":"T8M-VNrOlcGnKTgM4QNiY","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":"khonf4dSkjQTMfmwjR1Ph","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":"7_H_HtLAlRcrZ1FG9nXZ9","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":"FIL_qhPn8IETJIXx09vqB","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":"Qn6cFNyaE-G8gMxyu9wvy","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":"1NlLK3jGFkhdFsVBOBZIF","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":"csRdcNFVLTgtumUCtPsLc","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":"gZVNpCz6va1KIcZcXUT3J","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":"YTED1geFSNYFK-YF4bQNJ","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":"88MG9OAufDbYz6kwlMi-C","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":"dT9gLOg_Fx5-9TXt_PgM1","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":"FbVZ1K6nK7HgEFRrNTvAK","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":"s5pn5LebNpTr1dm2-7UgC","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":"ymVLE4IRQ1JN1O0cZnrCX","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":"M9cnOZdZyakmpEO556xih","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":"g8I6Z9Pagr3EuN9BG2Jsz","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":"NxEg5oELr34dJgg0ZHJxV","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":"00g6dIZoN3yTMD5bFcQgB","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":"Aj2OJPClkOD1mow5cUJ2o","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":"CE9Xfmk96IkucKJ7Mt_sZ","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":"CVMZAfTDKLTCpMYsFrNRA","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":"UCM2bTG4I2ZXu6tvxyxyV","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":"AA4uWaA_kSKswK6vbQM5k","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":"IpZtnnkqkqIVaO7TEu_c3","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":"Ye3Qvytb7owpsgN1IVMDA","name":"Particle","brief":"","type":"ClassDoc","description":"

            Single Particle Object.

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"frhU_3N-qyemP6_hOsJQL","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":"zcpavLRxGJOH3PQOk043e","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":"-qZscfJ95jcz5aJ4pTUAx","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":"AaBB3sZ-9GyJYFdx_pdSF","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":"_Oo3BsJJ4O-EJHUwPwZPm","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":"FoNUAQcMXzgvV00mXoqp_","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":"ETMRnBp8PKf5ONc8JIH7B","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":"S_aZPqxSqqRuzo5iugyOJ","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

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

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"egHJJxkpgpO_FqIOM6v0y","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":"9ITdVYfeVMl3mzLZ-c3tn","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":"qg_IFX5yXsDh-sxQxe59s","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hy7cBRt6CnRTGs5A3oE4j","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":"MViEibmHDGZsbUx8ifFcs","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":"iDujjk_8oR-uRIAYV_oMH","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":"XSy-i-xJlKAPkUjObxB4u","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":"odkKJt39w6AIVhwGoAYg3","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":"gfG2QDHdx2xQUdRilqx6o","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":"Xw73JoALXacF1W2cf2bbB","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pgqbqj2cG0jAHrUoP7gAA","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":"B2MzbkljiA75p4Q3e2-iF","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gPEmBawWrL9hIpWalV66V","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":"9Erju6G1hr3z8PYT1PCzT","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MBKnUypS42llBDkUl6Mbm","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":"dhXThUFpzY_dyrfxI7Xzs","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"37aLU0QMlvz64P7ZA-BWu","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g0CkGqOudujm7D5RsVbM_","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":"9AH3UucVmK84Osa4_S7vn","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":"ajFSvvtgkWuz0nlMsa1Jd","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RnPfLuMBfR-6n_IrWFhHT","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lYZuzPOAPJ9oCR3_aVN3a","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":"9kRE1ZyHPI5yn1hS-snQc","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ha2BWQ7TA7hRNSIJF7PLZ","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":"mOdAcRflRgh6yGtcGdwYx","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":"w18TxkJqFBtwLYxv40oOk","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":"K7jAr6fgoIJ6F7cPTFCs4","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":"oRzqwNHYHmWRAtkP53XQO","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":"AWjM5zCJlnoEd6k9M_sRk","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":"p4UpApzLnT-eWNBBHJhoK","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":"RXKfEYrS1WVsVbitcKbHW","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":"mjEIsnfX6QPjy_Z9AJC7g","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":"HE01J54wUQ_QQgjoTJMNz","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":"RnlBJ0FNU3SzJIhLILR4J","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":"FbPl6HXvs5v0aDcYbD1rG","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":"VXvSY1j1P4QGyxbVCcVDq","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":"GfzIzkt0ELLgRurSSskmQ","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":"J5e2DpbH6Nm0WPUIa-0KN","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":"9xzVo6jTeVfsiTkryUr1o","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":"7q2t2UqknMRtNwpEnjd5a","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":"JGqKODcZdea-zR9VilI1r","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":"KB2FNgYPDdxDvNNE8ENgu","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":"aU9YEZ1u8c_NxxiSc3Clh","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r97HV0lpfJgtLZynx09ax","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":"sgHZbYzwyjHqQoQWPfsLu","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":"MQO48jPxyhwk-WUEmtX6M","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":"hMKY-1OIAstV2yRmLgi1G","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":"XUe56lSgK4ZWtQV8q5HZ1","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":"fsvVEg5YNLyHCubvMyIY8","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":"A61CWhH5_rmGUrG968J3h","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":"B1xSWhKSrKXbI8F2oGXYx","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":"4xH-FVTLT81zC2YWR3RqB","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":"sahBfKRgwOtg-7ZBTS3Vp","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":"UY_Sm5rXELGwqFlkVz_sz","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":"Q03Luy1gRoD5Con8tygRV","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":"YCD0VAQkqd49SvPmvvajz","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":"7G9zb_9-w7CabwQMlCA0i","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":"jCRSghkg1QV1pWXe6_tb0","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":"AIaOBGVCXY_v4PG1qs_gG","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":"eIQJfE2zilSHrpoQ2a486","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":"559yheu4CfetVRcVydhPU","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":"hTZ4lo6AtYvNlbYwhufqb","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":"Hx-FeXQHX0IqRWpgbZgUX","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":"ulbG9A4LeaqflPYVdRRE1","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":"_WCJzQNQILx8VY2Oh-I8y","name":"ParticleEmitter","brief":"","type":"ClassDoc","description":"

            Particle Emitter Object.

            ","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"PJbdnvsy-g8X2LcU8CyMB","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":"F9PgiuF6hsoq8WumuuCyT","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":"2xHKqeAYQvfAb1EIeTUoC","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":"xHmo31LE7yF1vrr3Dj0fE","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":"uf5MCJjv_89NkyckuORXU","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":"WTAeMh0y_jNiMc9dlJdep","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":"oxYZ5lzHgOouQwucLdqjj","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":"Pt3uYotrbL8GSE8TbUDRZ","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":"rSJeGGxCJpsM9JLeRqcMW","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":"3fJSG7mvGzH4TDUeoidoP","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":"xtAVuWo-J-Vvusa9-Px0c","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mLbsb6fCMi0BTBS7iLqDB","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":"wqOiR9AfeVmB-rtQ5-RWG","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0voWXZi629wqwfCCLKL_P","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":"Gr8gjRGXUlNrFRGsCcCnY","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":"qrAG2W1Gh94ENlzscS-m3","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":"11ZQFoT5Y19MSsI_U4XG6","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gtJfY-m6ubGZqPP_Y54sz","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":"ffDDIyXhibGPjuPHzSn0W","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":"UeG8NQJw9amdRdVuNubhq","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":"Rsp5nHhWLE2sV2grB-0kF","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":"_qB9tNFvFEpKmM_IP0ojR","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":"wKvEOI9YyDq8c3fLVE9Kd","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":"9kBeuB2Dy9AOtuv6RWrqr","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Gea_910jhnYBCqsU-l6rb","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":"z4xyLPQVfokiiqH_UBLXk","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tYzeQknxr3pgWxA89dUo0","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":"vGBQODj7hYsGD7wggDrkq","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F6T4JWR2pKDFSk3XC_vtw","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":"yIzKxOV5AlHBjP4AsWzGZ","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vVPA9iYo0pzkA2yMQ7Yst","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            whether the container is the root of the scene

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xFj0usfSWdEpdOgDzc-CV","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the current (active) emitter settings

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bOwLoiPbb7p_sjTGKeyVo","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":"vuFgpoCf8WYH0ZK2wIznd","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":"p4rt05S2qahJiZD4wDAPq","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":"roAdab7pwhrP7ciI8hjk-","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FnHLgw74O5_nKoaQK-U3d","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LJqBaafAzBEsLUkBa7Yie","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":"ABkbe82k8Xu4ecxdGlQgK","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Xebu0b0HL450PGKbGXnL","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":"77SVdZRuXtcXNkLh91n3j","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":"77PcS1WMVF40rLrxaaWGn","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":"qgq0y-NzMOcKi4wcVSmIv","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":"JpDz-G1myty0b_agDtAqz","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":"ulbvIjb8pXFuOuRAnGPNT","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":"RMr6INZs8l09GjBaVryK4","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":"xzWQeG2WzAmSovJpcGiG7","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":"5B51jlVlyhui_JMWblEnP","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":"t9YLHF3Prdize-PtCBhid","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":"a0uZQiVNJNdD1hpXXJ4Sp","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":"S5B4DLBXnbdHazO184a_h","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":"d3Qrtw_JYlPqK1gMjBSXy","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":"tIprage_7vHdyIw4bEYgn","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":"MI68tfYW8pnNAtmHEnBkX","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":"xIzFX7_8tTtK6OSJuokMP","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":"IbiKBuOVnKqzXqkQW2tG6","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":"5Erm7yQycowTrtlEnCqKt","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":"2axLt8UDGRnMj4hKmEEPv","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":"UjqAkin34-50GBJzMVH1I","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":"7ncMbWZX5mZqE9_IN2WEm","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":"xcWeb4c8JFMILThwsXvtP","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":"IRe1IPpiDuWFdpNPKN0kN","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":"8tvfR2ZxT5_xirJEkPIOQ","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":"bZkZAey_BbNHp-fVSA5Ny","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":"ZG_tGRMUKYODV__Ai1TIZ","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":"7-d_l_J1pEFNaUD9t0qOF","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":"Ea2w28_8tOXY8QqUj8mqI","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":"02uSThxX81JS7EHu_Wd_b","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":"7QDDVfWNVyl0dHPRtLvjX","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":"U1fpsSV0J11KcoC229J1_","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":"7x7NvBXJipa9W-0Bqhzkx","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":"2rqZPFFy-z20-Q_Fpl_LZ","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":"1l0yTNJWHSpyPNBoPUikQ","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":"jJquwxOcdWc3cj5mTHgmY","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":"O5eidim40saCIvHBVycVt","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":"5c_F3-N6RS--B55oEH0n4","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":"YDGZRnzHHRqbkTwZccet0","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":"q1slaVJeHWnD6UAt8xmni","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":"PiTg4GkXKRgGI-ZZaEfCZ","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":"MZS-g1xisYEngoJ3-tOxw","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":"hvc0iKv3YU51v16lXylRN","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gr2O-MhNMbBNzikQYv7H1","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":"-0N2u95p205NDL38znIQG","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":"ZYfq_6nbK36QQl0qW7fLa","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":"5NXJx3YS8dB3A1mxo10-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":"wzoNNO62mj7fRXOY8SXJl","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":"lsdWTH1LfphS0Ojeo1DoQ","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":"WTyOOhR1P4Nl9RJJMwurQ","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":"rHlQJMnTCMiVSzCgrvNW5","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":"xm8mAm0D9ADvDhpCZ5AWT","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":"L190YOo6tuIK9dwk0RfIH","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":"C5BQz0E-6OLpS5JlQzWAZ","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":"vza03dfjLqEH0Jb9S_P7V","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":"8NW3nSqMphn1D0gReSiZh","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":"SUrDxMR9ICk6-yiz4-T_R","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":"eSR3klun-vPVvh4mjNknU","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":"APPZfdA8lFtART8yzhI0Z","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":"zzTMcgSecqaf4YVwVDnqA","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":"w6mSFMHvgJ5U8gtR3f5cM","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":"6TdyOUDB5HdVYWSOz7pDs","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":"6NWlawaatpZWSOXPgBP0_","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":"CF-uyqXFokU6BnlWcNteh","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":"_eA1YzUqgug609aBEZD19","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":"4SSoLunVSp-5mZ12yShXn","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":"MbQ6iCxsFwvyXb-RlIXjH","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":"GZA_vRnsLuvmNQPcUOv85","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":"6Dg2yymB-wprH3YgueiBe","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":"Xe6yYj9Jwb-uSc6K3ffko","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":"CXsg_1UqJ__0IlsiQmeR1","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":"0H8YmvDbjMmE_FWSZ-KQo","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":"RMxRDnrOn_0IYphubkoBT","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":"IJPIuByxTThCsn11CB0J3","name":"Path2D","brief":"","type":"ClassDoc","description":"

            a simplified path2d implementation, supporting only one path

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"h2EgGklAk8ql2krNczpLk","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":"eDElHvncuuK0RMVxuOIfC","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the points defining the current path

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZbhybbZxoD3cipa5aHbZr","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":"YWwM5_acdidF2LBVffiiP","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":"ucon8dNp1qqcAb2JoGV0Q","name":"beginPath","brief":"

            begin a new path

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9pqu_rWvj1ARW2m6-31aM","name":"bezierCurveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            Adds a cubic Bézier curve to the path.

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

            The x-coordinate of the first control point.

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

            The y-coordinate of the first control point.

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

            The x-coordinate of the second control point.

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

            The y-coordinate of the second control point.

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

            The x-coordinate of the end point of the curve.

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

            The y-coordinate of the end point of the curve.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Jat61p7q5vJNw96WXQt4E","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":"3twJR1PerSGH74uiH5EPq","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":"ydsRPe5bvWJjv4KniWXzQ","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":"W8WGYSQaQN8JWMHaGbOlz","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":"wEc01DKzOc4QeEDo_kBz-","name":"parseSVGPath","brief":"","scope":"instance","type":"MethodDoc","description":"

            Parses an SVG path string and adds the points to the current path.

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

            The SVG path string to parse.

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"fLOlFBHryA4yCUTXcLfZa","name":"quadraticCurveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            Adds a quadratic Bézier curve to the path.

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

            The x-coordinate of the control point.

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

            The y-coordinate of the control point.

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

            The x-coordinate of the end point of the curve.

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

            The y-coordinate of the end point of the curve.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"sHMxIJdCGjVnjti-6h--B","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":"Z7OGDuEp314JJDCK_elyJ","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":"f1in_GR5ozWOD6qbFREKC","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":"aR2ypQPLhR_nnEUNvLDQH","name":"Point","brief":"","type":"ClassDoc","description":"

            represents a point in a 2d space

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"IkMPJcQUjFZmT2u5x_G9q","name":"type","brief":"","defaultValue":"\"Point\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4LYK3WrccDyicVQHkRkuv","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            the position of the point on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ozUo3kutqKp-zcK_vOEVe","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            the position of the point on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WXL40P00fcirzl7V4ezcj","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":"qkP8DMfA1mET1phyoiYwQ","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if this point is equal to the given point

            ","params":[{"identifier":"x","optional":false,"variadic":true,"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":"oZs6i7hFj-YL2emck5-Bu","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":"By5iTw89owWOVxcwzEiMm","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":"v7ElYwUuUrTa0G1SEc4_z","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FBrbzDdbsaXtg-qeGnzB8","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":"FuRxHBA0m06zH2IJROD-J","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

            return the center position of the bound

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

            center position of the bound on the x axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1m2ZNONL_5woPq9pMhEs7","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            center position of the bound on the y axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OctMw4qkANtk3XyHUAskX","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":"_ELDGynRFEgG18TSA__lC","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":"GLHBcd5QmG5cO1t9wmdba","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":"JuyBoTKSaOjS-2QBDggkR","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":"OVU_TtwHFHOOvjbAVTVVK","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":"1Y25TLhhDhQ8KODfjCi30","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":"lH_IB6Pnr_PyHB2NURzvF","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":"QkNnc89pazhgq7YD9V0Vl","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":"QfPh6RfZtEfMDQH_Lf-vQ","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":"WeYbLWRXO9bqSgYiO3UQC","name":"gameScreenX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event X coordinate relative to the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SFNDXtmMJRRB_2WoSzgut","name":"gameScreenY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event Y coordinate relative to the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jmAVP7iqwLm2CX713tXdD","name":"gameWorldX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event X coordinate relative to the map

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sDJoKOPjnR6PVJ7RZV2yA","name":"gameWorldY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event Y coordinate relative to the map

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"otfrPRBysXCa3I-ZWDALE","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":"0dYtu5Z3zHIn4So8dW4A7","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":"eoJg_s_J9nC3g5K3WVUfG","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D-YA4tySJYuY6NvtDXyq0","name":"isNormalized","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if not originally a pointer event

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TgD9NtuTYEEThw6d70tK0","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":"M7HgyC1yBNnno-aBKIm7h","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4BxPV386U85PFkPOqLgfV","name":"LEFT","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            constant for left button

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

            true if the pointer is currently locked

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mBpMXSUOwgvDabVOOjxLg","name":"MIDDLE","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

            constant for middle button

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M7-2BDo4xNUgtFVWzsYsI","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":"e7-4hWbhvfp3M40DaIx7y","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":"x0Qof8IOwnTffVz4Olrr6","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":"cq0qxZuuxVQ5FwoPSAD4E","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":"eCRijwir-7OZyTxKsAQQf","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":"aYIlln9nGjGICTRxnrHZi","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hz_tr2OpTXCEDZhyG6sxf","name":"RIGHT","brief":"","access":"public","defaultValue":"2","scope":"instance","type":"PropertyDoc","description":"

            constant for right button

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6QQSvWpCSYRslw1xPMnQA","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"azuXoMU8kQV5hGCduxVP9","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":"Y2d2j83RGsnFftCiKcq9L","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0IEy-RzL_XDeyLqmDcSJR","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

            x position of the bound

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

            y position of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6NNUdSdgmDlmILBdmLNuX","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":"cQzIcaTNR0hQ0jVfMfedc","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":"3WH8o8xfinqAY_PWobMqE","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":"4w26R3rkXJD0bFnSxwA1Z","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":"wfwJw3SGwnqACtzvfXFMp","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":"4Kg6LP0fbEBTJDEyvooXb","name":"clear","brief":"

            reset the bound

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6swnr_-v-1f4Q06tmrOf0","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":"Nucz4pbdPSnX8DRGK2i7T","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":"tk49tfFSCCcCzf_sKzziE","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":"7Vax30ZEjYazcpY-OdAKb","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":"9E6hxfc_aMbOqmcCuW26O","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":"i5_lMpCI4OQOQP9mi63is","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":"MgtJyyCYarru7emp3rI6V","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":"xRk2HeO4VeihlgFqqjYhC","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":"bnuXsjPNeao356ak_pfsk","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":"GXYedrz7GaUhJiJ6F84wa","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":"7dlasGXJf3FM0wXDMFBaT","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":"DShNF8P2TH7JSdfFfY1RH","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":"p-vBu4ShMQOV0tp1vxuti","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"57VERY1gEnNNu-I4WtUpP","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c-UfGXFp24GDATeHVHLfq","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":"AZAa-rPfKgVg1GX9RYP5N","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":"Q1mZ3_4p3tdgrM8h-X97e","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","optional":false,"variadic":true,"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":"CrMSJGjLt_pN0SHrvz564","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":"ABNpXSeEKeWnP-WJn8-Cy","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":"lJDWXWFNszJ2Vr_pJmcJp","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":"qbMsx_VwcuIiTBsKK1oUA","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":"qPaq5xrD3EpwU5tNadAqu","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":"e91Id1QCXemsu5yeGh7s6","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":"Xsq9EndHBJKXRHFGZRl0M","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":"uVaTbutVhP2MQV3hKJUPq","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":"rTLr3-TexRZ4XRWjo-RS_","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":"wIL2cmukQW36Se29vxwwA","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":"wySRU5wuruQSsykJ6XedR","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":"614tMDqA6I6bt9U3aa47E","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":"NMFzh_cASRvDXwfiqklP2","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":"BJeCHbflJ5ZqQGp0LCkb3","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":"uGUNtbjEhSFU1FYrthOIv","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":"UVx18JTuGuxye3G7wBkzL","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":"8XsTQGwdj66duelRzdLeN","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            an array of vertex attribute properties

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

            the shader currently used by this compositor

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

            the default shader created by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ob5isEHINY3EyIFUiVEl_","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":"Nz_1uWVVxVddHyR-XcpwQ","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":"q6vSYj7rAySbycVZXVSmw","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            the vertex data buffer used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XKxMv2eQXBS3jSFMk8yh8","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":"KZrP9qG4WjYFYl4FkY4n3","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":"FiRGZr08VPIoZYApW0Kh9","name":"bind","brief":"

            called by the WebGL renderer when a compositor become the current one

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-RHVv3r0AehPVfsUGV_sb","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"5WjKJE9y75WAHR64vR7jV","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":"wUwH6ov74yb1mk0mLAwFB","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":"cQGza92-v0W_MDRYjods2","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":"MaEUWLgMPZmmaTlQ9GdOJ","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":"QiBKQChbdhAO3tcfRgg-V","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":"WVxN24KX49nJg6NaY_iDZ","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            an array of vertex attribute properties

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

            the shader currently used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uYVee_Rg2MY5-PMt3eVhC","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the default shader created by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MUQinCsqBbCQiIp0R8vVu","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":"aPWNO_c_3L-EbD_dMW-ls","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":"dba0M1aT_nCz_5eiJeB6W","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            the vertex data buffer used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9OHP9okDZHtJmNkqQn5yW","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":"uL_5n5PbIAPrNx19ltqXB","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":"j_CiUWa_34E90ec3_GjpJ","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"}},{"identifier":"reupload","optional":false,"default":"false","description":"

            Force the texture to be reuploaded even if already bound

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"Urwzrm-C7EutLyeJ7I4Su","name":"bind","brief":"

            called by the WebGL renderer when a compositor become the current one

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k2FQZn8k61yqpEy6bagr_","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":"Rgl6f6O1WJQlhEfIm6jSH","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"w7Y0EEZhu0RG1ITPOO42U","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":"dLd63Qf7uRorsNtcQmkqf","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":"iCrFOYJrr_LGRbvegwbXg","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":"y3hmKF11uXbuPHIOdiUBi","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":"W-HwtEHv8E6kvcGD0gjmy","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":"S4IveElEkDlSfF5l_po5p","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":"JVhzfWNinYRnvBGpEaVmB","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":"1OqBX4K2sGHyXnkEnEXhB","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":"z8a1gIShiYeJm9hBcJAuL","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":"JmMmd6jOs2LV5AE4_08z0","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":"97LCydHT4dTo93QT8TnW0","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":"eerwx8GYucqXgsKo0dajN","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":"qiZeOA5G8MMbtHoi3nWmk","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":"IuZajiHQV4sxr84OAWeTp","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":"kdoJ_AlA_ElVmHwszspX3","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":"tA-_JbTq9WXn145fMZtd4","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":"BUfFABuM4yd9UEXhigHWC","name":"Rect","brief":"","type":"ClassDoc","description":"

            a rectangle Object

            ","params":[],"returns":[],"extends":["Polygon"],"implements":[],"members":[{"id":"Kh4wDzAFvtQzTBis7Edvg","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hast5v9xTlnsl-ks4rSVM","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

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

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0iIpqaSyiCD6tKEJOtWug","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7r3XbFY3gIY4IGuPrBP4t","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":"U1obQTNvOqZgMKE501ukj","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0PMAf-PSRK8DFaye5h193","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6i2zKBrizvgFfkMyewSbe","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bcRQznv2SbsPHwGKsn70S","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S548xI-V9UxGpqvr5Q8bD","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2xxcScX2H3pRYHXw7tj21","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":"S7SE8MdzAOTE9lLDp-P5j","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":"mi1mKKbyLMDqDAXe9oyz0","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":"potzNnMqSovhPY4rKYj2m","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":"pAAMbTTvkiy5YVuqYbWaD","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":"9hTzldANTWPf2QfG3xHLR","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":"VMjKvbsvoAs4oAsTtUfOg","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":"UwKuh70UqM6fGfxjBZWN2","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":"4J6nxmPuLLvK3fov1N7NQ","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":"fpQrWcH4EfbqWrMP089aT","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":"aT4eKWZOt5KGK_37a_Kdm","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":"XVhOTF-8ELzeBAT97uKmG","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":"5PB-aZ4qNrIVG1nbFtKjD","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":"_lw1CP6aoJ-SpjJnOPxA0","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":"eUMKvYKwsfGmZontiAz4K","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":"y5GRyz3Dq4I3vxdz-3r-R","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":"0Tl73wxGcRo5Nbo9j6qBo","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":"H0pQ7TfcM6XV66lIKB0cr","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":"FN38qy2R9Y9nLNtftZ20u","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":"UDQGJWRDUk1bNOgpPdArr","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":"gaGW1AjmjPlnC1k0U9oDF","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":"kWG--8xkT1CfGhB8tlCwc","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":"ExXjS-ryBhkTpO5zqzu0e","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":"Wea1Zkev4wHR0dzvdqcP2","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":"rlkHY3klmnzkHbJ_29hmJ","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":"5EpucVrhEl7sI7XV3WHJd","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":"GQRLbG487C_GvPqNJwPkl","name":"Renderable","brief":"","type":"ClassDoc","description":"

            A base class for renderable objects.

            ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"barLi6KwKE3mXqLLrsfjk","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":"PkLba854_nbfpdAj08d5G","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":"a98TRaVScOI-M17WVkt1A","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":"nSECFoDXnPRdVp4mYZ6w4","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":"EWJqBRxzfM5xRbHTccLF5","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":"-TC2bG3ND-OGPH6SGXqD6","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":"aTGTHEI1julOMlMHiXw-M","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":"qpnu6qOEAFeHQTS2dU7R6","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5ZnFj_qY4jJhjae04rncN","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iIgHHvcoa1uhi6DCTJ_Z-","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BoqFShiX5Lda3a2HSS5-F","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H_OLMavlHY4kHm_zdV4Rm","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":"-KHCT86OPTyJ6Rn2YL1JB","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":"wJXdzr5WQ0nQiIBOv-o5d","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-7hfN3v0VowFC5_9WUpir","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":"Dd9G6Ty07WLwtSvMlI-2y","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":"ImGgOADuYwmDDum7hIfw_","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":"3TnJyQz4UaXDgVthTYpYt","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":"B1ZJX9t3dSpxV19obbqGc","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":"ZIrseOXzewZM0EIgf6qG1","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":"0cYncgZ8HuqyleRiLdB1-","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y-XrItK9Ek1ocnY4cJK6z","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w1pjXaMaO7KpxxYpHlSmu","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":"1ZhNtWKMw07ZdKx_v5ebW","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KJ5uLXybWPR-Wi9B6w0lo","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":"EBXlScUEYIKahpmTzIGbG","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UaiYZT5EY5h15PpWQu7CY","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":"0ZSvxWrlHRteJd7CxCgHQ","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yvRsIsj8FfkX74ojmkkSR","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":"pTH4eoo4dCH-v-jVeLf48","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":"wdyUUg1peN-BQ89lbhVpe","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ofudoAu2PVxmvuyfktrR4","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FCDwKriyitt_osy3gscFD","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":"oBchZDBswjv4TMa8c_BOs","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O3A7nJmhyBZKkSB9SqoeJ","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":"21VH8IWgs_XTrx3nFZr24","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":"jv1qDN80jeH1lh1y36L2U","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":"GENrxI4IH6SeRUnHUkzY0","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":"SV87XvZU5POOnKapgxxx7","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":"l4Tc1rkfdADmnxS3cdYsM","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":"wRXxg_ZRMbQL_luRvpOmy","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":"7gUDGiPzIRtgGCzESpVw6","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":"4IlvkJ2OaC3yfjDDCEAKJ","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":"YHAtHN58aEoizrCCi2_3V","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":"ZvYuVuJid67MDgg2Xjl2C","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":"YnnFUs1vaTEb9r0COj5N7","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":"o4fHUIywma4rnLHdJKoQG","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":"eM76diuVuZOTpffmA7asW","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":"118Ym8MroPjSy4aDW7zs4","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":"8txTl9Xxl8u-w0l1e7fNC","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":"49s2IP6Q3yxx2RlAiqo33","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":"YNUgyIVANfkuZk6goPp3f","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":"1_mB-yptNwN9nlYkrs-MF","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":"Wy7QwQDHbwgNa1t65M6XZ","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PgWlQOxRYu4cyT5vl0m-4","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":"KRTKsQRgIP5SrR4tfBKE4","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":"K8dPb6YiL9yFoZvcZ3Mrd","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":"EygR_5FrkND6FyVU1CobM","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":"WY27DADDX01EXeVN874rd","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":"77vsu5CwG8BbB3V18bXLq","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":"UvYqLJKPhfcKX0TBvNiS4","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":"8LlDFoC2yIN-i0ZU89RhZ","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":"9GwGE1KshLjE0zde3wst-","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":"QU-qs9nAoOEPqbwCvxeLa","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":"0lyYFbJBJzm2ss6AoScot","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":"XbGvijfDcs5YEpHlgThPR","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":"bwibIhTT7WxHPjqDRR6hI","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":"-CgVAH2kUpbNCODMy1yDU","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":"hQTw12jJHci9ktzOpP3lc","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":"wmijkYcm5c64xGfav8DUA","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":"EmiGp8RrERiZxOrV5OON4","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":"WqmU9MZbiFWTBrknAnCf-","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":"4ANAKIMV-ak9eEfbra942","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":"sQL83yAHFWqpiTTNH07Xr","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":"kmMDLwC21-x4AzF8XbQh6","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":"102TbSVm9NT-U37_ER8Tj","name":"Renderer","brief":"","type":"ClassDoc","description":"

            a base renderer object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"dzMrbpfg3LcBJbMN5dxte","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":"REfjtH8iNV3vV178-Xgcb","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"FhD7CHDRR4frqxpGmG9I5","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":"b1grM9z02jX6JXI2LbEL_","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"aF05-t6SExGPV6DHDn6Wl","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":"0CjiEgoPyz1xl_cFWVrCh","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"wu43lPCLhKfOV0DYVCJII","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

            the default method to sort object ("sorting", "z-buffer")

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZjAdUyLO2RscmJ8wnYHnn","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the requested video size ratio

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q6qo8qOpEoDeQG1v2n4Rv","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":"Dkq6yzNb2DDWRb2FuqFro","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            true if the current rendering context is valid

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

            The Path2D instance used by the renderer to draw primitives

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-49YUYLIsW5rZwA5K5dYF","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":"h9meTPr7OxcATBvn5poRt","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The given constructor options

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Hsbj2cv__FYK3NtJ0xlcV","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":"wgpX93jGN3qeqnZnoa7N4","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":"rySV0Cdu48QZbOiq6Dchw","name":"clear","brief":"

            prepare the framebuffer for drawing a new frame

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7UnXygJOt3SjV_A2RjBI-","name":"clearMask","brief":"","scope":"instance","see":["Renderer#setMask"],"type":"MethodDoc","description":"

            disable (remove) the rendering mask set through setMask.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5-fgRRFxREq6Iks6XJGrX","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

            clear the rendering tint set through setTint.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h60Okl7LSQRuuYDAJnaMf","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":"JReVFSYy9D98CDN9NQH-E","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":"gCY40JrXQhcJyFbC5k6ii","name":"flush","brief":"

            render the main framebuffer on screen

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_mGpCilnzikNrO2gUp6uw","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":"m9TJGpH6yYSxBQjEnfSjX","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":"xo8ams0hewQnLdtoVeE0p","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":"XPX80KrWIBOe93OYaMDNi","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":"xkMpmdTbPE7CroiVSvbYU","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":"P8ckmiEJQWEMh3-1ZpwZj","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":"knylrANs6YPQaTAGt1ekk","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":"flpPyd_VCv2wIcR_EdYTW","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":"Ul8ScKjVBePfK6J12auxm","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":"bRI7BrQzsV9yCMB7E48CF","name":"reset","brief":"

            Reset context state

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Caeha2zsI776YACbQwk8D","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":"g6C1Ff7tbtD6SwQDl5RPG","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_ME83tRSbAqLJzQnQA_8","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":"299pCiNNtbiYUN98pmgBv","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":"Wppk_cco6yoUCBrVNiifd","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":"PchUZOp7929oiNot0a11K","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":"6SzNCfARGLrHDytjX0rkW","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":"t4dzVAm0MyLeiD2nQrbfk","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"GrDoedF8nYcL24bmGqJwY","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"EsUFBCmtfNXzK6L6s-Wyu","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":"type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"xu-3cUaJWmnxzYiiSe5JI","name":"ResponseObject","brief":"","access":"public","type":"ClassDoc","description":"

            An object representing the result of an intersection.

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"_Cgc9pTSfQgyhC_hufBRF","name":"a","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The first object participating in the intersection

            "},{"id":"56VASVG1BANE6jWCfRtXx","name":"aInB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Whether the first object is entirely inside the second

            "},{"id":"v1-0k0-BXhqJJy-oQZKgh","name":"b","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The second object participating in the intersection

            "},{"id":"WqHRVBhw8jkI4hh6OezS-","name":"bInA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Whether the second object is entirely inside the first

            "},{"id":"eVhxFqXihhIQFwXKNjXqD","name":"indexShapeA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The index of the colliding shape for the object a body

            "},{"id":"-h3-eTXfXlmVMp8US_zPX","name":"indexShapeB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The index of the colliding shape for the object b body

            "},{"id":"knL6hlc9c8duuAYzWghXU","name":"overlap","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Magnitude of the overlap on the shortest colliding axis

            "},{"id":"RtJhiAUZlDe5xWzN9Q1fG","name":"overlapN","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The shortest colliding axis (unit-vector)

            "},{"id":"JzdKf08PI3AahqoQerGZJ","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":"m5W9VEkq_QaTYZhRI4V85","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":"w6bhj_y1mxtutlqasedJe","name":"RoundRect","brief":"","type":"ClassDoc","description":"

            a rectangle object with rounded corners

            ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"S-lBf4-1FP7ju4IFZB4dr","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

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

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

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

            height of the Rectangle

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-e1uRg5UcIzxPjd3gF5FQ","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":"DA3Vb-J2fzRaIwd6nBsxY","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m6gQjXQRLv8Ch1TlHrJot","name":"radius","brief":"","defaultValue":"20","scope":"instance","type":"PropertyDoc","description":"

            the radius of the rounded corner

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5vLFhpfHJv7W1i4JtpAu6","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

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

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QLQ8ipwd28j5qIytiRxtZ","name":"type","brief":"","defaultValue":"\"RoundRect\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

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

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l9IBO8jAic2n2g4cZdq5Z","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":"b6oG2sizZsWwegsqab8Vu","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":"L8Uv-BRSpz-lpJzn3kBX9","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":"mnQlZLV3g1SLGKsDmEFQz","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":"2sDkIzQBUGDF7ajqsoLTa","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":"8gOq_0pPVrfZP8G0gukuR","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":"Zdr5ENmtg4hz7s4G0zXy0","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":"WSdLyQeV_aakrxmvd8nZo","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":"x46CXQVC89sdhx-E7CsC5","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":"ThBRRAYhalzKsYVHbeKbA","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":"qBHWw9H1S9rVz_bGCegfC","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":"m_nYnTKN479yBwhiARJAk","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":"IykH_Tm6ekHYWKFIg7AuT","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":"X6JC8Sndfzv4zSvnQxLXT","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":"ViyfMYx4YxWYPBD6W0tkx","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":"FvqfdwAFf2Bqg6WCy4RDL","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":"ss3D1TD7qgx2y8C24FOPb","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":"0B9cicRCv9YtZpLUimdl0","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":"8B0ySIvTCBl0Z6UGerWav","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":"oL8dHHEzWeweOJ4-199at","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":"WvpEc9HlMOH06ibNz4RPu","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":"VzFAelZu88VBUX0lyzjOY","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":"4Dpr5U7eTGvkLTEnVgMkw","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":"4nDpYveFK8fvzKBEddOT_","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":"7ip3RT7529v7yh8nI0ZAt","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":"aCbDyeECve-Ne4Q8Gu1OG","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":"oZasI-NS2HQ2DKmCvicLs","name":"Sprite","brief":"","type":"ClassDoc","description":"

            An object to display a fixed or animated sprite on screen.

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"SE-lgl5kVwNYzV2lMni6N","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":"DwYgAVhy4lJXKpQgMhbeQ","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":"xOpN-iH-LGn9LfIUdBLOd","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":"0F3SNzngXk8YloCkYgBQq","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":"xcSvEsaYS1afIXq9y-P8W","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AkCl9L-0s6mY60bMiqDpn","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y1ZieqPaipefnPLfSWoWy","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":"W0wUXnL_qt8m-W0LFqa01","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":"4GI_Tx4oiDXAkuBb1LK-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":"buJJCbHoqUZDZHBrc7DiQ","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6qca53CSinrhzgfrraRIx","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-avAYigJf6eN6l2y4Yu3h","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9e_2oAm38f8WhudqpoojS","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

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

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tbaA7rb3AcruLqjC5KaL5","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":"z1RJdZZt7JbffMzcq58zJ","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":"-Tfu79LYdGVbRlZtxA5_w","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XV-CUDhdaPh8N3Fzaf1cC","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":"1unEmeKmpUltNW5_o7tL1","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":"Dquhrr37qdtSYQnzIjJmM","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":"ojSOrn82lnEh4lcCCNwDf","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":"2_9SvYRqXbntGLTAtvF7n","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":"T_SC5sEnXrf_I980da7Kf","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":"2I9iSddAWzD93Llx5_L4w","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uJO3YZKtoSOxA_HEWA0Vr","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5bHu1_NPsfJrQNJG-eFHj","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kiy-g7kdM-ucC692-o08I","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":"1TvkcOt8NW-FwypgulPys","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OlUdq8kGiQi1c5505fWAo","name":"offset","brief":"","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":"qXca_x9Br5PWMFwOthk5z","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":"i1Ei7vVaP-u0qoUFRitan","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gAriG4v_mK-YxWIURwr5p","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":"ce5HLe1scKlChu2QH30sj","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AucAjOGJbsSjl0ZuV1fr-","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F48zxqwLIm4KRVMMuQnuh","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":"TpZ8-2uBG2ABy_k0Nld8d","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zj7TW0eA-0FVgiaVcdQMc","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":"jhFvoPuS_ZHgz--eB0n4-","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V1E4nYlIdnMcF5Ir9y6sY","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J0IVai2VcZZffo9qSGZ10","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":"J_hbak_x4Ba_jWh2UWovo","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UrgB08066ZpSr5t0Uulxw","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 defining 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":"F80c_uCuMBTRQzo23gDG3","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":"5-tFOcXSdFGRSQnj3e4SR","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":"i8l_GXHXP073QsHGpVoG5","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":"kplfymi8jnRwwxJDWw46n","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 });\n\n // create a video sprite\n let videoSprite = new me.Sprite(0, 0, {\n image : me.loader.getVideo(\"bigbunny\"),\n anchorPoint : new me.Vector2d(0.5, 0.5)\n });\n // scale the video sprite\n videoSprite.currentTransform.scale(2);\n // start playing the video (if video is preloaded with `autoplay` set to false)\n videoSprite.play();"}],"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, a video element, or to a texture atlas

            ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | TextureAtlas | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1 | %2 | %3 | %4 | 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":"5dJme0b6haACBmU9PIocC","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":"DXyU-NVD087rCcGVoANLi","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":"5XoHdneXgU_DG8SH5mr2j","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":"GysUHM0S3MX6w-evl0l05","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":"LZav6e2lI-E5nLHpO4agL","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":"UrUzNi3RSpV-79eZSuzCK","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":"GDq7209tljMCSwC2-5pE8","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":"NbFHgaCNZJkEb8KAIkoRq","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":"yiDVg3F8-o7JdRzdo-cys","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":"xnpNHErxPQ4ai_dUtvtmE","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":"OmZxWLAaCraOAKCGn3S18","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":"Knp83rc0zDQxG3sIjhHsU","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":"QrlZdqEkyqRqRPazKfA8O","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":"-ac8hXm6bpxNTTDhgVGUC","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":"RnOa4iTjSldKsYiWqseKS","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":"Q_fNUMVNk21DakDjIF3wX","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":"VK9FbvgmjX2sZytDUP7Oi","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":"JhTfMLIn6nporjaMlH-s3","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":"XxNAal11VjogU1VvyzMC6","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PsrCH-sg32QiVwSmcJeuT","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":"8kC3LO9qid2HApoPTMvoj","name":"pause","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eB6cFE_So3tBukE60dABE","name":"play","brief":"

            play or resume the current animation or video

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lxn4x5DB5wuaW8N221jrS","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":"eQ2dNBcWY9DuEHJPuRiad","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":"Vtzlct_QZnvS84UkMvram","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":"8_D7960-cV5YEu1Qbdayo","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":"GkLgOmfQH8JPAg-dOEAN6","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":"an_vDEw7IAkuCVCGjxa02","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":"468PGEwd_TKdPz3EiOlTd","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":"wRnOyubhvmCeqoc7gC7aF","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":"9jLleT1XPc1Nipvtda2fy","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":"bFckYDwHEhgUFLKfoAW4w","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":"jk7mTWP0b6SXB5wfxOc96","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":"mQmNXlRI43ZUtGw6CJF1Y","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":"tafNEE630A2VRXL4smxKn","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":"1kydoqrmEYRg3x6bad3j-","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":"fYV5_fLzM5pjayMVZ7D2c","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":"EiiXIDqhUVl5nrgVaW62i","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":"uHtj-1fY4hJIwQgLnmp2_","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":"lp4Rclkxl4wf4o88htnKC","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":"jNKv7y5z8HUuwDvADThyX","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":"U_N99QMb9IZjymBZXuAk1","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":"0wvy7mRvrTgBSnq_X30MT","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":"5pWOOHGIx1auNenHoKTpn","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":"syJoULQ-_qVXSlnLDcc2J","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":"n4DuxiDhmtSflb9O3Vj6k","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":"5KaWT7vfvs36vyaVNhPqy","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":"2iT-Ox-Im9LYAbuwJDDL7","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":"8H93miZL6cqGC_CQ4OpxI","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":"IU3g2ns4oW2prCG-LWXjV","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":"1u0v9FIMzo9KpDU3iozbN","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":"w1fIhdWvtBgopJyQ7lnTx","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The given constructor options

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HXmjZk3J4LRimbOd8OSr8","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":"Tqon9vE3dTrqSBAJ1PUa9","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":"K1hEp0idaWg_B8344atHn","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":"hbXE-EL8SonTg43djqGLK","name":"Text","brief":"","type":"ClassDoc","description":"

            a generic system font object.

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"h52GjTwXl0BmA7STzLs3l","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":"NmDbRuTOOmyZCNwcWzZzP","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":"o9i5aN8eqrtr5vJN-jyAn","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":"xP6LpFsk3L0iXjvHHFCs5","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":"Ub1vLpFQq63vN7dDK7ZwS","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":"rwlVTTZUG7vQzeVtXcWdo","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":"WTu_lVn03z1BfCh09wpNW","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":"YZotUExjXZvt4AI759EG_","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9T7ntNPKM00kyw_qjzmv-","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

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

            absolute center of this rectangle on the vertical axis

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

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zqpj0kfP-aBiYK0aetrfr","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"opfwtZJpdInydWZp7lYbJ","name":"fillStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

            defines the color used to draw the font.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qBOicqNcrO9AXcY6mzmVV","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":"vHUBAhqpVV3bAtaqWIYZ1","name":"fontSize","brief":"","defaultValue":"10","scope":"instance","type":"PropertyDoc","description":"

            the font size (in px)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ym1esUBScHRCnmbC_FYPA","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":"6-rdK6lJwxGRQRLMv-vGV","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dXwHObsuYt447sUzJOYAh","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":"9gcvhYWLtpi8ZlFajf0p5","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":"wEG5mSZLYUsKaqqELYVIp","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":"PbwaC2pQBFAOkTErflbVr","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":"4OUynV0eeJCJeaViWh9tR","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":"_s-ghjtjbJ6jPDfskg6N2","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":"XkvbmgOQGKstYDl9ynjiq","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

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

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JXrgLXlJzgJdlsQ1VlPYp","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":"HgGhVIF0qHZorXhdzRbmF","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":"ddCN37ZmZ_Dnt-6PTN7G-","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":"dhxweD7fU2MhzVkdPdusU","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1WFM6GHjLguM7SJCb0vPG","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":"TWh9yN4rSSShtUsobKoDd","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

            returns the parent application (or game) to which this renderable is attached to

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

            the parent application or undefined if not attached to any container/app

            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Sk-qIEHtH3RaJov6ZKK7x","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":"Tyu9HDeRIyTDmYqCHBIfG","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

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

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ARbE60Tyq7yfQ15TpON_i","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":"pchkKP3N4Gwfp_B5VKlaH","name":"strokeStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

            defines the color used to draw the font stroke.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9MRap2Q-PS0nFbox3lCES","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":"XwjUbG1bO3eRWpj-ieno3","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":"rwYqoipDFRy6JLrj6ou9R","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":"FY__4fEvBStcfahVcYE1n","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nps8X2Wn9nxIt9cT6lMSV","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wfzXJ-yUOebryTElCpOoo","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":"i1AfKDyEv8xg7ENUiEFVc","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X52F2rj23U1np9S97hdGE","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":"D1J4oEnmnN8e6pNqLiItI","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

            the text to be displayed

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YvA341M_4KktAcJ0Oagvc","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":"7FUXnlBc2hP7i3w6uQqiX","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":"IlhLbvIxcnnmYwPTVjuOl","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":"WqZwYTGENF2WiogB4QOX8","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":"RlyyhUwzDMOKm-JzT4XKC","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":"ZWiifXfe81Q2c9TlOScUF","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":"I6AIii3QHUitZimL9dsbh","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":"3ULL8hk9NIkMSOfEqm_W1","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":"LRh0GmJI2SPXh4Ots5Z88","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":"nm2XXC3tHWTJdUmZV64sP","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":"BZ0qkc19mNNALBAtfXVAV","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":"cXLRHXZ0bnPLJSNBCUrqV","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":"lU-L7KLrCMvka7kVVGaFP","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":"ShyzJlp_ppQT_VW_Jx_pI","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":"gXcjO46vxixoCnIcpBzeI","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":"D6ecp1fRNs397bTPduLXy","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":"Jx8V02sfG_O1iG4S3cERy","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":"4iT6QrnwhZ9DSLS3HaD2z","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":"U8dmAR8srz7djIrMrysSF","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":"JMDaWWhDfG2fuLWLxXZdD","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":"Y8z4cOfYpYZwytmeeANVn","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":"g5JRQpbJpQDvtUe02LNHE","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":"TBnZrztxUaa77v2Qc7pZm","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":"0mSLUOstSciExkHk0dt1l","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nA22WNh75S_V7VVPiCZpe","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":"H5ZhI7l4-E0EWTGubnIfL","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":"u1scPk2ZSDV65SXsM68Sq","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":"gq1kcmCyIVUOTGL0usvpX","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":"DiUrJaNEN8JW8_VFa-wD9","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":"Xr8DRVx_fToDM0eWVqB8_","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":"b9Jt4HKhES-uxR3TOhbod","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":"wDGsRSLPbDUiPsAqjMMnS","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":"eN7bV2cbgD2sx2LU4pMcj","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":"opdtY2Jv7qrVELnEhPTrD","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":"W8_Yar4tf8oaPJBuu6Z1l","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":"n08VWMkDNbKDIxh7XUi68","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":"MSt9c5muDNBfaZkcwUuGv","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":"sB0LjnlMibs1nPqVQV8jm","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":"3nb-DvsXr9hlD-v1wZY6w","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":"8Bt-WHOPA4-wldJl-nEZ-","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":"0pU6cVUZ56-2pZpdIqEfG","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":"dg-Cu0KgNgs_vO9KCVGx5","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":"q5SEONamQZ_gzzobCX-hk","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":"54aZ6F6m7awjtqTEG7uRg","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":"XPFV7pP4rLzNff6KegmPs","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":"X6_T0rCS4cOXGWdfov6oa","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":"gWiJ18gJZoKIzR6gWxF1F","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":"r_Nemp_27VOMwfvzphP0u","name":"TextMetrics","brief":"","type":"ClassDoc","description":"

            a Text Metrics object that contains helper for text manipulation

            ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"ZiP3ibI6GoCJ3w0kAu4fV","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":"eSd0WkPPh6V138Ld3cDEI","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the bound

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

            return the center position of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1fa6IB0grnWt90F9qX0eP","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            center position of the bound on the x axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-HEtnbD-zZeQuFMvgMV8x","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            center position of the bound on the y axis

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

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5MzQZCwnNBrbiy3WcFWXk","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the bound

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

            right coordinate of the bound

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

            top coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p8FhJnUHSgrsJcVF3Uhhf","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

            the object type (used internally)

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

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KyXRKU0I-p-IM5iCdDWB4","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

            x position of the bound

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

            y position of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Nley3Z3Hgzzjj_JSImjM2","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":"Nl94tPMBkC0yMc8iLh6Pl","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":"Ajm23xuxOaq9AXnUouMsJ","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":"MOjnWXRm4fSFH86s2tGKr","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":"7oGe2EmkiVeZPt7Z4-Nwp","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":"Q_TzK2DZYvvTFd10qwA20","name":"clear","brief":"

            reset the bound

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"goor4bA038aW9TQ3Mcyoc","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":"Ovb9Q8pCqx78-0qbqZt51","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":"NtL3NhReO54KOw-ia5SuK","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":"8SWqS--A5W666sf1WsTGl","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":"rWFVVOEgHgW3LAgBw4v11","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":"Rou6Wk67SDHkIrs_7a-of","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":"s_n3yR-rUeK1QpwnDHSJz","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":"Wl1SG5FpBzKcGwzu4o8nW","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":"Vo1GLn57TbFfGevFYZiF5","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":"-maNc76AC1UQAkigumv25","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":"bP1FWy6CG6Nrnvw5TB-sJ","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":"2_rABw1KWk8HW2tG266-X","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":"e5ZboH1W5FdQEnLUGtE9k","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":"IRhgjNgSyvgQG6SWag6Mr","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":"ynxgxK6CkBlzbllJlLXBg","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":"cKlx_a1p8fyNetWi9W1aw","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":"K4p7I8ahhKjZ2HXNXQicV","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":"EKhQgxQhQkmwvOFpxi2uV","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":"YGllRY1JOLLmsPICGeuBF","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":"Qx4ecfH9W08I3r2G_BhU3","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":"croPOaWgVywu5TluCQLC0","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":"ubzW1ax-kCOB0ISZ_gDOX","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":"_fJKHAz1i1tjJEpIh0jOn","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":"zze1NUGVl9VQ_spt8XUqU","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":"NGjrz7nPVarIojvvfkViD","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":"rATX-G7J6K7uRWxMQAU9I","name":"Tile","brief":"","type":"ClassDoc","description":"

              a basic tile object

              ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"o-yepnCSPbPevSiz-3mdG","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the bound

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

              return the center position of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I-KGjKspDRvfvKFLBqYtp","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              center position of the bound on the x axis

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

              center position of the bound on the y axis

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

              Global flag that indicates if the tile is flipped

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

              True if the tile is flipped anti-diagonally

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

              True if the tile is flipped horizontally

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xkC24-pKEoeCsGz6E8X4l","name":"flippedY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              True if the tile is flipped vertically

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

              width of the bounds

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

              left coordinate of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vrRFtXN-KtP-GaPsXC8XW","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the bound

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

              tileId

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O8-4e8L3DyeGEs4v20pRr","name":"tileset","brief":"","scope":"instance","type":"PropertyDoc","description":"

              tileset

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

              top coordinate of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tLfbkEnVTlNygfqegvRo5","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

              the object type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Zc2TdjuEUlLv-iQoQ-h49","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the bounds

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

              x position of the bound

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

              y position of the bounds

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aJALtIl7jagbAVJOkhf5T","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":"EC8YCYXoawngMJaIufV_N","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":"-QP16vNusn4CwfHAzg6HZ","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":"3wdOfWeYOil3EvR60doie","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":"Uuw913DJLfrsVvkResGaa","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":"PSp00MDTxXx7chcwLMiHl","name":"clear","brief":"

              reset the bound

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E8a4XdqPbZa-TMXvNjmFI","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":"9hZhcnt72tqoO56OK8aa1","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":"QdV3gAmqYx3iN1IA4et4U","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":"lNzYraLyOpF7wm2peju9l","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":"JUB4BUTn-KEUpr9td2xI1","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":"Rldj5uuxNN-sz7j9GXzMF","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":"K1mPYU1dtd9k3Iru6Ep7i","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":"A_edmteaHpvInCmTcbhft","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":"U1y0q9kY9qfMsNP0iXFkf","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":"jgzrTmBI5BszMRObU5U-U","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":"7ym0nAWgZw3fYacpf-EvB","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":"WjpWB7AijFcy8o3mTp7tj","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":"_VNk-CNtL_B89KtE4vtPm","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":"-CX2qTOWcgv_qvztnrHk-","name":"interpolation","brief":"","defaultValue":"false","scope":"instance","see":["tick"],"type":"PropertyDoc","description":"

              Enable/disable frame interpolation

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ttYyOkM5XjZwifVBECIbn","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":"maYf1Bwaz-lD0PN-Jvj0Q","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":"Mj7L1QwI9_nQRpssdhygN","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":"m1Fgsp5hu0e7AF0P28hfG","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":"VkvCcenTs12F4EA7dlVcy","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":"-e3Y6NW7QF9tIpeupZgWh","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":"G3Fs90S0bM5LEfHzSk8aj","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":"KoYd2f4eFNqZMC4Lt8y4_","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":"228GbfMGrYzGhm1ydr6DI","name":"TMXHexagonalRenderer","brief":"","type":"ClassDoc","description":"

              an Hexagonal Map Renderder

              ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"c-1VyrwoGFOs6teVNaD6W","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":"1QjG3_VUYc4wQNoNjznt5","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":"9yZDvEwfFpQcT09HzfDMM","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":"m5CmyK4YwDaxtuuq4Dp9y","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":"6kiXKgRTZGs-UFzoMVnf7","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":"aVyAsfbUfFuxA-Y0XTXSX","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":"VFEJq6vW9NyImbUDcT7kL","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":"lA0LEhIqPPVBEL-kqZZQ4","name":"TMXIsometricRenderer","brief":"","type":"ClassDoc","description":"

              an Isometric Map Renderder

              ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"aAQ9fqlGo88Ztro4niqPk","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":"YbC2dlGGnoWZ8CGa4R_Xk","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":"SOqlGj5F7GQ5nfWe49oGP","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":"3l5nlfua17Y5G-PzQK1Bi","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":"2NVyXpQEoHJ_x_xoThAJL","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":"dKhc31nRx_ogMvhUyaQE5","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":"8C1bhYXI3Ybu9nLt66MQT","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":"Dbuivm1bvXJCIuNDetlSe","name":"TMXLayer","brief":"","type":"ClassDoc","description":"

              a TMX Tile Layer Object\nTiled QT 0.7.x format

              ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"ZCk1bL3xHuJqnaYKn1BWM","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":"GWwmRop0uSzrEENFmHVm_","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":"yDRAJvJVZPEdRi8gQwaSh","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":"2LP0BzoInra2XGJpOT25d","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":"dn4fJv_uLNeJIK0jpcxZw","name":"animatedTilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

              All animated tilesets in this layer

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qdTyD1QCoFJ5Ycg5QTtk1","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":"NNbBLAyeioWzIdotbAAg-","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":"QS66o7AnCcVN56RUAANWQ","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":"LoOuq2cOKtQN4L2Uz0rzv","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

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

              absolute center of this rectangle on the horizontal axis

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

              absolute center of this rectangle on the vertical axis

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

              the layer class

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pb33Z2bNyCxXz-QN0MrDP","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

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

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XCIrn7kYdaCJeojLhLqdk","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":"46nK7GE06HjqgZKdgNkNV","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":"wtnJLxxgndV8GoLQXijlA","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VqZqVptJUQlzt30UPlXlm","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":"QBhRxcElJltT8MU8H5RCI","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Layer contains tileset animations

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YakphWxaiCKtjYn4eMCBM","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":"_mnZk71VcT-HfRAAJoC4b","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":"gL4WvRywIghhIaCUmlLi1","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":"x1cRQmvirdSZCQfQemV1G","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":"7ptFDgEqaTPUh5EoaR1dS","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":"K-gqfNVpxIoobQXSkJX3t","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

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

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gAazrFBGhYbPGatxWlseo","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":"8wskHnHtPOosoK4iuFj4d","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NIsZim_ES6aGRndaM7Vm4","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":"1X8tU4sXvgFT_PWS92_-S","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

              returns the parent application (or game) to which this renderable is attached to

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

              the parent application or undefined if not attached to any container/app

              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"94Qqmx11fXy8B0PcUq6O8","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":"Pg2vPPwBRwrJJX2-SQfRy","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9Wt43tyGuR5eIxtEwDOIC","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":"5xObOPU4H6Ac5kDx-3Hsq","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DnWpW0ygPvrfYbqUTmrcF","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":"oV67AabynLpeEsBDP8jx4","name":"tilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The Layer corresponding Tilesets

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4laT2wgrxH18ZqcGv0cnM","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":"YFjkvL-cSPbzureHAyt_K","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hy-zfO_iMj-w1I8PTKxs4","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"60S1hJcSJWGDZmzAv-W0h","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":"0bnJtYDGvVFkYirmfnGsJ","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0avXZvPBNTagiXJaFVvvw","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              Horizontal layer offset in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NU_9yYiQn6LTR3wDtzhJc","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              Vertical layer offset in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GimHYfEuIFNRAYeNVFDDU","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":"n2mF5KW4YEuqxATamhngA","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":"opEGLmobLIdFeCTB42jDf","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":"wqB08pEIhbij-9p5BMpRs","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":"8S11ud97hni52js4mrY9C","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":"lDiRmHo2avtpisqlCLVX1","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":"OdYNU9nmS2GoekapIwuwI","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":"PfnPU_gJErY0K0eGjcTLb","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":"R169UXd0Cwnpn6ejK3BG2","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":"NHlF8JWg7-qqasg5Tksq8","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":"8e4v7fRpWQZOjpAoSOgmc","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":"lahjEpRcxNAWyrJ23ctzz","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":"hoqzgHRebFonWTaHRf4ih","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":"olqEmo-CxZ1CMNgOPq5to","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":"SOvaZRMj-zY5H21qlhLWv","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":"GyInd6--AqjvYR91M2FdF","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":"I1zc6JgBxFl85FUYb3Qka","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":"9UO-NJ52Q-YMNKSI6VQGu","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":"Pw1mf0xdcm7HZk0s4d76N","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":"gj8qBCjR0p-2bVCpS5_AD","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":"X0nqgngFzam2Ks3oO9eVN","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":"rfaD-BhvqClJDw46fS2Rv","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":"cOmice9PBkOMRoD4riyH1","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":"JdQ1w1Ed_FLtqh-Yslurt","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":"H6FmyjjZOUlrxGuzq_BKZ","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":"qPPG8uxShlukqb2IHQGC8","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BQ5PcUlCnANmUM51v8P7j","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":"IUkTrOv2pTw9yeEvoD38-","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":"8V8qXik2WsleiZ6j681RN","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":"tNw5oFjnduN86_v4xyGyv","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":"iZ5KHdbyf5iGVKz-x-86M","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":"3PQRseIFpnipP8gew0lFD","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":"7bNH_Gwtc6ZRumYukn10-","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":"rYcq6fZPbs4yl9MlHQYKM","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":"b7Bj0zZmp99UmlmZa0yHL","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":"2UJQiIvPxGgltk9eolzWX","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":"6KY3Dg6RDGHvu_XLc6xyf","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":"RnuI_q9-42HMhU3uY1MnU","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":"iZmj2MeZ3hGBDr02pdhgs","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":"u60p4zSMOZlMimU9o4iXI","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":"NYxKvQX2oU8ObTRzQm6uP","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":"Bveylho2T0UX2gkluZyw3","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":"NNZxaQvPC0kXYPNIbw4p4","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":"TYykM2J5v6OM0Nlw9LqCm","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":"OWHpmwvk8FFHtafcR6GTO","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":"XqFvUNz_bt702jeY4cOKc","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":"J2OOhXqcerMS94C-lJQ1R","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":"F6D4-Q-sFlEBlNGffT32z","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":"KpbP7aif0oyUoQ6yjBQxo","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":"nbJAVLGESh7aNzTdYgpRm","name":"TMXOrthogonalRenderer","brief":"","type":"ClassDoc","description":"

              an Orthogonal Map Renderder

              ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"c_Ij-USh2hQVdQfu_cGLw","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":"G7lHNReqFJ9hGFwt8m1HC","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":"KryFTRcGsll-dXWZw8A5K","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":"xbGTDKqyVPOPgtvgsF8YZ","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":"LqiNYeIWAcYp833Fw6eJ8","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":"1bGlPWr-Ru9Nn9UeClgvq","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":"amGXYFWcoOjDxRMQSixcM","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":"t55hnsTyZHiJAjypBtg6T","name":"TMXRenderer","brief":"","type":"ClassDoc","description":"

              The map renderer base class

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"shC_CyuZw-KZhDIYxotOO","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":"CdD3gpJa0GI8i1i1m7d0o","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":"E8BXsMuj7CPF68AHoV4QU","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":"frMVdku7SErw3QIThAi_A","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":"uIAoyqyELJvJwzz8K-ULG","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":"fALaHVpkQW_Owspr3ZyVg","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":"CxbKjR1JiL1K2b4MECcGc","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":"cJcwvXknNgWVxfdoQFNCD","name":"TMXStaggeredRenderer","type":"ClassDoc","description":"

              a Staggered Map Renderder

              ","params":[],"returns":[],"extends":["TMXHexagonalRenderer"],"implements":[],"members":[{"id":"uMLoLzX7OK7lyffsjC-JZ","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":"ylRyZjb98LGmTTMHqpVeb","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"dQXM8tcJV3gPK0tsDCNYw","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":"o5PJt6GXG4nD3KWI5Rs4q","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":"ijP8TH-AhJz7yO9wYBBC1","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":"NhzY75Te-U2uhPDRThy0X","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":"klp6oM4JHBzu68At1KV88","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":"KGtL_JMWjQqqMBjkFu4Xq","name":"TMXTileMap","brief":"","type":"ClassDoc","description":"

              a TMX Tile Map Object\nTiled QT +0.7.x format

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Tm5rzNG_H60ZNvxbAOU3H","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The map class.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"U_TL1oZm7H5KMI6IQoYvF","name":"cols","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              width of the tilemap in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BHACvwuD9OORP8JVBfbqS","name":"infinite","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              is the map an infinite map

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"id09RH0CJxmqtPx5WS9-t","name":"name","brief":"","scope":"instance","type":"PropertyDoc","description":"

              name of the tilemap

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dFw0Qx4kz63w6O4M8MoJS","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":"yi0r2ZzOZ7EwQ_SOOdCJm","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":"yVRvc_5s-84ihShaGl6Uk","name":"rows","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              height of the tilemap in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qH6tj_58j4Zu8QFckrI1r","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":"TOBeAAS2TdnnPWsDpwhw9","name":"tileheight","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              Tile height

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zepQLt5-dpPjWOq6DSPDw","name":"tilewidth","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              Tile width

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

              the TMX format version

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XtbRwyq0yWVJvOBSy04br","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":"mGX_T_L9tayO8KztS9mHQ","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":"fvCM5p14JyI8VGFcsYgY2","name":"destroy","brief":"

              destroy function, clean all allocated objects

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IG_UPfcWja5Qf5MhJQcjq","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":"mSS0vq53bUNsr0JMWv4sz","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":"bzywexmX_LQkDpgfO1ADJ","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":"sBOMrdC0mqzX4041vCq20","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":"kgSoWKpoVec9NVtr1iwFr","name":"TMXTileset","brief":"","type":"ClassDoc","description":"

              a TMX Tile Set Object

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"8liw1fqHUa3sd7pG9JJ44","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the tileset class

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hyyWqp9YzQ0sfsshlBZhn","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Tileset contains animated tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LdgJBVqaiyilka8GuAPfR","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":"16AjW1hVa5c8l6RZp08En","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":"mI38XmK7slGi5iVJI6km4","name":"animations","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

              Tileset animations

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4YJGIcd0QoVLBPFF0OA1h","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":"U_5h9m0_81TeRSjMelXo9","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":"se_xnT-z5NXAcYTrW72Tb","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":"c4aWLn_I-qgjjhQBI-uai","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":"_Hn53wj3KaJ1CxETrz9DK","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":"ehhvJHeknOokmQnzFBDXw","name":"TMXTilesetGroup","brief":"","type":"ClassDoc","description":"

              an object containing all tileset

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"ftEcqGJ8f8QBmfHWFpwXi","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":"9plU2gd6tW-71h5VQKQH4","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":"P0fbxoAR4HkSJPtAE3nxl","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":"GG8O9Njr1I6JK5QTx6BCT","name":"Trigger","brief":"","type":"ClassDoc","description":"

              trigger an event when colliding with another object

              ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"spiaBtpSCHLdArzWAWk9s","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":"xjzBst-_1hnKbI5R2HEj0","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":"brRBSy1wzJPLUg-EhgjUv","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":"4g8SNArWQF7iLY_w6Bz31","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":"QXGMvgQCnG6XEkMl5KDlZ","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":"k8lWznAuYRHh_4MQfjwvB","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":"eS4NIAkzchUybUcftctYw","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":"r5Ks3NOChXIQAUp16muDm","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

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

              absolute center of this rectangle on the horizontal axis

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

              absolute center of this rectangle on the vertical axis

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

              the renderable default transformation matrix

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

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZZXkY1eaYFkf3A4PMObEr","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":"zO3PiEsXmunJM0DVuPOOR","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":"NdbVn1pG8zPBPM4Warn9r","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fvbn5afsPkKBI4vwgQLBX","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":"-i9tnZ9SpWOR7oxZ-HFVj","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":"sEvEQ0FWjAM-7JmQ3C2AA","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":"c0QXlnDFsxzCqHmC3XXGc","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":"cl53hZLZ8CKOKc2QjCKcq","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":"Dfu8K7AAaCd6rUZyEPg-c","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":"lrbzFXDjx_-AGulxbAYsT","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

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

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2ygRI6aFCsW2gMGpoUr3V","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":"LG56WG1XhHY21GuE1b92j","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6-jP8gdYtCcC9oPHFFGsv","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":"zY2CPYzbqNnutY4frEPgq","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

              returns the parent application (or game) to which this renderable is attached to

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

              the parent application or undefined if not attached to any container/app

              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IXHZkJ3_gLjvOWmObL8Pq","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":"Q2jxURYRXD6rtKCXHi0tW","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

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

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QBawFezpl3NotH_GQ71Fr","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":"Jod_Ra29QcxNh30ma-5j6","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":"eNrJvySs0kNRyUi8Y8thP","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mn8Vm_hllzHk1IZOnyFUm","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"USUPwA6aIpS76uMUIVqe3","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":"gV_uF1KwikdJpOhXZrtrT","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lE-1KZdqsiANjyjFLyksN","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":"cX-3Dv418866autK1HxmL","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":"lFejBSCYOTTXRKd9qjIoh","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":"23uJrKDttGDB7jRNtqdxb","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":"5M0JA6GByUVxSpMWIIAv1","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":"QCvxPhoUTBiJojrI-Wxvf","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":"QbK75bZ65tk6XJk8k4ACe","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":"Sl3vmpfBRuoQZH646lPSm","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":"rO9rNxv56vzeGCBlo5q1Q","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":"biGM-y39d9tWMZxm7GD_A","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":"lo9Gfd_frrN9W1q1EuFhO","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":"2BVuwHyelPBOZ7WfqomfX","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":"fZwUUylAJ1ipiUcJF0Ibg","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":"8NJQkyA0t0vds5XIT9bXe","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":"o0_ptsPw5MuXfaV8p9GQK","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":"FjLr_bOD9MM7_jM9FRHa1","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":"gsXqAGKI5aZ-DEGzSjI1c","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":"2_P5SrpR4zYTm-pG3Y3qF","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":"41q63iq1fqczkE71_L4lZ","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":"qPjsNdflm2fq4ivElPfSM","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nbH65T9YYH31pAxpyYzHH","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":"OKN-EIR9zMtZ7eD8hCYbt","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":"ju6Vj9JsfosctkNwmCtnZ","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":"ra21Z5ybBcUcIi7tAM0xp","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":"prKGaTPSFktUCIRRzR-u0","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":"G7FLQWI1HxHX5oFOGlVEz","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":"OsD_tapoz36PjH0mboXUJ","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":"lb-fNdq1iVl0NSEfQr42v","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":"4doOps7n2_NHvvQWyK1R5","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":"t1qBAQXGrnO1M2FldnFGP","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":"N1i9j7BskjecBsX1ta_2M","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":"kCIvWwZT2bbwLIPRrMgr1","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":"XiCLSYIZHswCgj4IfSg26","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":"qjQnqluMNg53ifuTW86iZ","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":"1LXrhbKv9e6ZJHWKIn3lg","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":"G1z3v6qwAf2-HHAomILT_","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":"wJerqnHiMaFT-gU_IognX","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":"gN70hrs-Bf505BTe1yDYR","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":"VBAbe4Cxq4SEKwne1LEiy","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":"I4c92K4gEsjgy75OWJLVR","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":"ds0zE6rAsfXjICWfX7Kt8","name":"triggerEvent","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              trigger this event

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6LXdr7z_dZt78EFhYLeVr","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":"vlnVazGzT9SsWX6fmxeuc","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":"urlYAitmtSD9SJieWRicL","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":"oVVB2tVBBn_ySYYbXxjKx","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":"TTku4Eq4Gz-jzllYHU4VP","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":"KPVDbnkYpu7fnUJNhShfH","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":"Uu4-kSmLJ07RwFbNOlwK6","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":"Im9Y-N46ZPn0DVsYaE1W7","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":"Ue7Pv7Tg8U7KoejiVJlO9","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":"FwfevooJx0R-o6V_0ksLW","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":"IOMcDG3fWalmAmj4ymynN","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":"6PnDKyyCWfPzCrC2f2xgd","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":"OVko2s_xTS6tUR_yrCotG","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":"l6n1NUr64yt_ecyz_9MpV","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":"QlkV0bSeuI-EvV8Dwscdk","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":"F4-6iNES0A2COwn4IqCKr","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":"5Uft9BUpdCNINNheztDr1","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":"5rIUWUorq-YVzmk-tzJeH","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":"dpHRIH2MSD89zQR5k0a8L","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":"qqyuTj5bGSahM5c-Pa77e","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":"yPTi89xf-8VWAVITI1H6l","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":"2Y96gQ2HodbL4eArE1z8W","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":"0SjWLAprV4bZkUp4cxrq-","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":"6jvm4N6ZXGAZL1DPTV1Ov","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":"k_m0TV5Jweb6lxTIdYjQv","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":"yTvjfyd0xSMA6VBq7c9h1","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":"nKIJJ-7nsaV1tXIX9JS49","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":"INEdrOEK1ACDegxbOPZ4S","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":"iFVWOKIlFDDiREpkXwtGW","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

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

              absolute center of this rectangle on the horizontal axis

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

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9YZ5yoveZxLNU7ktT9K_3","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":"zlTgPwOqFPCSKhp77ZHjk","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

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

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hoy7iulYZaIBgyTeuu71-","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":"4HW5nDKsP8_NCh59fRU2k","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":"TgKn8dZjFteSFjP-g1NjQ","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":"tcqy9gjNIxbw34FE0I_J1","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NPB1nv9QRRLvcdTxebQDr","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

              Tap and hold threshold timeout in ms

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0lct07Pmztl0lkiumAtf2","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if the pointer is over the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PalyyaOZwliKC1lScCA7X","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":"IscRcCSgFR5qoZbNd5u2A","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f4RpEsNjCsSPbnp0ymjK3","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":"ZAk-iKVXo4D6oFSECIZ7t","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8FYWOJzhwd6g7UN7B87A0","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":"Pk-q2dX0pVzHwYSDejsU7","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":"P_O_I3YwzwA4z1dqaEVE4","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":"QvZpKLEcx4onLwCf6CtYV","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be tap and hold

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HrEdg4FmjBWZiUToVHsIJ","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":"7cgDEE5pPXkwATkDWDlEE","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

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

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FySFgBq-cN7_GWGjvhEOG","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":"uAoyLWcDhQkqx7XeX7FJi","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FTkjUGxFdPmWyL4o52pay","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":"BGWAw24Uy3N4MSNs1_mhL","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

              returns the parent application (or game) to which this renderable is attached to

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

              the parent application or undefined if not attached to any container/app

              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yYQlgNzXUCYjI6TgBC8YT","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":"RM8iKCn5o_JgQY2DEGqs_","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XyBXzGXkJQFN8Hmf_LybX","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":"7xaT2EOBp06z3YjPOSPVx","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nu-G1_g-xYq2BlBjogZpC","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              whether the container is the root of the scene

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-9RzVqEog4_-9YB6sv6tR","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":"J8OHPmjejA_tg44Y-JkFY","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":"E4FGQbxHNODropddpbSco","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":"1PZR4yp5XJEuipu2cUZCb","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Axc5BaKhmOtKTo45qitdc","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I4Cumi4ZVlRQheL3qz-fA","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":"pjT6o7Hbob7KHc-K8GlJ2","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6sDJ2BsXhNA0IXEk_r5ly","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":"-qvhCagJo9VvHcr99CN_Y","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":"Gz5FsJ2ItvZC3WL8gfn3D","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":"FgbyUs9222RqCMqw60H0l","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":"DK-hz4sjha_yc9OvcnTXr","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":"qEpIwxZVtfEDtdvggBSAm","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":"m6GieZ4x7DOT8-R4dzoMU","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":"cTcrRHdPLfFqbmn1MyI0h","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":"TBZLVZVKOJld8MzYUUGz-","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":"2wJLXWqOBMt8x-ym11t6Q","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":"NDy89T-4bT4aKqVVbgnho","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":"GhS3OZIg5es_tUGhUhTJa","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":"VkcNZpx9VmjQEjX0hygdU","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":"F1Ix72HO39PqZom2PKBiq","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":"I6daXwBVW4ZEYtnibDHR4","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":"X2Z9Xdl4Mh4CWijwK0ZkZ","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":"wbUEdknnidHJPEq3r_Ad7","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":"e8ZlRoUCRPTDR6bKFlB_t","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":"-oqhCcFXT0X3OJHOiR4PI","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":"QuwASOu_j89Nb3WdoF0uE","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":"n1ANz1PMKJcPiwGmq1_z6","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":"cyYQCLd-zrJIKtrWvFeUo","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":"9dXtUCwrIqGV-zrrRih6F","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":"00wbQvDH4VVdxMZ5dsvi6","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":"HOr0Oem7hZRx1VMG47i7M","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":"0GCdBNtsh7piEma8D1OWy","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":"WDQeRxw_p0Y09xZvESA3P","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":"Ne3KgaW4N14pPpbDGe-OS","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":"sLHJmp3PoyQVop-jW138Q","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":"S0n3b_pwIrc-PMhP7W0Ps","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":"c9HaR1GVylCl-ATdAfszv","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":"B4c6Qczui0LJjnZzujAc5","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":"C2pKBi8fxsVCm9FfrM3PZ","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":"EtTZYo00KhMMS9eY2ET4r","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":"Xr4XkEYGc6s4i1cEP3_GH","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":"Un1FdXDAvbM8jgdvql-ov","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":"UOv5SZsFkMqo3WRYgD6Rh","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":"o5ogj1mJxiVTbeVtaxz6j","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":"9YrwSVmiv3xYckI2E437C","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vIxnBqS5ns7A7vPEGC9Xy","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":"udAqcBU905BlNI8vOQTsi","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":"y4RE4iu0XZGuirvSSnm6n","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":"uLwBh-UZfg1MC_xU0XYjZ","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":"VWWXgRkJaIYIxTfonG7CC","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":"2DhKk3TOagV2Lh3-BjxWM","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":"8glPP1rxzbLPbdiCvilwa","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":"uxoDiGygiap3J9f8iVdkr","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":"6kL5KiNNWN1KuCXJeCBpj","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":"LGDqzjVbu70GfZaySaiWO","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":"1-13JgjmurrXLGNi-cftm","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":"TANTF50ENBvXWBhCTwv1k","name":"reset","brief":"

              reset the container, removing all childrens, and reseting transforms.

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XJdYw4OqUtJ88ztXa8ckD","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":"CdL_qM4IK_UUNJeM2gJ5w","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":"nbu8pM3ldbPLwUKPGbZSw","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":"KEv5zcIRix-4fhwfcgAdM","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":"dji9pa9AsVtUn6rGasfVk","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":"Hay6bXpje1ApJlK7HCFWT","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":"kKZ_pYTNCYpgtvkh8LkBI","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":"rACzKwro_laIWvGh5QMc3","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":"CMQgcvtnMAHbcSQaa9mZg","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":"QqGymOjfY8N4xOvMnZxYN","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":"Y7gPpLVHjI849oFx3Wlp-","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":"huZujo3I8_DZE7P2Ld0Bn","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":"SyQq1lGMYoY9UwwRsxzlf","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":"dFLyM_PojcmFz0HrSO2jC","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":"7LuFlzRaNXUH5u3FknnLR","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":"A8sDExuPr58_v9GNHajUd","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":"5h_5YQHJbtodYh6wAbK28","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":"8hC0mjgwP4z6FZW_pGDSE","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":"FrqGm8lTgJJuO8wm6kW2i","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":"1os5wa4NRmQJ6ZXGjrhy-","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":"hCmVa509AL_oGMiT_SEJk","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":"YLAX7khvdP5P2TafF0jjq","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":"9Q7ChgNaGG27k4Jdo6sTP","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":"jCUcwMmHiQ3zhTtzBSchu","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":"RZ7puVYfhaM8a6QhqJkF8","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":"76cupgvbFvDmfqBFJj3RR","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":"K2vb3N2fENQnQqoy-qYgE","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VApfQYJotn0o8EsvJBXXw","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

              animation cycling speed (delay between frame in ms)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C3H1eTZaN56FCDuyAqEDS","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":"BzQ_Ul3lT6VYCe7k3vjR9","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":"qikuK5j9gYyVqFc-iZMgP","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":"tqsjn-4vTP3dmlBXGjK62","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

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

              absolute center of this rectangle on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XCWx9aLO-MhnGvKZxS2uZ","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7WZ6AYmTJgL3N1ORvJmPx","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

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

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qGJZaq0HsnhcfH94-Mx1q","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":"GM5wih0hWnMZwIgZ6U10G","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":"hT36vJiMZ1fQctQ9YBFp5","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BEIVEBD8eVWtpbUCyzYiZ","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

              Tap and hold threshold timeout in ms

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w5IpviihosQ8vU2h-iWNO","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if the pointer is over the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a4p4l8xNwgRWX6dLBvm1B","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":"Ckwgk_F-GMpvjfsNwi-s9","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JwpLLTkFX86M_lz4oMAoj","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":"utYdTikf2S-i0iZvsycru","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":"Ic52SMpDDa44PCyTjCSmL","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":"s4GEodnkaAtGJ4FbCm2i_","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":"XjRJhYXrJ-13oQN9bmKvW","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be tap and hold

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gBy2QA-kUWcipJNg5nFWD","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":"loQOUIdlUODWKgp7ydu-x","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pijfTycZpbYNYOacY5iL8","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BXxw5Sphmf2dUtkdkbVzE","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":"LjAaqaPoZ2Z3w7ZcuJk5L","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GsHEqNpkE078d3jMVn7X9","name":"offset","brief":"","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":"LlqKAuqtcGrJNULyOdPja","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":"Wurdk5pGdSo4gx4gDH0XK","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

              returns the parent application (or game) to which this renderable is attached to

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

              the parent application or undefined if not attached to any container/app

              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dOJrLolL3u_DPEYdrulBk","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":"1cDFWeMsy34_X4uS0LbzN","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

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

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C5v15n89SRlK_jKmAXDOi","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":"H0CfTZ3Ja1yK8xwkg5Dzv","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              The source texture object this sprite object is using

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LH5JmWzu5CHRQHeFzXiMt","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":"BAWQo6Ja-csHHg18ZsFzp","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2cCiMwQjXaz68Nb67QXFx","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6uQn-tt8zP8yOAe_e9Vh8","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":"bhfuRkE4cnEG3vXEoU7ka","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gCTo2RGIKJjUv_Odii83f","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 defining 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":"4Xi-nFP6uqvOWMOD1DkLS","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":"_Ry6zP8_19A7aLi9iSldf","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":"9DzVDtGkHhgt2298bgTOE","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":"7ILga3pUHTg5WjvXmso54","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":"IjDbxTZakZMEjX06wWPoc","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":"R3chRrLc4EBHK5nNDKJcR","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":"73h2NZob4svzbLwv_MJte","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":"moAieApT60A5WTZhiLQf6","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":"FdyoicyVC7VhlMsUQYml-","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":"_noFvbVZyoBruTdfnbqqG","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":"4PJGBkEd0d89mMBgN9WZE","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":"DsakWggRzI-7LRVPq2hC4","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":"d0xFVRvXMkEq6JnAxfiSh","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":"rjgVpV0QZ1b0PzoxJ8HqL","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":"MhKeFsCB__SveENCw8BhS","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":"zfGLTdw2It_fh6kw9PSsi","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":"dG__zVndUjL-Bo0APY8Ul","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":"tURmKHkVvLD-EXI-bOZCx","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":"4HksPCtP6XpW9NmqTsqJD","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":"oxOvEfmgB9EpumxiWB4eE","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":"FaSKzuBBimMhepKRJJ2dy","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":"LmGWsDDi12rabwsKtuHtx","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":"qKhTqrf1_dKciPlci42mE","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":"K44v4DgRAtOQ1joYPtjmf","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"faE2XKAgbFMw6D14d-KUR","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":"zTl3gQIYM1iK5oZzXiZUC","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":"TnlIctoaTRDtVr-nT6kIZ","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":"vL_y93jhT1S7Lo_xSISFQ","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":"J0feIEMI2QToLZs1QrfzM","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":"itqfM5wsZdTxOrUZbOdGa","name":"pause","brief":"

              play or resume the current animation or video

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zx2U1on1pZTwkyIXejwyZ","name":"play","brief":"

              play or resume the current animation or video

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-ouG4ClU_FjTrnyGnYEpI","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":"SLoOz3sGzBs5z2HWuokEW","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":"SVbA9FR5gpTfOgGuO8Bcn","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":"XBXtD4mgfCe1rdMMAScmw","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":"j4QGilwr3ybQ3gEDpugBY","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":"AqbCopyTwQJC_QhLmTuXN","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":"yd_fAizz64DaoMqtpeweB","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":"6965uX0d6NzLbAQ4dPHs5","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":"T7rEaLw6NrCQ17-bpf15I","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":"vx5rU1x52dkNUcnC9Ck22","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":"s6yrS5RwJCzzXuzgWEIl8","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":"G140sdZ-DMMxf-H88a7Vh","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":"a02vNJtqAuhZZnajDzlAj","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":"D8e55BKdt0Kkf7mqD32Nw","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":"zMvcKhSdVazoBnrMviJe0","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":"vxxm92QUdyD2N21r1LfL4","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":"d1fV9Hnz9lLUujmFW-bA4","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":"raktJDPRmtmnmSLdyva17","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":"Sn69xAQJ2PYHI-hD3fpQw","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":"Hzbion4Sr6OEaAJ-9mFIO","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":"LfAsR-NGGL1b_RYXttg1_","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":"Be0bmKESwLLgWKXowhKqo","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":"L-D6OcBkH5GaY0WpdB7rt","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":"VRsSf82mfW0FDhx9S3v7b","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":"blJOgkjknywFVRs2QGS04","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":"g7mHOanVmCgnRgcRFVf_F","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":"WqnGR_ByM3Y4Uf1eLsRl5","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":"-WasFQWd4kfp6mFIXO_NK","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":"2hkNZppedRnIMnqTA0Ty7","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":"G41btlZrO5bFWn036aBA8","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":"mjMxIoAuUHuH2S_BHEM9V","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":"2R20jyAIi__LI7cPd50YQ","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":"THm3RuWSIt_FRNlMr9uO5","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":"nhoMv208dfc0FhfegPMSS","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":"rSa1vFtD74DViWnncqQi6","name":"bindKey","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The key to bind the action to

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q2QzANniDVqurRu-vOKkq","name":"bitmapText","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the bitmapText used by the UITextButton class

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zTbcbCIxWwDanvFKnwvH-","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":"tJ6l8k3wC7AuHTq-SL5BN","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":"9gd4TvnFcfHxtSFFMoGv0","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":"XDfwhvq3QZTyDwPhsJRLM","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

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

              absolute center of this rectangle on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NX_fLEaxpH2GU-34bJhlk","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r1Ald9w5uy5XFgWUDs16g","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":"2BzD3VqG-8au_DCRNwTUH","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

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

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"viwZpTwwSXc1r6NqMdtPa","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":"d6tVDJoPAIUHBqvX-s2vh","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":"0vAv5hNCtDMDaTXBG6aNT","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":"7bU6BnqR1REsSBomGlw2M","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4v_oA4HCTG2XFgz_-peBM","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

              Tap and hold threshold timeout in ms

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HB_tjXlxX0PxqHPrLKfHO","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if the pointer is over the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s5P3-ey5DU-pM3sDFP2IW","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":"w_NVcdOjgUUlULbJXPSr4","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":"warOcRXiAdIxq9OlWkgt-","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":"AOmYbIVDEfWOiTHADQIBY","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aD8qUZB6eKJEXxIclU22i","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":"gn8r-lDr3mVwWZEqiIrFZ","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ln6dQZmLuwrnOhrjH1Ldk","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":"MP7DAvZE8KyC-BU6X66f4","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":"e1JXBNR0SkXmvuCTpPLD5","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":"WoWWb6HIcqgkzy6q5eMLc","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be tap and hold

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C6oaBpyY_y52-ckIKNZ88","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":"HCqxtQUtBn6Eh8uZGi_vD","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QA8XaWNScHMGepHjyQmi-","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xld8OXX60vPBsJv4Ko1Kc","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":"5-9ACJe4yzPDadrazdgPy","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gbxxhnQoeaZrFi7mTG-7E","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":"JAXsR8wEl95VOcGRKl9a8","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

              returns the parent application (or game) to which this renderable is attached to

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

              the parent application or undefined if not attached to any container/app

              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N-YTYnhSVOV1tVqDDhD_S","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":"E608T4Wsf1tXWZN3riPEU","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NxztdsGiBvaLStrSOZy9K","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":"4jrGXsyoQ7_saVlsviViT","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7rfQX0OW7tDCOBN1i_v8u","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              whether the container is the root of the scene

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zp9qob1VHpa8jLtJP7ByZ","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":"A-0Ica0S_U11wly1gmXb7","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":"EPCVXj6MmZEpcrglicVw7","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":"5RjWNtuDTjsCgIkFF4Idt","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":"yL-NIb6ljraEESqzDgWa-","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":"ggj_XazF14kMudI3w0nkS","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JdGUlp-Y2NI4WYRzXw1IY","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ghoi2viS38AJ4KwdbknP8","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":"m1EZFa6luwGcoba421Lvb","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7bt8njt4kqvMa3NvQwzIO","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":"6_JBhbvL_F2EPwCciJY7k","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":"H1pNYp4XAarRzYa5zVOc6","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":"arishjmqnM26G9qA13MrJ","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":"_ZHVhtCwir4WetGb_jFSI","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":"xV132Y3_E3xorjNlMRLYA","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":"gg9MfkM6qGHWGuq-y5pXa","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":"k2NWn-WQfLwEFp1x5X1E6","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":"JsDG7pednjYyU0W89PAIr","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":"3cSULqizlgwQnTI5-QUtD","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":"e57X0lzIou267g5rFP8Al","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":"dot67h4Z5-ZFjWDsmf4j7","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":"F0eHxbCunOGmmDR6-3D7q","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":"kd4G3fHJph9Bagz0J57qS","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":"HlRIOcmNJzh3DhxEsv-s8","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":"cklgCiv93LIOKvixWMWFm","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":"FKUX2en_MVSAezYE-2pAt","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":"Bu7mhljy8RiPAN4YPEOHE","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":"Bkgx5JUkhhgBaznorPrrl","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":"oUs6fTFRrv_DDZU2CimFI","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":"bJo27Qj4Ey7mU0CDuxVl-","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":"7tbHp3R1cyP0sHegRl_se","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":"MnYqzEPAqyCAUOVpDoYpE","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":"3thN5AB4msHj4p4GApAWK","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":"3w-VffT9gIHbNARa3c_68","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":"x2GECmcU1_x2E2NPQwmNA","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":"OlIiV5PBqNXP9bZMYvjRQ","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":"F7Zco8f9yz_EI_NRSSnuk","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":"IyOLs7JgRmRhwiwSwVq1H","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":"j-yBxJslrVuQSZSv39tQN","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":"EMbSBVsgNYu26-6eiKFqy","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":"3m70QJW3KyoxMD56TnguT","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":"w30IhvBOJYAnqmHg1n4_i","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":"xePEEVUIQ_3kxof0bU_mK","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":"qVM_UB8wdxruvO8W14WL1","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":"AYN-yUk3KLyc8nrgeN6cO","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":"m5JK_bF0GPcNCzqKxHjYb","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":"VO4MASPLNAzvwJd4XwtE3","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":"oEBNbqUMN5aa_h4e7Yg7z","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ozlKZq3o5_oDiZj9OmVrQ","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":"Pvp6hjZX4Tox8YBSE-hed","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":"RF1rrWfrOIcyFe-T1MZJ7","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":"61755GKfBZM7-qupHcIKo","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":"qZEmaZ_vcJUzR1j77hlyf","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":"EEo_XcjN3n1G0AxtTMlck","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":"0-YfTmCRiOGD4XfUVS7-p","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":"YRPhnb7-_C-arcp7tJ1NJ","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":"uHj39N1CkdBthze1_DoWZ","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":"ovoO69bBADzGzMmIr_esp","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":"98xSiLDjaCDFwerU8764W","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":"l5SDL0mf6kKrFxgBgVdt2","name":"reset","brief":"

              reset the container, removing all childrens, and reseting transforms.

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qzj-VsjyRsCHYGBiFkRpg","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":"yqcX0Gn_TS9C-dZHaLd0d","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":"5_fsg6qouNA6EF5FDhjrU","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":"9-XxrPGu9bOYxua5cAmtb","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":"YzSVCZ0-9TN4mBr_2RqPA","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":"OSeRdWR-6VSwzhZFUPCUy","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":"Y973wQ9S2U2hwvi6nUAij","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":"HK6VRiNIYBFCi1Pjh96si","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":"uqJR6Yzw21Or5sALlBf3H","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":"XMLN9cidekOhGXlLInxGw","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":"leGwAMe1vjNZVOnK23Yse","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":"MJXKA5374eyoOh3DiF7fK","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":"SGjcw3Ojr0Cd0TaQDKeWu","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":"tKLsqJHjyqPD7i4Onn70s","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":"sJzJGD0CBsULlP198SD8k","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":"TlBypHIhr0EtnzWJkXYSm","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":"6GeSs1wDvDlTmikwsTaur","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":"jTRfxnZrQJL6gdl0OEPi9","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":"YcP7ezCQQNi1xTY9nxUKI","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":"q68B0rZcoeCplX7eKLSkB","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":"Wl7524pEC-3Snm6he01h1","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":"mX1n9KpWf1HMzYwjqyqpv","name":"Vector2d","brief":"","type":"ClassDoc","description":"

              a generic 2D Vector Object

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"UwM9PdDPKIaX8sQ9CU9S9","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

              x value of the vector

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

              y value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tyu1kw7ZruU-g2CJogVAc","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":"HSVF0Lr1qpTQfPseyorJA","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":"5-s7P3VVbtkCPLDoI0b7x","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":"DvGHp_4C1f4IFdzJ8X9xI","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":"5gz2YLjUsyILW1EwVMunb","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":"cUlV-BJxjzrshYKFDP2w-","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":"KUgwYQJ5MCTaaikLGE1UB","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":"8F6IbWniHIaK_0d0HNG2u","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":"fswb6he8E29Eoqhwsgjld","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":"mUsNi63WXDbxoovUR0W9j","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":"SkjM_4T9Y6Jfp4sqnicT1","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":"2wlyLXD62iBDmi5kdOm4K","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":"IFKj5hA7gmqO2pG7VjLze","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":"FQZto1Clz72fwSyqkxh99","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":"bQzf3OtoIWqZVxFxkFPjv","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if this vector is equal to the given values or vector

              ","params":[{"identifier":"x","optional":false,"variadic":true,"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":"qgAGVxsrB53My0Jpx_UZf","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":"sfh-xYys6J1bxyX-nWMNz","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":"BpFR451s7jEL-Nz9dZ6NF","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":"sL-KlLQgrlQFgj2lgr9if","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":"QBzv0g3xcDQEPla-l3YC2","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":"iFIaB-SFETX8nQhbEPj_B","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":"jPuqymbSc3GeFhVsffcRq","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":"M922Z5iOHe12TeutrPNy5","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":"iUkU776eoO-3unQ-NvwnN","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":"DFWINjnOCa0EyQ-L6O6XR","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":"1wIZ8QeGhPfAeZOBWto6m","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":"DcBehYLFTAEOTEu1Fl2d5","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":"ogrmqTb9LupaZ93okeAsF","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":"HKHxvPrj4ZohWjoLi7-wo","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":"E0krbq0ew9QI61QRRHAhK","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":"KoAzox1dWWmxcUXPFiZnu","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":"KQiomgq9moRPlUYmU314I","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":"hl6bgZxssj0PgaMgEwn-N","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":"BZTfd6w7blxawp-WeTgE9","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":"EXah28uzKguXa5jm4gJAH","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":"xM-xsCRownqOA9EVNTUGw","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":"ju5Pltl6d9cWcjbIVNbzj","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":"iopoeEWCxk5Zeo0YUrCj7","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":"to-GGGpJ8Agq5uWfFN83d","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":"WwY8oNyb0re3X1upvbS12","name":"Vector3d","brief":"","type":"ClassDoc","description":"

              a generic 3D Vector Object

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"f4m-Wm3OBtd5nT3CvJuND","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

              x value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lFQ-dGFGbIf9X_dByAhwS","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

              y value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fp7CHPckC-mSaqfR3zQqU","name":"z","brief":"","scope":"instance","type":"PropertyDoc","description":"

              z value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mcKcjJzjg5lJoTuDRklYK","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":"bT3Oqe21k4htSv9WfYkmh","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":"k2HK4QWPqFx92BHYgvykV","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":"I5T8MqXIOCwJUN65rwhrp","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":"PV5SI3YxbjBZnbo64fYL4","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":"x-NbwDBSXdima3-FvkT4G","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":"KlE21pyjUu-760Gfr0UtQ","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":"CC5e7qxH9BrVz-mGmWXOV","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":"YSYfnWrqxehaGJBB1HzlO","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":"LRMD5psI9IuuUxyR4DIwp","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":"bwsNYxtMfmW7O7gdRMEvw","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":"RjHnFUO87Z-uKGcuKmoT-","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":"BNQutxKR7GHzr5kWjb4HY","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":"FAa7TpSzgpFF1YFOQYBGU","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":"TzwXnsO_DpZNdI3UsZYpZ","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if this vector is equal to the given values or vector

              ","params":[{"identifier":"x","optional":false,"variadic":true,"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":"TufSk3Y2QSXVHMAM7jZrC","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":"mElb7qs57MnrznY2woYIJ","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":"oaQQWxUmfOAg7qEWC8Hyf","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":"cvGx7S6ShwvOe3_2J5RMu","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":"6kLC0U-3km44NNIKIFcwK","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":"68FcnVRi-0GIH3Q-LLfpB","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":"NVVNRNu8Sy2_R3nyYSaAW","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":"ikI6t6KwKTzLCP9CZ0B6U","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":"_cc3Mfwu1jE0rmOI_b5f7","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":"wjRKdtDYOn1LTYPDGQq0R","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":"LXXbNQ6T7ScfftGtg9T4u","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":"4phjI1keKvbMzydoVWjiA","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":"yTslU_GiaqxmluDGCulEo","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":"dHS16LT2gZBUP3WT5v6oN","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":"eKMGLJXuBH05RypamSDfv","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":"5kE8ATLki7U4wVWIQNuOQ","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":"qwjpSGkSQzsJF1gsTp5w_","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":"SFpNPZcPYHcHMVOhc4EMS","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":"ODkEsyqM3ibTuBa5c7Zxz","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":"W6n78WwhG5p5KM-pJsV8z","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":"dn1R_-iS2kyL0T6nmTbX8","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":"4YYSrjiESpi0apnM0_vTc","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":"wQ6QRudBYt2XC-zCKP1Gv","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":"TsBNSSTtwp8gdPEeaK8Rr","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":"rUPpOriCAYTnCePL0g--0","name":"WebGLRenderer","brief":"","type":"ClassDoc","description":"

              a WebGL renderer object

              ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"gG4UxtHsZasUQaKDUBK73","name":"compositors","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The list of active compositors

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

              The current compositor used by the renderer

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

              a reference to the current shader program used by the renderer

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o84ISVZiux-g6MTBuYsRj","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The current transformation matrix used for transformations on the overall scene

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VgC-RrWCPY6yxsLGL7keS","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

              the default method to sort object ("sorting", "z-buffer")

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pwUT512M_osmCb4eZLwn2","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              the requested video size ratio

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

              The WebGL context

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wOvCshQEs57m1hedM5J7X","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":"nvsRgVISc8tnai5rjR33x","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":"5wv3f_QDoB_197NpQzdGU","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":"3jS0Smf8axAeNmJNKLnJU","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              true if the current rendering context is valid

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uk7Ssvzf7geHYRKSht1bV","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":"FmAsmc8v58gp3mQQB3yob","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The Path2D instance used by the renderer to draw primitives

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mKM30mR-WsqT-94vUGspr","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":"5v89bRth_etUBQZzqxLp4","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              The given constructor options

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CK6nLyRc72pLMNOBa1UYm","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":"YLwvvTOkRMYx_ewQg-Fc0","name":"vertexBuffer","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the vertex buffer used by this WebGL Renderer

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"01so1xtUv7sZzXi568TnH","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":"sK_9VBKbyFddzBEI1IczV","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":"dQ-V0zftZcdWFgEilMO1b","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":"OmGORQggYar_rbra0Rbd-","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":"pFYmQFKrumguVJpVM345b","name":"clear","brief":"

              Clear the frame buffer

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GuAO8pd_oqUDIGw8EZ8LE","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":"8QThz6wrXsABPerSL0IU0","name":"clearMask","brief":"","scope":"instance","see":["WebGLRenderer#setMask"],"type":"MethodDoc","description":"

              disable (remove) the rendering mask set through setMask.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uEt8ycdQ7raf0od6-b4Qv","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":"HRoe9FIw5EXWp-Gks6WWo","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

              clear the rendering tint set through setTint.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YIc2NqJUUAS6JbLU7NRv8","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":"TIRwtcziH3tEcqNUawNiZ","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":"N2QoTNIqmm1tJqBkXH8jW","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":"SZp2rezcjEaD2td2fJMPr","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":"dt35WvjDLbqraw9Q72qI4","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":"LWnkGHO-0ih6YFK05-yYa","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":"2D1mwTXdpua83ChbGHqEC","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":"nfZApaqFkCwGXOVXz6zjA","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":"KmySJBDD0utHOuOuzC1Jm","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":"bOYs752NMtzc7KEj1oudL","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":"qU0GAfA73iq8XIhodrgyc","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":"QOXT2C7uRnj8VDylubA5A","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":"T1gJVgOQMD-yZ6Xfilyqb","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":"ZR-wMW2o4aig7d5BdZ4jm","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":"-SrCdaOrAWVpSZIH1YrbM","name":"flush","brief":"

              Flush the compositor to the frame buffer

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h-mPYZt3qINLEOYWtcSWt","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":"yG7lXwRsG8BLYqShWwfM7","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":"776JdV1WZaEcI6aoNY92w","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":"7UMwfNsrzQIr_41PeCEfn","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":"YV4LtkBwpEMwdA0GbI50n","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":"DzjHzGqL7YPjCU9C-D2Fx","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":"DeTGkWEaZBjVVAEgXuGxN","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":"6AH7-zOnLxF6sdOXF1o7k","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":"0eo_p7bQHpuhlj7f1Om7K","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":"y-Jr-FrPD2AJL4tmALXzj","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":"QrngU_AJ-RYkObStzUpZU","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":"g1xbbN0tRw4Wdw86_fDMj","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":"6TmppzdiCPZiBediSY9J3","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":"NxiEsqK0JrQeALLxLllg8","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":"6Cw-hNwvrS2JEeI63Nsgu","name":"reset","brief":"

              Reset context state

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YNkhKaQ23wTPHn0tqjAs-","name":"resetTransform","brief":"

              Reset the gl transform to identity

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SHSLPfcZHUai_kV10BB5M","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":"7k8jN4ZcxFiWWl5IPUVDU","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":"seld7tfwbMMvrDQf1q749","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":"_xPuH91-CgtgC5c78wSdl","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":"qp7bO0T6wA4KpuBNO45TT","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":"Im0FnVygb5uy-07aKB7Um","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":"k47exPFv7XSCskdEXyqxi","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":"2h3XRw-cYjX-Bmx8iDXE8","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":"ar-TAoc1OeBDdWZoYByjh","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":"ZBKdzyCNtQudBxJXM_9vo","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":"IQ8ogTxQNeyfmNZ2LE_Gi","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":"jz-ruseYeMO6ZeaPcWKJp","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":"-mfGkdcOFAY0KXSlumg24","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":"pUqPY_J1hW0g83yS1wnVt","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":"yEP9eel-3nyxglH1Naumj","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":"qJgigmDuI4cUO35Cxke2i","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":"0e6I726kRegmByjljKOX_","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":"tT2LGhnEYrYEa-9uOsrBz","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":"4wMkQAvCK0M7qOZXd18go","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":"rG5XTeCArE5HemKucVPar","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":"_HSK-VXJ5S_1TpzMxq8AY","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":"KMkb_WpoRmm7hBBZe7PHw","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":"kJmfjOu1nhCnKehbswMzX","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":"lOJwYNCP8IL-CDIG7UK49","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":"__VB8nC6yLyAvtuuC1Mhg","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":"90SadzDSLOAoV2yg-lC5p","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":"aO9jo8UNYVS7hFkheOkfb","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":"type","optional":true,"default":"\"image/png\"","description":"

                A string indicating the image format

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"nFwk-mmo4U1QTLP5MeVhK","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":"type","optional":true,"default":"\"image/png\"","description":"

                A string indicating the image format

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"KIskpdCmj8cjYRwZhh4YD","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":"type","optional":true,"default":"\"image/png\"","description":"

                A string indicating the image format

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"jsMH_AKZitl2rwS5H4yaI","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":"Mw2tbozecT7v4YxSB9-PS","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":"ZTKiAMTfnZKlTX_688jYA","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":"muZZpmCyZGUw91URJ7APx","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":"g1BSd4qFtBtC2GXu1Nav4","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":"zqI_u9G6F7GlYzJQjhKw8","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":"8vCVpSXfl8xFpJwCKjT96","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":"iJnp4-aCAg7HbqJnA7gXt","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the application (game) this physic world belong to

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HmAyPhfSqPu97RFRwKMLs","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":"UVGVsh4MUcOp8lxEiZcQX","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":"hNPbAA8EahkyGjK9hugg5","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":"e3t2lwIHU7hnSidFHnxWU","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":"Mw5v3VbBskXXeCsD87-GX","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":"AQA6rc1X0FVi9RpmbS9iy","name":"bodies","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the active physic bodies in this simulation

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dIOFVOt-xdMpA-iIJlQtf","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":"fFgVEAkmUhGYV-5yYYWAT","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                bottom coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Hn4JHx79T0K3qd9SfY6Kp","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":"qd71f7ATcvpXFGc8kaKtz","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                absolute center of this rectangle on the horizontal axis

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

                absolute center of this rectangle on the vertical axis

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GPxRettowWtw8yeEf3aE0","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":"vH1xhEjslMUiSwAC4Sk68","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the renderable default transformation matrix

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

                the depth of this renderable on the z axis

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1Uf06Js3QRm46ioSCmmVQ","name":"detector","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the collision detector instance used by this world instance

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e-qSFRo8WAnIpt0hNx8nM","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":"GlkMZu-Pa2uDDTfJNJOVt","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":"Q2IZxUbndLw2WvG5C7t1j","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":"9aoi57uN7Z9An1id6ckkk","name":"gravity","brief":"","defaultValue":"<0,0.98>","scope":"instance","type":"PropertyDoc","description":"

                world gravity

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3aANwdn17nGIxkfW610Lr","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":"4o-qj_4ZHfPh7gQGGHL2q","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                height of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZTIQb5oiSN7qUHjYgQjuY","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":"z2h_-RoU_qv3vzf-UN4RE","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":"-b0KxaOH7uqOOvY4VlNdx","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":"VcRgfZELCWYPx2rh6xAnc","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":"OecI42xzVGUavp5o2462x","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":"njtw3H2C4Rz12gdzINdje","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":"XcmfpmMUULf0-nZP1t9Ph","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                make the renderable object persistent over level changes

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"10Hl_bfkzg79dHmFZu1wa","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                left coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pKvoecGbb6GVT26wncmgU","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":"O0PQgBStgPUFfKHLn0wbC","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                The name of the renderable

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bu-f7KuVLDhv8M7Ffh1Sq","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":"PzoAYLtpzXF3Zj_EVzgIu","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                returns the parent application (or game) to which this renderable is attached to

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

                the parent application or undefined if not attached to any container/app

                ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SZhdeLwmfYLjbROW91TaZ","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":"DYtEWfu_jtOD17cwE97Kb","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":"6ldP6iPH_fTK9T98-563w","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                Position of the Renderable relative to its parent container

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xbu5O8I4zi5plBZ3dIrZ9","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":"YMlo5QQfgNXPIg-_TL-We","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                right coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y3UDdoNqHzo7JUe2d2PGW","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                whether the container is the root of the scene

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wb_5JdZZiUf-i_bckC71L","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":"cQEhhl3NWZNVkf_y-6JU1","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":"TC65FDlvEkcKvyV4Xog6C","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":"T2tlVqfsso3h_ZyBNAPEz","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                top coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sVXVAeaEeVzPROfhcS4KO","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                the shape type (used internally)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nbM5olwcXp_h1FElQiKL5","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":"x6fe4U902w1RjUCyb9Lux","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                width of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dLNKC41Dif1upJ1OKkzFM","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":"wuvfcibiJlY2QBGH2_V4Z","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":"OoUgnRWLjQjQLDAJ02XN9","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":"Mwt1b9_dNY8_7v0ISX5gP","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":"DdmEQkXCxG362xQgLn3RG","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":"rJ3pks820X1DvCWUMRNqI","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":"4DlV_31T7W6Imc-GRF-XX","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":"v-8BRPQZjdayXTHLYz_ht","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":"8i95OyzEScNIboHDqVSAN","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":"7J5fh4V_IUs57y220GTaC","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":"hGnTLIuzXqzQdmp6ohmio","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":"j6xgu2Wk9R0nUGt4LEHz1","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":"YfOm_eFxyC6CHelh_fX2q","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":"yU9GNtYPauEJfrmk-3y1A","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":"gq-pkrqdcLvROueE-gJ7j","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":"XNBya7k42gUU_j8L8fIu9","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":"BGRqdcezQ8VEtRIamywgF","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":"_chmXmh9RjnmcDIfn79rX","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":"THj7VT_aaPY3o54D1PrqX","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":"IjgrjicHBu1RozV5lg-a3","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":"Qur3oILBC7kpbXmdJydYB","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":"n9U_2ZEchTYmkEcKFnHXs","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":"fBBLuZEqCa4solb5UzZFx","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":"EAl12ZySanENPv97w4K1A","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":"qt2_tZ91qjAAv7LFPMrV1","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":"2axqnBz3ngVlLfQTHVXUK","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":"l9P33cpGxM0YpfASOlSBh","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":"cNG2ViUHmyPur3wPdd5Dl","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":"1DWHU7-kgmim5SiDS1jOW","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":"ta5pciD_MGEjfXdlGcMDX","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":"0vR3e_kxKsX5fZk6LCpvA","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":"eRf9cO6zfhTob62Zo2fTT","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":"nVSuYN_WR5PDwT4BOSUAl","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":"qDSZfiJbJQtQBqVLnwXSI","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":"b7fUCfMHV2PCm7BBn1C4t","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":"47fFsT9SypCERNzhuXSQH","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":"JKxN2JjnR4YVcbuJmNGsC","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":"Gz7jcnO7KdakjAdkDLG84","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":"CISbZNjFmvl4VenLbBzhT","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                OnDestroy Notification function
                \nCalled by engine before deleting the object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CDNRCilOYjNxZXCXhLt0r","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":"iNBWABTb9MGjqh22_OVxF","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":"SmfYyZN8_OBrFBr-5OMOJ","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":"kCiNOe1ZbiEN9yuRuonyb","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":"soH-T-KK-KsaI_q4sNTg9","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":"B2yvOaAL_h-lDMP7T67HK","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":"kkLKWDjR69qAVw0csBCxD","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":"BmotH6YZseicIHsqAA6xZ","name":"reset","brief":"

                reset the game world

                ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y_Z0j4Dkvlryo33-LI7nk","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":"HsHDUjDtT9xCcXhlMoIop","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":"SSgqGTYhRpTVgMBvhSMiL","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":"BNlJfgEJdo1vJvqwozpw_","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":"kTSAc-qUYzOFkUqdZlFig","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":"MJlNUtE1fTZyG3x7oqtLp","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":"Psh81KqrIUFQ8lDMbbOZQ","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":"lFRL8nwIp0tw-fdaYHsb8","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":"wd8-SxgOkr_Y4tZMnhGtP","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":"i5YYLJRTiGaV4Zhr7qR-s","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":"ZNa5Kf0oEOFAYFhr8p6Sv","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":"rg2n-REb1Fv125D8UKKeQ","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":"v8aoOAsoLp1MC6As5lR-E","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":"q-yLZXh9hfW2zdyCf4JXy","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":"HjLYc1je2ak0yWKJ-Dw0v","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":"LYMguiqCAV86T1v0Q518-","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":"DwUTVXH12IDciXX2kOPL5","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":"LF7cXtfnpdqlPwrxG9U9e","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":"QAmog5ODSUQU210_F3OpL","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":"XQu7ieD__hxkPR3DXiQFm","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":"tqqdWB_TDkQCzfJ8r33or","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":"GGduFAqDvmuYqsI4mAfJS","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":"JuntWETlCS5204t4Kixvl","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":"orrTR5LFPhQaHTX6jfZ6-","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":"gWhrG8w4H9eNncApFTj8Q","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":"STgZOkgTD56suUWD1_yAI","name":"version","brief":"","defaultValue":"\"__VERSION__\"","readonly":true,"scope":"static","type":"PropertyDoc","description":"

                current melonJS version

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w4IzXpgKu9RuoGxjNrGqy","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":"zo4PFeuXbeHhPnK0NFuDy","name":"failureLoadedAssets","brief":"

                Assets uploaded with an error

                ","readonly":true,"type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7YMu-c_jPA-jys-6DtpDT","name":"imgList","brief":"

                where all preloaded content is cached

                ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FIAFXp0Mkd1k3O2HjgMXg","name":"initialized","brief":"","defaultValue":"false","readonly":true,"type":"PropertyDoc","description":"

                a flag indicating that melonJS is fully initialized

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ooVTB9u_gQQDwRYrS1eR5","name":"parserInitialized","brief":"

                keep track if parsers were registered

                ","defaultValue":"false","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2kCgpBRjAHOPBDmEkwdNB","name":"parsers","brief":"

                list of parser function for supported format type

                ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O25_ilEUOVonPlZYBp0GH","name":"skipAutoInit","brief":"","defaultValue":"false","see":["boot"],"type":"PropertyDoc","description":"

                disable melonJS auto-initialization

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BTO4K0iWNEpCVoPHTJMBW","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":"kX69_da1xCrxrw8Nizftm","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":"DICbjfGSd79QqZ9hPMqx5","name":"fetchData","brief":"","examples":[{"caption":"","code":"fetchData('https://api.example.com/data', 'json')\n .then(data => {\n // Handle the fetched JSON data\n })\n .catch(error => {\n // Handle the error\n });"}],"type":"FunctionDoc","description":"

                Fetches data from the specified URL.

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

                The URL to fetch the data from.

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

                The type of response expected ('json', 'text', 'blob', 'arrayBuffer').

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

                A promise that resolves with the fetched data or rejects with an error.

                ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OigXv-95l_9RpTVoswxh5","name":"hasVideoFormat","brief":"","type":"FunctionDoc","description":"

                detect if the given video format is supported

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

                the video format to check for support

                ","dataType":{"tokens":[{"value":"\"h264\" | \"h265\" | \"ogg\" | \"mp4\" | \"m4v\" | \"webm\" | \"vp9\" | \"hls\"","kind":"canonical"},{"value":"\"h264\"","kind":"canonical"},{"value":"\"h265\"","kind":"canonical"},{"value":"\"ogg\"","kind":"canonical"},{"value":"\"mp4\"","kind":"canonical"},{"value":"\"m4v\"","kind":"canonical"},{"value":"\"webm\"","kind":"canonical"},{"value":"\"vp9\"","kind":"canonical"},{"value":"\"hls\"","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8"}}],"returns":[{"description":"

                return true if the given video format is supported

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"RMBfsgun5Pz6akFWElvkm","name":"pow","brief":"","type":"FunctionDoc","description":"

                Calculates the power of a number.

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

                The number to be raised to the power of 2.

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

                The result of raising the number to the power of 2.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zfY0snVtF7Jeo6XwfYVOg","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":"2WCdkS7eDMfAU89ui6r-o","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":"mGczkE87P0EJN14SYJESF","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-AGYHL16yRJKAWG74gh19f":{"uri":"/melonJS/docs/melonjs.html"},"3rVjpWJ_Sq1weWPeNfVH2":{"uri":"/melonJS/docs/melonjs/audio.html"},"wDzkuJHrjXIfBVe-61E5t":{"uri":"/melonJS/docs/melonjs/audio.html#stopOnAudioError"},"yYAicJx1VfOJqJgzfmi8E":{"uri":"/melonJS/docs/melonjs/audio/disable.html"},"Av6XXqdDgX7Fgelpq1WGN":{"uri":"/melonJS/docs/melonjs/audio/enable.html"},"-ZUT0-ai3N-lWXM9is4f9":{"uri":"/melonJS/docs/melonjs/audio/fade.html"},"lXHp-xhE5UlZUYU4J2g40":{"uri":"/melonJS/docs/melonjs/audio/getCurrentTrack.html"},"tmdbgzxhyBo2EnCOsN9V1":{"uri":"/melonJS/docs/melonjs/audio/getVolume.html"},"ZhAN8rfzwK0QngDzHCseW":{"uri":"/melonJS/docs/melonjs/audio/hasAudio.html"},"kWDFH91Xa029x2N19fszS":{"uri":"/melonJS/docs/melonjs/audio/hasFormat.html"},"5RAeypHH50uQ19FAnKUx-":{"uri":"/melonJS/docs/melonjs/audio/init.html"},"MQqhUQ0AWtqPyHL3IN1vb":{"uri":"/melonJS/docs/melonjs/audio/load.html"},"w_bycQ2ujEIhmYLTnWyEC":{"uri":"/melonJS/docs/melonjs/audio/mute.html"},"REu1QtXF1oRh7DpPVLBGZ":{"uri":"/melonJS/docs/melonjs/audio/muteAll.html"},"pteDXhC8EpBqqa8NKNdIX":{"uri":"/melonJS/docs/melonjs/audio/muted.html"},"ahHLmNkpNnNlgLTQ8HflR":{"uri":"/melonJS/docs/melonjs/audio/pause.html"},"fLFi0vcSD9u6L9bLQhMhw":{"uri":"/melonJS/docs/melonjs/audio/pauseTrack.html"},"5sAFEhVxRY0YBctNwe-ks":{"uri":"/melonJS/docs/melonjs/audio/play.html"},"BKtFyeYL6UWFfvwkqZE_L":{"uri":"/melonJS/docs/melonjs/audio/playTrack.html"},"LFh9cA5yVQZff-Rs-ryav":{"uri":"/melonJS/docs/melonjs/audio/rate.html"},"LKBgHP6_9oqrD_jra3Icd":{"uri":"/melonJS/docs/melonjs/audio/resume.html"},"u2lwbFpV0DfjXJxg6d8E4":{"uri":"/melonJS/docs/melonjs/audio/resumeTrack.html"},"tzIVGYey_OfaKsHkxnRKR":{"uri":"/melonJS/docs/melonjs/audio/seek.html"},"k2Fy8jXNhpvtSr7xDvczS":{"uri":"/melonJS/docs/melonjs/audio/setVolume.html"},"I5RK6msP3_NUp4saJ5j3y":{"uri":"/melonJS/docs/melonjs/audio/stop.html"},"g8O18J2oeeQMQb6BVVK6m":{"uri":"/melonJS/docs/melonjs/audio/stopTrack.html"},"cUqsAP-9YGn6KpTBJD--5":{"uri":"/melonJS/docs/melonjs/audio/unload.html"},"WBdCz5M_Egn1oCHoyV5aP":{"uri":"/melonJS/docs/melonjs/audio/unloadAll.html"},"10F4_72HRB5MGHRp6D3hL":{"uri":"/melonJS/docs/melonjs/audio/unmute.html"},"1PGNIQ2-lBtFMrLxE8mq3":{"uri":"/melonJS/docs/melonjs/audio/unmuteAll.html"},"h7joUvFvZw14QehmdhUgv":{"uri":"/melonJS/docs/melonjs/collision.html"},"kDeeYUDxaUX5yAQZLZkaF":{"uri":"/melonJS/docs/melonjs/collision/types.html"},"aj_0yG2tnmVIRGBT2BGYm":{"uri":"/melonJS/docs/melonjs/collision/types.html#ACTION_OBJECT"},"4DQT7dp7Xq5y7DHKBuOmL":{"uri":"/melonJS/docs/melonjs/collision/types.html#ALL_OBJECT"},"lhEpg-g3WiTdETYNp9Kpi":{"uri":"/melonJS/docs/melonjs/collision/types.html#COLLECTABLE_OBJECT"},"E67adG3-D5iG9IGfvki3S":{"uri":"/melonJS/docs/melonjs/collision/types.html#ENEMY_OBJECT"},"lJqdAnvKWWQXlasfti7Wk":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT"},"RMWu5ORAqsqRnpJFRuUA7":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT_"},"rtcSjBV8PDDYZlEFujEca":{"uri":"/melonJS/docs/melonjs/collision/types.html#NPC_OBJECT"},"agey5JSl_OC1bK46T_11H":{"uri":"/melonJS/docs/melonjs/collision/types.html#PLAYER_OBJECT"},"coyC4vC7_bK-MwS3tGgzU":{"uri":"/melonJS/docs/melonjs/collision/types.html#PROJECTILE_OBJECT"},"3UT49aF21KP4OAk6MmX7P":{"uri":"/melonJS/docs/melonjs/collision/types.html#USER"},"FTYQA93ekLaYI7M1cCTg7":{"uri":"/melonJS/docs/melonjs/collision/types.html#WORLD_SHAPE"},"Jf0WeHp68vwfwX46OYtr2":{"uri":"/melonJS/docs/melonjs/collision.html#maxChildren"},"btWNwUw2BLR4G5gnylaCk":{"uri":"/melonJS/docs/melonjs/collision.html#maxDepth"},"iq7VKsS5EhCK_GDHaBVtX":{"uri":"/melonJS/docs/melonjs/collision.html#rayCast"},"zFNAy6zuoTJnuCx96t8I7":{"uri":"/melonJS/docs/melonjs/device.html"},"-m5RBvriyRlR8oKWdTl8Y":{"uri":"/melonJS/docs/melonjs/device/platform.html"},"tmyBVGJUeMrfcTBY4Jbgx":{"uri":"/melonJS/docs/melonjs/device/platform.html#android"},"STlmZDvL20NREXrACpQae":{"uri":"/melonJS/docs/melonjs/device/platform.html#android2"},"uZuro0rWtrN8WodwDDH8B":{"uri":"/melonJS/docs/melonjs/device/platform.html#BlackBerry"},"N86RkjaHbq_QvvjN5-TAR":{"uri":"/melonJS/docs/melonjs/device/platform.html#chromeOS"},"z-_FfkuYQYw7KZd2J5q-U":{"uri":"/melonJS/docs/melonjs/device/platform.html#ejecta"},"WMez-Y6dXkl8OQOIQSZEC":{"uri":"/melonJS/docs/melonjs/device/platform.html#iOS"},"rv5O2zPzNMHryj76c0UFz":{"uri":"/melonJS/docs/melonjs/device/platform.html#isMobile"},"BCFbahWDlqYSdBs9ZjheY":{"uri":"/melonJS/docs/melonjs/device/platform.html#isWeixin"},"FVhBQZEa4xxBVtv2NPY0T":{"uri":"/melonJS/docs/melonjs/device/platform.html#Kindle"},"FhYbLmczNjRsCkpTcQlnS":{"uri":"/melonJS/docs/melonjs/device/platform.html#linux"},"Xyy3uCldtBmE3F89RWagu":{"uri":"/melonJS/docs/melonjs/device/platform.html#nodeJS"},"JjysHQBm6dK7XE4Aw4VQ7":{"uri":"/melonJS/docs/melonjs/device/platform.html#ua"},"zJehX6_n8_KPLOMqwVbWq":{"uri":"/melonJS/docs/melonjs/device/platform.html#wp"},"64qLFKtmiVLZdMfQz_Yt5":{"uri":"/melonJS/docs/melonjs/device.html#accelerationX"},"DzRXrqmbhP8KRVFgFwGfz":{"uri":"/melonJS/docs/melonjs/device.html#accelerationY"},"XU11pCkmatBD-DucgJiCL":{"uri":"/melonJS/docs/melonjs/device.html#accelerationZ"},"X1_ysyoHrHt9cKk8UmhqH":{"uri":"/melonJS/docs/melonjs/device.html#alpha"},"htf75yPcXmhEdEFOo2IKQ":{"uri":"/melonJS/docs/melonjs/device.html#autoFocus"},"FzQuLSJz-4Avu6sU5REyl":{"uri":"/melonJS/docs/melonjs/device.html#beta"},"1DlaGx1b71Tx-b3Xt0iN8":{"uri":"/melonJS/docs/melonjs/device.html#devicePixelRatio"},"3fStGC03Lm7bQ_y1VwLnT":{"uri":"/melonJS/docs/melonjs/device.html#gamma"},"L7imp7wFOe9eH-rJFNA0F":{"uri":"/melonJS/docs/melonjs/device.html#hasAccelerometer"},"6NJz5Nq510DcxLiTXjTYO":{"uri":"/melonJS/docs/melonjs/device.html#hasDeviceOrientation"},"zDt8KmpfzBFDmJvQHcMOO":{"uri":"/melonJS/docs/melonjs/device.html#hasFullscreenSupport"},"7jAYsK3oo7Xo73mlyDKmr":{"uri":"/melonJS/docs/melonjs/device.html#hasHTML5Audio"},"EnBrPpg8SruM3bGnKEcak":{"uri":"/melonJS/docs/melonjs/device.html#hasPointerLockSupport"},"fwWaNKI0LMelxqGAPOCW5":{"uri":"/melonJS/docs/melonjs/device.html#hasVideo"},"Bt4DEEe3TTRhavBRXzCzt":{"uri":"/melonJS/docs/melonjs/device.html#hasWebAudio"},"Xx9fmu7fY18n6_zw6q4jB":{"uri":"/melonJS/docs/melonjs/device.html#isMobile"},"ZfuvByXAIbnFCVDRGj0nO":{"uri":"/melonJS/docs/melonjs/device.html#language"},"jJhZnY4zT9QFPSa-qzbD2":{"uri":"/melonJS/docs/melonjs/device.html#localStorage"},"6xAWG2-kKwM-VpGc05Lnz":{"uri":"/melonJS/docs/melonjs/device.html#maxTouchPoints"},"hpzZy2A-YNblJ48cQRktI":{"uri":"/melonJS/docs/melonjs/device.html#nativeBase64"},"DSTN15Et-kAEb_L86vbs_":{"uri":"/melonJS/docs/melonjs/device.html#offscreenCanvas"},"nZaQs5JLKyje-NRaSXxqN":{"uri":"/melonJS/docs/melonjs/device.html#pauseOnBlur"},"tlUEnoYZNxr_10pgya2Sx":{"uri":"/melonJS/docs/melonjs/device.html#platform"},"SL45KsOfy70ZWh_9BgCd_":{"uri":"/melonJS/docs/melonjs/device.html#pointerEvent"},"poIWwcewTTYsJ8TIrJi8i":{"uri":"/melonJS/docs/melonjs/device.html#resumeOnFocus"},"D6FJeOKbXEaNvWhJ__5_M":{"uri":"/melonJS/docs/melonjs/device.html#screenOrientation"},"rCdOggWSVYuUP-px620jn":{"uri":"/melonJS/docs/melonjs/device.html#sound"},"ofR_QllE2wuOKg7auHa3k":{"uri":"/melonJS/docs/melonjs/device.html#stopOnBlur"},"oOq6tjPoMhL1ENX00q2nf":{"uri":"/melonJS/docs/melonjs/device.html#touch"},"FVzseZt0yPtVw19OjKkLh":{"uri":"/melonJS/docs/melonjs/device.html#touchEvent"},"4lACcLsQVHHXASovd-uJw":{"uri":"/melonJS/docs/melonjs/device.html#wheel"},"WC5u4EoVAIkMS8Gw3zc_u":{"uri":"/melonJS/docs/melonjs/device/enableSwipe.html"},"1Ukk-Ee9YzLAStZG7bPqe":{"uri":"/melonJS/docs/melonjs/device/exitFullscreen.html"},"YCkdfSQZEU2_XNQYZPGH6":{"uri":"/melonJS/docs/melonjs/device/focus.html"},"eNd8NlIktsZXJf4uY5GKj":{"uri":"/melonJS/docs/melonjs/device/getElement.html"},"jaaS5l2BVsvNyrtSSYIgu":{"uri":"/melonJS/docs/melonjs/device/getElementBounds.html"},"e_87CEtteHnUBHdcgrrmL":{"uri":"/melonJS/docs/melonjs/device/getParentBounds.html"},"b032a0IZqOYC2ajU2nExQ":{"uri":"/melonJS/docs/melonjs/device/getParentElement.html"},"9XiM7jQqD1D1WKlz_D3kl":{"uri":"/melonJS/docs/melonjs/device/getScreenOrientation.html"},"1WHGZy1o9qlJyjwymXuXp":{"uri":"/melonJS/docs/melonjs/device/getStorage.html"},"-vHLvuWo5mPzLNQNJq3r7":{"uri":"/melonJS/docs/melonjs/device/isFullscreen.html"},"4CVC0sScDupyAt4lawsyB":{"uri":"/melonJS/docs/melonjs/device/isLandscape.html"},"AY5LmE13rc5TgSzbfqx-l":{"uri":"/melonJS/docs/melonjs/device/isPortrait.html"},"W4t7V4o65G8InWGDvwVDy":{"uri":"/melonJS/docs/melonjs/device/isWebGLSupported.html"},"EYVEtubERw4Zo9h7wide_":{"uri":"/melonJS/docs/melonjs/device/lockOrientation.html"},"d9x22tBnVRCXOptduA8uM":{"uri":"/melonJS/docs/melonjs/device/onReady.html"},"FSIeUKdYPYe8kGR5_YEn0":{"uri":"/melonJS/docs/melonjs/device/requestFullscreen.html"},"PCLQey1StV_AfLtY51bXr":{"uri":"/melonJS/docs/melonjs/device/unlockOrientation.html"},"GyrflHGdRG8YTuCtS_QAF":{"uri":"/melonJS/docs/melonjs/device/unwatchAccelerometer.html"},"5ue3NZ8l-Du8LlYLGwj-y":{"uri":"/melonJS/docs/melonjs/device/unwatchDeviceOrientation.html"},"7kWMYro_6FZ7pHn4QZ07D":{"uri":"/melonJS/docs/melonjs/device/vibrate.html"},"hUt6h6NxH9OJrZv25JqPT":{"uri":"/melonJS/docs/melonjs/device/watchAccelerometer.html"},"upCBH7XyeiTkPISx-11o-":{"uri":"/melonJS/docs/melonjs/device/watchDeviceOrientation.html"},"Qqz8vJcIMHzazQqwbCT-k":{"uri":"/melonJS/docs/melonjs/event.html"},"oICCM70hPea-MT20YqORm":{"uri":"/melonJS/docs/melonjs/event.html#BLUR"},"tgto3YhgZDU4PaJb-HmNe":{"uri":"/melonJS/docs/melonjs/event.html#BOOT"},"Ko8ocjfx5INRDYNSwYXrs":{"uri":"/melonJS/docs/melonjs/event.html#CANVAS_ONRESIZE"},"sAtpBjqfvlcy18A9LmTOQ":{"uri":"/melonJS/docs/melonjs/event.html#DOM_READY"},"g6RlE_3h2Ib9P_44fOKam":{"uri":"/melonJS/docs/melonjs/event.html#DRAGEND"},"lndGxiSKdPZnedMMwnJRf":{"uri":"/melonJS/docs/melonjs/event.html#DRAGSTART"},"VfSqHMzQzLaHhnKo2TjbF":{"uri":"/melonJS/docs/melonjs/event.html#FOCUS"},"wcS5i_dR0NCdIJzXhGg0l":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_DRAW"},"9yhKA86TX9RfhzBoCYwzP":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_UPDATE"},"4pPoL1kwVWxVQjiejxGfv":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_DRAW"},"O7jsWKOUh1coHLm4JMiVK":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_UPDATE"},"Y9GoMNKMm-YKxU3DBO88L":{"uri":"/melonJS/docs/melonjs/event.html#GAME_INIT"},"A1DbtCbkflJyXA4WGbKX-":{"uri":"/melonJS/docs/melonjs/event.html#GAME_RESET"},"6-NDWPkPTGz--9_uNJEso":{"uri":"/melonJS/docs/melonjs/event.html#GAME_UPDATE"},"dPSM_lvhqR-F8UDHAWgpF":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_CONNECTED"},"o4xnHEL3_WLDJ7sfvEt0-":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_DISCONNECTED"},"CEniZ2r16P6xwmBqKAABl":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_UPDATE"},"QnTbA0uTlpVsW6IaKrVoV":{"uri":"/melonJS/docs/melonjs/event.html#KEYDOWN"},"b44LIf-f4X3d2QASXhDVj":{"uri":"/melonJS/docs/melonjs/event.html#KEYUP"},"5SGXyl1Fp9M5ZEHvlkxMo":{"uri":"/melonJS/docs/melonjs/event.html#LEVEL_LOADED"},"R8FWn91TKqNn6lybwkN_l":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_COMPLETE"},"e9G1Jp0aPwp_Q60dCP_B_":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_ERROR"},"OJxw6I9wnoa2wWlThNlHj":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_PROGRESS"},"5zJ6COPJq3t_5hcQvfPwL":{"uri":"/melonJS/docs/melonjs/event.html#ONCONTEXT_RESTORED"},"P3yHyi1w9-mUN64os2IS8":{"uri":"/melonJS/docs/melonjs/event.html#POINTERLOCKCHANGE"},"9w8ZFyRY9qA0wXKNwax05":{"uri":"/melonJS/docs/melonjs/event.html#POINTERMOVE"},"huUyOp3QfRrZQon4d6Z3x":{"uri":"/melonJS/docs/melonjs/event.html#STAGE_RESET"},"j1ehhkCfvlMAh6n6PwD1k":{"uri":"/melonJS/docs/melonjs/event.html#STATE_CHANGE"},"POhglDT9Zcz0kOXGBmMmI":{"uri":"/melonJS/docs/melonjs/event.html#STATE_PAUSE"},"gq8Xe_hKh12XouDresKy7":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESTART"},"D7Gg8xza42byEJAi2ScHf":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESUME"},"o7mqU_Ov12dtGeupQKUE0":{"uri":"/melonJS/docs/melonjs/event.html#STATE_STOP"},"QJFRf7k5OS9UGxkmnNA_f":{"uri":"/melonJS/docs/melonjs/event.html#TICK"},"dvULecKct18zBVx9cqUl_":{"uri":"/melonJS/docs/melonjs/event.html#VIDEO_INIT"},"mVyDhx3vnxOGidcBZjXqH":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONCHANGE"},"_Jd7aBaeFjHUxNOYOC7gN":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONRESIZE"},"oi1eTMd-mcMaXFuU2xZTY":{"uri":"/melonJS/docs/melonjs/event.html#WEBGL_ONCONTEXT_LOST"},"whzufGvPNt9877K3wlmYc":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONORIENTATION_CHANGE"},"MOWsiS872J80XIDzD0tT0":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONRESIZE"},"O7YEfx3Wp_xcVbL-xLN0G":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONSCROLL"},"4IFj65LT5A72n1ItWsVNN":{"uri":"/melonJS/docs/melonjs/event.html#WORLD_STEP"},"2yatxn6AhgZMDHSbvauQK":{"uri":"/melonJS/docs/melonjs/event/emit.html"},"PCIp8-4PEzNFwsOCylD-n":{"uri":"/melonJS/docs/melonjs/event/off.html"},"pq07xXqUVH3hoMA8JJCaJ":{"uri":"/melonJS/docs/melonjs/event/on.html"},"P-bQ3XZ92ffhx4x8zeIj3":{"uri":"/melonJS/docs/melonjs/event/once.html"},"VAoZseCOB5Z3vL3eYmPDq":{"uri":"/melonJS/docs/melonjs/game.html"},"B6It2pe7HyOJ1Ka8GpofW":{"uri":"/melonJS/docs/melonjs/input.html"},"QwtdUmapCUF_s0FOjpGyH":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD.html"},"x45j6Ahs3CpX_r5rvdd3A":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/AXES.html"},"cumbHiuy4yZ4io5JT9x-m":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/BUTTONS.html"},"67Hkc-d1upWbUmbo48-6y":{"uri":"/melonJS/docs/melonjs/input/KEY.html"},"jPKbvlQhydbrLVTC2idPH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#A"},"BgS85bxCKnlwOGjeps_8f":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ADD"},"NTCbvk7Uao1HOL2E7LvUi":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ALT"},"rGDImx0882VSRR_aJ2xtl":{"uri":"/melonJS/docs/melonjs/input/KEY.html#B"},"umbFSxOEHzdgBie1WbQr9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#BACK_SLASH"},"F3_rz1QouiHdqVxYBmt1z":{"uri":"/melonJS/docs/melonjs/input/KEY.html#C"},"quCUirlBpgWlIPM_2IEz-":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CAPS_LOCK"},"-2K1uw-vyOR6ELQ9qJ-yH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CLOSE_BRACKET"},"4Hur0tc0ikEr-NK0uWlCo":{"uri":"/melonJS/docs/melonjs/input/KEY.html#COMMA"},"hfQnTd7Azp1i27E6NYnOY":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CTRL"},"-x08Vp7QgTLk6Y2JoybUe":{"uri":"/melonJS/docs/melonjs/input/KEY.html#D"},"8IGoDJuhmQtXjFhOwLgNx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DECIMAL"},"wW-QJof0fU44v8UlDDpU9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DELETE"},"AxwlETVfZ-qxJ_nJTAsam":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DIVIDE"},"e3AcuLmyV1QKAQn7nkHSg":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DOWN"},"8GlZtvqWSM4rR9vY075ib":{"uri":"/melonJS/docs/melonjs/input/KEY.html#E"},"dZUuMe10HoSkuz-Y6koOG":{"uri":"/melonJS/docs/melonjs/input/KEY.html#END"},"SNA2xnHJI-XPKt6gywmob":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ENTER"},"RPJ76r6vop_e5Lnrk7mhj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ESC"},"YPwqQ2pK5sKE08GTpenjW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F"},"whK2dH0my-J1ecjQ5o-3_":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F1"},"yAvtjovwsnEDey97VXcam":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F10"},"ZB4sZfd9aa7yZz_a4-cux":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F11"},"zYoYGZXCJRZ1gkiEO8qQH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F12"},"Fj2_OzeWStDQc1fZVTfsk":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F2"},"35uOx7lqt0LyijxdiSYuW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F3"},"QhGE9uYhvtdFYIImkjNvx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F4"},"9bLWuQqNGSVlIUZNQDPk2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F5"},"qJs4EE8t47z6eR2fQEM3i":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F6"},"FPiKjUOPLe75aQv_OAC8z":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F7"},"sZ3PJknfQPXPN8O6-2XA9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F8"},"nHnESwheARahWqrAJuo1O":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F9"},"bFfyV9gv_DyepMccnT0f5":{"uri":"/melonJS/docs/melonjs/input/KEY.html#FORWAND_SLASH"},"oq8-PNTCwYdzR_M2dVjcU":{"uri":"/melonJS/docs/melonjs/input/KEY.html#G"},"_GWCEQDCzf1ANAcZ4CZZQ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#GRAVE_ACCENT"},"DJaSBo22pPyzq47zOeVpJ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#H"},"FVMmpiViws6sfFTofvQVq":{"uri":"/melonJS/docs/melonjs/input/KEY.html#HOME"},"MmBsilzSqHMp9fnRz13hW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#I"},"983BXqi7lNoQyyPYdrJbZ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#INSERT"},"r_AIR-nfg-X1ehCjEhqtJ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#J"},"EcsXloPCCq8W4DgmYEptG":{"uri":"/melonJS/docs/melonjs/input/KEY.html#K"},"nIPiilzPLDrOysSwuhJf6":{"uri":"/melonJS/docs/melonjs/input/KEY.html#L"},"WnRB9xi5DqurtzZjB211d":{"uri":"/melonJS/docs/melonjs/input/KEY.html#LEFT"},"bA9u2I3g280y70_m47TME":{"uri":"/melonJS/docs/melonjs/input/KEY.html#M"},"nEOKb9TLwWpVkq_fzHATT":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MINUS"},"9BXG4HKOXlVG9FPHR5ZuK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MULTIPLY"},"R_1V-BVqAjzN7TJqSaKkp":{"uri":"/melonJS/docs/melonjs/input/KEY.html#N"},"wsk-hJjFUs7OaOA6yQtca":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM_LOCK"},"MLlMFklaH42sWSljGsm3L":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM0"},"ZYcB0bfr30mjfMF_CgHfR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM1"},"smrf2MFkSllkwyTO4kHRG":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM2"},"YZWqgx6GoYteS_HsjW1FC":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM3"},"zFIHvWdfVAP2uIeBYPdPY":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM4"},"ueTYHBYyVaxjEXrTVNxbN":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM5"},"gb2YK83YFtFLL5UxB9WDV":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM6"},"bCJUorIwlvx0zNDdR1pZ4":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM7"},"SRuwKRI9veYjy4RCunrKO":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM8"},"qxvyB-znD6BHmGTOeyyPs":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM9"},"iuijhYfQkh_rCoUIqBgQw":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD0"},"jcl6sLpqPB5WK8nZbCfMu":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD1"},"eJXq3nKhRCDNukRMIuNTK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD2"},"dW2BrL6A8yqPTGB6f-rNv":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD3"},"IVmCy2vWX1aLp1IRCwIhp":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD4"},"yURQ4CI_hxyOtBTUAhh-w":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD5"},"r45l9FehaIQUC7DCTTsPH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD6"},"aSNN8Rpy4E5msEZLFFcxm":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD7"},"6Wuf1K1F-fZCbmIrsZ387":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD8"},"plDxTvDWYRNcfRQSrJSjL":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD9"},"jjxTmM8GXwxyIBGX4Rfi8":{"uri":"/melonJS/docs/melonjs/input/KEY.html#O"},"4A_oJ8ItnpeWt-kbl_0aL":{"uri":"/melonJS/docs/melonjs/input/KEY.html#OPEN_BRACKET"},"P4iOLiD0r3FBfoH-UNv4T":{"uri":"/melonJS/docs/melonjs/input/KEY.html#P"},"zwq2BZGd7fllDafcVLUmh":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_DOWN"},"DPfFzY_sbnqiKiw78NFYG":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_UP"},"fzJM1elTjZiKTzX1rdC0q":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAUSE"},"mKvqiGjcBpXaoBbGHnfag":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PERIOD"},"FKjS5t6tEkLUDEognAbC8":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PLUS"},"5IqbM-6aZPTu4Ro6KOMkc":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PRINT_SCREEN"},"Fbpdl-SOp9dM9JOq1_wjW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Q"},"XyL3Mhftjog294XBWMdBn":{"uri":"/melonJS/docs/melonjs/input/KEY.html#R"},"Eh1AXWmGXXjbwAK8whB-M":{"uri":"/melonJS/docs/melonjs/input/KEY.html#RIGHT"},"DGWr21IJhENqHQMslj9Qt":{"uri":"/melonJS/docs/melonjs/input/KEY.html#S"},"C2jgQY_WwdHAOgWkGslc-":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SCROLL_LOCK"},"jqEmoxsP5YZ8FjnJCXAVP":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SEMICOLON"},"GDt5JNpaEdPjdMtsLB9zW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SHIFT"},"cQUHqBh6NmBTwsDcAsUNb":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SINGLE_QUOTE"},"LsMq-kXO3bOqZFP7FXIG_":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SPACE"},"RB0vWzvOcz3QiV1SYjanI":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SUBSTRACT"},"-nQPsevNb7Rl-HeICt3SM":{"uri":"/melonJS/docs/melonjs/input/KEY.html#T"},"xFojIKIIog92_f2msDYGD":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TAB"},"TnPGYJfsKV01RC8ypGujj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TILDE"},"TezgycoiMrCA3fCJbN5_3":{"uri":"/melonJS/docs/melonjs/input/KEY.html#U"},"NZh7Kculf2ECDxZas2O-Y":{"uri":"/melonJS/docs/melonjs/input/KEY.html#UP"},"vVvY-q2WBKp96dFYpefgs":{"uri":"/melonJS/docs/melonjs/input/KEY.html#V"},"QLMbhIHkTKW9vEPgObe2R":{"uri":"/melonJS/docs/melonjs/input/KEY.html#W"},"AQWi-oXZYF4aknuTov5Dp":{"uri":"/melonJS/docs/melonjs/input/KEY.html#WINDOW_KEY"},"QchLnYIJQeEcCVnxFnkKw":{"uri":"/melonJS/docs/melonjs/input/KEY.html#X"},"GDCPEsBmXAbQMWeB-SNWa":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Y"},"XDIF1BN5OVMMPsHESoWrP":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Z"},"xhMbGxLep_wmJx-BozrdF":{"uri":"/melonJS/docs/melonjs/input.html#keyBoardEventTarget"},"hGLJHPVH6sO3bMS93Q3A4":{"uri":"/melonJS/docs/melonjs/input.html#locked"},"bxGYhr0IjKKNiVuqzVkTj":{"uri":"/melonJS/docs/melonjs/input.html#pointer"},"tYHHewh_idZAeBHR2YrIn":{"uri":"/melonJS/docs/melonjs/input.html#pointerEventTarget"},"dncmkYGJbSV7wrIOje8xc":{"uri":"/melonJS/docs/melonjs/input.html#preventDefault"},"KJ0iQan0PFOcGWdZcaB1d":{"uri":"/melonJS/docs/melonjs/input.html#setGamepadMapping"},"JA98B6XsfMthIAscCaXNb":{"uri":"/melonJS/docs/melonjs/input.html#throttlingInterval"},"Eo2YcASA-JmL3WoQzCueU":{"uri":"/melonJS/docs/melonjs/input/bindGamepad.html"},"2zYen0lpx-qZq3p6i71EO":{"uri":"/melonJS/docs/melonjs/input/bindKey.html"},"QNVvejopwDyOq5v7ysEC_":{"uri":"/melonJS/docs/melonjs/input/bindPointer.html"},"Z7a97ojr-YwEp53_2fLln":{"uri":"/melonJS/docs/melonjs/input/exitPointerLock.html"},"60Hc8GNn_LgEhBKbHCXIK":{"uri":"/melonJS/docs/melonjs/input/getBindingKey.html"},"WbOFT-VTDh5WEuT7aW02N":{"uri":"/melonJS/docs/melonjs/input/globalToLocal.html"},"29GcrFHSIZOer8qMAq2iu":{"uri":"/melonJS/docs/melonjs/input/hasActiveEvents.html"},"osRmt_e-FL4CxfVTrPZrR":{"uri":"/melonJS/docs/melonjs/input/hasRegisteredEvents.html"},"bFivuFZAJZNZsruksdUt8":{"uri":"/melonJS/docs/melonjs/input/isKeyPressed.html"},"nfRL8RkpG-xfTa1BN70Ei":{"uri":"/melonJS/docs/melonjs/input/keyStatus.html"},"QRzBfPzD0CSQ-by0fgosF":{"uri":"/melonJS/docs/melonjs/input/registerPointerEvent.html"},"jzP8ECgAXQjIPQ5QttBGp":{"uri":"/melonJS/docs/melonjs/input/releaseAllPointerEvents.html"},"jEie5hWBr8GPlfPoXrJB6":{"uri":"/melonJS/docs/melonjs/input/releasePointerEvent.html"},"MO_3QW--pjv1HaSoIgWBF":{"uri":"/melonJS/docs/melonjs/input/requestPointerLock.html"},"hrq0frlQA2g-qTS-idKV9":{"uri":"/melonJS/docs/melonjs/input/setGamepadDeadzone.html"},"XZdrWr1JZadT7m2c-poqS":{"uri":"/melonJS/docs/melonjs/input/setTouchAction.html"},"m3Spg7992XZaG-q4HuZO5":{"uri":"/melonJS/docs/melonjs/input/triggerKeyEvent.html"},"5EZZnB0I1u-ELbYd44Aw5":{"uri":"/melonJS/docs/melonjs/input/unbindGamepad.html"},"jTMKXsGKHcFDWjzj62Rm3":{"uri":"/melonJS/docs/melonjs/input/unbindKey.html"},"XyA1vOu8u3ACYHcBIq4B2":{"uri":"/melonJS/docs/melonjs/input/unbindPointer.html"},"CFPEqSvcsf7ajuKJKFS-0":{"uri":"/melonJS/docs/melonjs/input/unlockKey.html"},"JX7SOlW8o9sGv4WzHeFtz":{"uri":"/melonJS/docs/melonjs/level.html"},"EGvfijqr8mP9nzTJ8p9ka":{"uri":"/melonJS/docs/melonjs/level.html#add"},"PIx-KKP5lqIkCTuMrMcvZ":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevel"},"yeEK-JzAh-5UFDx9pi88r":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevelId"},"L43v45XEAPPtkvTBX5pnU":{"uri":"/melonJS/docs/melonjs/level.html#levelCount"},"MwMzTkRaxLsOb8ujqGPKF":{"uri":"/melonJS/docs/melonjs/level.html#load"},"TXmPypqqRzmgZevdxlqp1":{"uri":"/melonJS/docs/melonjs/level.html#next"},"T-B8zd5GaJO31iUxlhNWD":{"uri":"/melonJS/docs/melonjs/level.html#previous"},"0_Z5OcpL5oerf3jpgKYYM":{"uri":"/melonJS/docs/melonjs/level.html#reload"},"mSJBudsyxu5WJNnBllvN-":{"uri":"/melonJS/docs/melonjs/loader.html"},"wsmctonOblWSFBt2dDG9U":{"uri":"/melonJS/docs/melonjs/loader/Asset.html"},"kQWmAlXWcZULEsbBLp6DH":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#autoplay"},"kTeYIdEvN6fX9Y3JMFWmZ":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#data"},"j6OokTcLrJwdOfilrtftU":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#loop"},"Th7l3_zn15A1K_lThqe5Q":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#name"},"FtsyCr-CAk33vZ9--A_5_":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#src"},"9qjp_Ily5gmu5sMGxAS3K":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#stream"},"sRTL9qC34mCUfBnRghQit":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#type"},"3ZBuUiQYvWvuSnjAtPfFK":{"uri":"/melonJS/docs/melonjs/loader.html#crossOrigin"},"HKpePcKDb0lsGn_SAj_3M":{"uri":"/melonJS/docs/melonjs/loader.html#onError"},"eiemgahUWnzNxXulMYFC9":{"uri":"/melonJS/docs/melonjs/loader.html#onload"},"t7_XHd1dztRXv6II_cKwv":{"uri":"/melonJS/docs/melonjs/loader.html#onProgress"},"oNd2lSSqWJIaPbajr5AQO":{"uri":"/melonJS/docs/melonjs/loader.html#withCredentials"},"nVaAG1rtD-en_TQGFLYs2":{"uri":"/melonJS/docs/melonjs/loader/getBinary.html"},"hJYdrZWIQrSqQX7bBZ0ZM":{"uri":"/melonJS/docs/melonjs/loader/getImage.html"},"XEQPsYJf8YgK_uYWzjwAq":{"uri":"/melonJS/docs/melonjs/loader/getJSON.html"},"ysoP-zRG8ZgL_DYONmmeQ":{"uri":"/melonJS/docs/melonjs/loader/getTMX.html"},"MER43SflFG6eFBXFrMDJy":{"uri":"/melonJS/docs/melonjs/loader/getVideo.html"},"5eTNuhnic0Ub70lpI28ba":{"uri":"/melonJS/docs/melonjs/loader/load.html"},"oKHsGU9yCDtlPdkND2o95":{"uri":"/melonJS/docs/melonjs/loader/preload.html"},"Ncn-Hy82nmMG7UQ-a40qT":{"uri":"/melonJS/docs/melonjs/loader/reload.html"},"C9hmWJC04UACREmc3Ew-N":{"uri":"/melonJS/docs/melonjs/loader/setBaseURL.html"},"QrJ5oguSw7j_v6O0-XStr":{"uri":"/melonJS/docs/melonjs/loader/setParser.html"},"WVXzp7HXYnxpRgezxp3Q3":{"uri":"/melonJS/docs/melonjs/loader/unload.html"},"dv-YF0ZE81av4LFcQ40uc":{"uri":"/melonJS/docs/melonjs/loader/unloadAll.html"},"iVyvZOYs6ZdWlnVjSqgBj":{"uri":"/melonJS/docs/melonjs/Math.html"},"gg5JssEt9dzuCVYPNdzm6":{"uri":"/melonJS/docs/melonjs/Math.html#DEG_TO_RAD"},"tgIduMmDH64Df0Ou7np1_":{"uri":"/melonJS/docs/melonjs/Math.html#EPSILON"},"NkYc75bEen-lgygoJys80":{"uri":"/melonJS/docs/melonjs/Math.html#ETA"},"ZGmG-bkISr40Sd28AdBns":{"uri":"/melonJS/docs/melonjs/Math.html#RAD_TO_DEG"},"9RveBxPFdhkiDqR6Sw_LL":{"uri":"/melonJS/docs/melonjs/Math.html#TAU"},"dasupJCEBVrf4D-wxS-kf":{"uri":"/melonJS/docs/melonjs/Math/clamp.html"},"csEZmtoF1U8ZtuB_kyWY2":{"uri":"/melonJS/docs/melonjs/Math/degToRad.html"},"yjnXB5hTItOFQyIMEbs0e":{"uri":"/melonJS/docs/melonjs/Math/isPowerOfTwo.html"},"f36p4f84fD7ey9vilNbdy":{"uri":"/melonJS/docs/melonjs/Math/nextPowerOfTwo.html"},"Pgj2pb3088WwcetjZXpLs":{"uri":"/melonJS/docs/melonjs/Math/radToDeg.html"},"vwzSTswk2ForCiZ0DTJa0":{"uri":"/melonJS/docs/melonjs/Math/random.html"},"nWmkZ0FxspApHwp39IYEt":{"uri":"/melonJS/docs/melonjs/Math/randomFloat.html"},"pcVcY6Y-9TTAcw8MtJPJJ":{"uri":"/melonJS/docs/melonjs/Math/round.html"},"n2b46SuF6QaLerjP_3ITN":{"uri":"/melonJS/docs/melonjs/Math/toBeCloseTo.html"},"ME0GlX5x8qjce944IQvII":{"uri":"/melonJS/docs/melonjs/Math/weightedRandom.html"},"z7IDzCDybUYKd5qrXrN9U":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html"},"lfyr7RgBP6OW8YLd8y_LY":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angle"},"SVBS1-muvcA_otibk1Rw-":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angleVariation"},"HdmjYuI0fTQndiJlE2AqW":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#blendMode"},"uqDc-8_y7oKYSYNuXEk6z":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#duration"},"J_K0N0FgAd1LcQ6LyWgvk":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#floating"},"-g1F_3gVtgU5PdjlyHncB":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#followTrajectory"},"LM6hErH2HZgpA60I4eYOj":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#framesToSkip"},"awmTtUzVznv5yhV--FkRN":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#frequency"},"eEgPhctVTqbcnZHJrwXZ8":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#gravity"},"WjeVfZtWZbcYAZTaLrT94":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#height"},"MlRJZnscPX-1wc-HDvvda":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#image"},"ginbszn8XYA6oDKaLRPoG":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxEndScale"},"qejVPZKYhDYx4ikz8J0AY":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxLife"},"6SWngPMuoN5mVmNLPWpxE":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxParticles"},"gOqVST8Xc7mkd7IZ-oFAy":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxRotation"},"LEn2u0alBxKhEeBfxGoCs":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxStartScale"},"jxgAwTpwl6gTabd4JHwPp":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minEndScale"},"X-zkHfZCBUrGBS4WPcFM8":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minLife"},"jfj9Q-XkSwvvMllfeLmcc":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minRotation"},"RI4U_XFSWAsWHNjdXzhlg":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minStartScale"},"L9Ja2qVZ60tcQXT7Fas9y":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#onlyInViewport"},"yTa0uJPuHAhUMHeoAUQ_B":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speed"},"QLSWiWDI1OJV6zoNjn_Yn":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speedVariation"},"6TJ5MR_wVpy1QJOAIFtTE":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureAdditive"},"ReRbR-4RtdXFs38wJ9T-C":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureSize"},"3QcRxt1kkJqOC7NGeaM2E":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#tint"},"ZMT3sVzFZYu8OAPjqfjas":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#totalParticles"},"c5RMQ2BZymSTBuVh1j_95":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#width"},"QRyWIyyR4lF6R7pqzecp4":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#wind"},"VwW1YYpxcnzxgzvTpHphN":{"uri":"/melonJS/docs/melonjs/plugin.html"},"0utuInQDe9zv3LmC0zXJc":{"uri":"/melonJS/docs/melonjs/plugin/Base.html"},"g3fd1QWOJ779pOVNv9_w1":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#app"},"sRJDM8dLUJfHIjg3t9EzM":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#version"},"xX00JikuPZJh0OsK7Bkhw":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html"},"erxQeYMmCcWuvFN9LgZoc":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#app"},"THx56OOYnA-pyiTgO_bU2":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#version"},"AtiETbjREXqewhtYVmpPw":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#constructor"},"xDClUZAo0IqO1CA1bG82V":{"uri":"/melonJS/docs/melonjs/plugin.html#cache"},"Fyvux8bTPkDXAManmtkl5":{"uri":"/melonJS/docs/melonjs/plugin/get.html"},"SIvLojdLY3hcIN1BPVEHl":{"uri":"/melonJS/docs/melonjs/plugin/patch.html"},"SxAZnN03gngZyT8wxtpVw":{"uri":"/melonJS/docs/melonjs/plugin/register.html"},"QZCfAwKxQUqgluBwX8ScD":{"uri":"/melonJS/docs/melonjs/pool.html"},"VuEIsRiNrK-MKX-9CdtyF":{"uri":"/melonJS/docs/melonjs/save.html"},"7pdxCJNa9YCds_485IJUr":{"uri":"/melonJS/docs/melonjs/save.html#add"},"OMxVbZ35LXpUyctmGCqQ7":{"uri":"/melonJS/docs/melonjs/save.html#remove"},"g-r4ferb59OpNh99Ropru":{"uri":"/melonJS/docs/melonjs/state.html"},"AKAk-R5R7NbBo3DZ8yvrr":{"uri":"/melonJS/docs/melonjs/state.html#CREDITS"},"6QZN-d-n9JGyLAnFSCBm3":{"uri":"/melonJS/docs/melonjs/state.html#DEFAULT"},"fx6Ny0IpdTpC8GS4Dh0EY":{"uri":"/melonJS/docs/melonjs/state.html#GAME_END"},"9WU_bYyuIayci0c127yt7":{"uri":"/melonJS/docs/melonjs/state.html#GAMEOVER"},"-2J4D7TbLUdvHHV-7wxti":{"uri":"/melonJS/docs/melonjs/state.html#LOADING"},"b13MeUNZrZ9WodbDIPFnB":{"uri":"/melonJS/docs/melonjs/state.html#MENU"},"S_gjWnFNO32QcIgpzFFlk":{"uri":"/melonJS/docs/melonjs/state.html#PLAY"},"HzReoGcnMXBfrOuqmdyPH":{"uri":"/melonJS/docs/melonjs/state.html#READY"},"RlgqpMWsuZLmG7_RuwiBu":{"uri":"/melonJS/docs/melonjs/state.html#SCORE"},"LUGb_cqynBQZ-PpX4nwVl":{"uri":"/melonJS/docs/melonjs/state.html#SETTINGS"},"4nVjzTiuqPPkDOnn9JupD":{"uri":"/melonJS/docs/melonjs/state.html#USER"},"rw-qM9y5Cj9zA4zqk8E8o":{"uri":"/melonJS/docs/melonjs/state.html#change"},"nJrPaymfh3hXeINlcBqGh":{"uri":"/melonJS/docs/melonjs/state.html#current"},"CoJpBiqFSRzdyraCc_VrW":{"uri":"/melonJS/docs/melonjs/state.html#isCurrent"},"N5wFgn-390O3UKki-Bo-h":{"uri":"/melonJS/docs/melonjs/state.html#isPaused"},"M2AB8RmywVYTqUoU5Bc2x":{"uri":"/melonJS/docs/melonjs/state.html#isRunning"},"uofLGkpk7N06KXa0mYI0g":{"uri":"/melonJS/docs/melonjs/state.html#pause"},"dG-LSW0FCVomwBiARjS7V":{"uri":"/melonJS/docs/melonjs/state.html#restart"},"X33bccRcibr_LXeNnBt8M":{"uri":"/melonJS/docs/melonjs/state.html#resume"},"Zz2zsnt5L4SEied6kPgg5":{"uri":"/melonJS/docs/melonjs/state.html#set"},"B3GoE9Ba4TbE-0X7tiGMH":{"uri":"/melonJS/docs/melonjs/state.html#set_"},"E-CxmpSqhB5GizYRTGUxQ":{"uri":"/melonJS/docs/melonjs/state.html#setTransition"},"Zec7MbTiGUcEM_RNnD0D8":{"uri":"/melonJS/docs/melonjs/state.html#stop"},"HcMIMZD5ONidD20KLvkry":{"uri":"/melonJS/docs/melonjs/state.html#transition"},"S-BY8aDsRsVh8CU78mRBR":{"uri":"/melonJS/docs/melonjs/timer.html"},"bgpF6ivAnwEyLzei7-D_c":{"uri":"/melonJS/docs/melonjs/TMXUtils.html"},"fa-7QdOQJtodkOuQwh8wU":{"uri":"/melonJS/docs/melonjs/TMXUtils/applyTMXProperties.html"},"3f1bMw1HazPC10-P2Mqie":{"uri":"/melonJS/docs/melonjs/TMXUtils/decode.html"},"SpradrXjcnUxJSZx_NNp6":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeBase64AsArray.html"},"ruldfqRzzSmbA4Za64GkW":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeCSV.html"},"G5Ac0FpiL0vsHA_9RROnX":{"uri":"/melonJS/docs/melonjs/TMXUtils/decompress.html"},"CH2TqD3demKZ4nrIEIhhW":{"uri":"/melonJS/docs/melonjs/TMXUtils/parse.html"},"SNvBP-PIiwWMXkJ3pyzSU":{"uri":"/melonJS/docs/melonjs/TMXUtils/setInflateFunction.html"},"xtXzk-aG1TRkbiuA0lJhw":{"uri":"/melonJS/docs/melonjs/utils.html"},"ITNUy7rFuTU1hOj-pzUWF":{"uri":"/melonJS/docs/melonjs/utils/agent.html"},"n0UAqwm1YS38wEfd10xqr":{"uri":"/melonJS/docs/melonjs/utils/agent/prefixed.html"},"Rh8_lcJxLbQz3caNOLymh":{"uri":"/melonJS/docs/melonjs/utils/agent/setPrefixed.html"},"gDwo1riJdPadaYuF68xd1":{"uri":"/melonJS/docs/melonjs/utils/array.html"},"bWGYtIgmPYy4lt6p1flPo":{"uri":"/melonJS/docs/melonjs/utils/array/random.html"},"lsjmBbaLrjcob6iAKICd-":{"uri":"/melonJS/docs/melonjs/utils/array/remove.html"},"ZB0acelZcpoDMnoSH6ClF":{"uri":"/melonJS/docs/melonjs/utils/array/weightedRandom.html"},"kvvYTAhM2XP1MWz756Vv9":{"uri":"/melonJS/docs/melonjs/utils/file.html"},"phO9y4DB4q76Ll5wWbCT1":{"uri":"/melonJS/docs/melonjs/utils/file/getBasename.html"},"n0zQO90ZimgMYp0UnrwhD":{"uri":"/melonJS/docs/melonjs/utils/file/getExtension.html"},"_Xc1iPaCPHWfccvIex3Pi":{"uri":"/melonJS/docs/melonjs/utils/file/getPath.html"},"KVguXovspQ9ugZ-v6EyiD":{"uri":"/melonJS/docs/melonjs/utils/function.html"},"jqbWK3hjtonjwz6MLuEa6":{"uri":"/melonJS/docs/melonjs/utils/function/defer.html"},"1VsDuoGm15IdFji-LBVXE":{"uri":"/melonJS/docs/melonjs/utils/function/throttle.html"},"WjlkSt4PyfFz_TESVGEZS":{"uri":"/melonJS/docs/melonjs/utils/string.html"},"AvFFPvmzHCZEuTCQ6v_6a":{"uri":"/melonJS/docs/melonjs/utils/string/capitalize.html"},"hp3cpHxJ1eJimE03Qn0cC":{"uri":"/melonJS/docs/melonjs/utils/string/isBoolean.html"},"x1b0fWO1nTAvg50T4HJ14":{"uri":"/melonJS/docs/melonjs/utils/string/isDataUrl.html"},"Pw5nXb3wMFE1eGQZQY-0N":{"uri":"/melonJS/docs/melonjs/utils/string/isNumeric.html"},"n5q-dndbn5P_d8bp0a2PE":{"uri":"/melonJS/docs/melonjs/utils/string/toHex.html"},"6CtiC37dPYlLLmxVtprV4":{"uri":"/melonJS/docs/melonjs/utils/checkVersion.html"},"BB31X4dVPwkXoHdYvQlFG":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html"},"Q_tM3ZkGJ1FtH3zyvnc8J":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debug"},"WPFWT7IePXCVj9vZ9BXlO":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debugToggleKey"},"wFPxIFsVXQDuVgkYd2xdv":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#hitbox"},"BhygOP2o7wrYRy6c65Ydg":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#quadtree"},"tOCpfkXVzcYCGg0H6kKnz":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#velocity"},"X3gktlXiHowyDyKivqdxy":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#webgl"},"Wd96BqSoO4UxKN87a3BFR":{"uri":"/melonJS/docs/melonjs/video.html"},"Ab3XsLaxBIj5wVVlyotdi":{"uri":"/melonJS/docs/melonjs/video.html#renderer"},"fd6yTXWrhMC_7cZHP9hkT":{"uri":"/melonJS/docs/melonjs/video/createCanvas.html"},"6OVVk31UV2x6odA7V-kKu":{"uri":"/melonJS/docs/melonjs/video/getParent.html"},"sGA7y0v-jy0b2ZfHEX2yB":{"uri":"/melonJS/docs/melonjs/video/init.html"},"YU6wGf0KiCOJRkNM8Uzmf":{"uri":"/melonJS/docs/melonjs/Application.html"},"mKq_zGLWpJieuUT27_joL":{"uri":"/melonJS/docs/melonjs/Application/Settings.html"},"iniot9bACLpRDbSuh3oAx":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#antiAlias"},"2WhV1RnAH9GFPzymw98gr":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#canvas"},"JD8tk36Am5fvCFLwNS5MH":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#consoleHeader"},"sH3BW0zMNmbNBNzXBiN7i":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#depthTest"},"XVyVYa8Ljd3v9RhAcgxmn":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#parent"},"3acmCWR11HIAWJe1pCOXW":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#powerPreference"},"sGIa6VUgcd9D1zuqFaxkL":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#preferWebGL1"},"EuXfK5peEY3C18L9LfJve":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#renderer"},"wn3PoONTydGwqo2wEkUmo":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scale"},"Hky9n72MPFNfKHfwI8C-c":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleMethod"},"ZodndXalAUM-c9FGfvkjI":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleTarget"},"7togCYnQxd7qIBrrgSMmZ":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#transparent"},"bGzmb98YewlOf49_EGx5K":{"uri":"/melonJS/docs/melonjs/Application.html#isInitialized"},"_IKnnqBqm8tssWXu7b7gG":{"uri":"/melonJS/docs/melonjs/Application.html#lastUpdate"},"qxZ2HQzqn3Nf4wHWUaTxx":{"uri":"/melonJS/docs/melonjs/Application.html#mergeGroup"},"uMPSKFChJjtOhAgISfbQK":{"uri":"/melonJS/docs/melonjs/Application.html#parentElement"},"Wwr7ugG5F32aZrgVNo8ro":{"uri":"/melonJS/docs/melonjs/Application.html#pauseOnBlur"},"tlJjL-ab6vkq-xC7Ib5ix":{"uri":"/melonJS/docs/melonjs/Application.html#renderer"},"tjl2Ya1QuWWp5bUy7Yqj8":{"uri":"/melonJS/docs/melonjs/Application.html#resumeOnFocus"},"o_IlD2yUtSvxt3tVOA0w4":{"uri":"/melonJS/docs/melonjs/Application.html#settings"},"_gTQOBMM4jSUUD1SoZkw2":{"uri":"/melonJS/docs/melonjs/Application.html#sortOn"},"vsNm5R-QKnC1sQ8aRkupb":{"uri":"/melonJS/docs/melonjs/Application.html#stopOnBlur"},"ZCzEnAeBgqykQ4tMPXYE9":{"uri":"/melonJS/docs/melonjs/Application.html#viewport"},"BRxuNNcnYcp9rGRzE-GI7":{"uri":"/melonJS/docs/melonjs/Application.html#world"},"_GKHEWQ9AYiaz-u3Aae4R":{"uri":"/melonJS/docs/melonjs/Application.html#constructor"},"7awSAN__a_V3z-W7UkzhL":{"uri":"/melonJS/docs/melonjs/Application.html#draw"},"6_DiCSKa-Vc7tyV6CI079":{"uri":"/melonJS/docs/melonjs/Application.html#getParentElement"},"9u88vfBDyfCqWOFvtdS7x":{"uri":"/melonJS/docs/melonjs/Application.html#init"},"rbOdtk3JiwQ4LIx9O5cCo":{"uri":"/melonJS/docs/melonjs/Application.html#onLevelLoaded"},"j75d5AnHHOJCZrEuRIV7U":{"uri":"/melonJS/docs/melonjs/Application.html#repaint"},"XzRwDztunXvO2zTnjvlvB":{"uri":"/melonJS/docs/melonjs/Application.html#reset"},"vHLaZdV_UbuMpmVhl-8fs":{"uri":"/melonJS/docs/melonjs/Application.html#update"},"IZLQ63e4-LIyRgOgipVQc":{"uri":"/melonJS/docs/melonjs/Application.html#updateFrameRate"},"AeVK7WXHaQXBOOBd46jZ6":{"uri":"/melonJS/docs/melonjs/BitmapText.html"},"bhlHS7gDI7O5XPr65obDp":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alpha"},"HOQml158KrwAsqH2Hv01d":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alwaysUpdate"},"3289sg3UxSo1KSl8RxhM1":{"uri":"/melonJS/docs/melonjs/BitmapText.html#ancestor"},"GPPxY3Ya2dmBjmC2XMOU8":{"uri":"/melonJS/docs/melonjs/BitmapText.html#anchorPoint"},"mVPA2dmZX9xm3cwYCKG-I":{"uri":"/melonJS/docs/melonjs/BitmapText.html#autoTransform"},"EfL-s_spyy6hFd6rt31IZ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#blendMode"},"f-IQLsJiwysj_8vnECOP8":{"uri":"/melonJS/docs/melonjs/BitmapText.html#body"},"XG5PUIgJZh0H1Vk0M88Jd":{"uri":"/melonJS/docs/melonjs/BitmapText.html#bottom"},"o4dsOpzDtorxnqXgc_Fzj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerX"},"f81d8Ypa9HwB1unn33tf9":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerY"},"gKuGg354MYa1tbT7aCT0n":{"uri":"/melonJS/docs/melonjs/BitmapText.html#currentTransform"},"QGryzhUB-dMG-7dh0kMk5":{"uri":"/melonJS/docs/melonjs/BitmapText.html#depth"},"I82ReRzf_0P9srTg5i5eJ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fillStyle"},"c51yuE2fUHHJ1etXVMTFm":{"uri":"/melonJS/docs/melonjs/BitmapText.html#floating"},"-LI7eWiF7Sg5iaMP9SCcS":{"uri":"/melonJS/docs/melonjs/BitmapText.html#GUID"},"YvJHZbtceDfAQ66Y6roUH":{"uri":"/melonJS/docs/melonjs/BitmapText.html#height"},"UIr9J3J9Mlkn8PlPBTSG5":{"uri":"/melonJS/docs/melonjs/BitmapText.html#inViewport"},"8b9_EtbU71f-9phAT-rdn":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isDirty"},"vYIegsq9fhXnSPJcjSCgo":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedX"},"JVFrFola-uW-tVqBCu_JN":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedY"},"4mxHoL7muVxPaziOMNS8m":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFloating"},"8GL_CQJs7u32aBdNQkQpf":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isKinematic"},"06JIzhjOuyKCHlfvMS4CN":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isPersistent"},"Jndg2zN2mOeINr8GCk4ky":{"uri":"/melonJS/docs/melonjs/BitmapText.html#left"},"T14Mu3SQUy6fIbRRN-rxt":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lineHeight"},"5ElvxzV3J5FJ7wv3PG5LF":{"uri":"/melonJS/docs/melonjs/BitmapText.html#mask"},"m3aJL1dl4bAXBvGSe7oGO":{"uri":"/melonJS/docs/melonjs/BitmapText.html#name"},"gePzxI3V-WHXsGBgxJCm-":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onVisibilityChange"},"A1bSEYZpoFg4UG5cA27Wd":{"uri":"/melonJS/docs/melonjs/BitmapText.html#parentApp"},"AwcfsOpYK5v0cONwuPYUj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#points"},"0Sx5lKaRCUhxCfFxSrdwV":{"uri":"/melonJS/docs/melonjs/BitmapText.html#pos"},"OYwLASDteBqO8IIF9aWHx":{"uri":"/melonJS/docs/melonjs/BitmapText.html#right"},"WFg3IIEbu6LWEBEbAUMMi":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shader"},"XVkAw4MhE-fxxrY27dtMu":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textAlign"},"RhZ3edjM5_iECsyw7X9ld":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textBaseline"},"mI8JWQAuRbTCnjaUESNFM":{"uri":"/melonJS/docs/melonjs/BitmapText.html#tint"},"FI_V3xmsm2AV8a5B3hp8J":{"uri":"/melonJS/docs/melonjs/BitmapText.html#top"},"maudYKhJPrF6UrkhUGCKL":{"uri":"/melonJS/docs/melonjs/BitmapText.html#type"},"lmLPImLKqUoXm3fqCwUZX":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateWhenPaused"},"M1L3aTESCF8SlvBq8nCTm":{"uri":"/melonJS/docs/melonjs/BitmapText.html#width"},"lUZqzOznojzT_mEtg4yWd":{"uri":"/melonJS/docs/melonjs/BitmapText.html#wordWrapWidth"},"rCKLbRx5mq5xVz9Kl6Nho":{"uri":"/melonJS/docs/melonjs/BitmapText.html#_text"},"D-2COiB51uqMK1gKmOMsP":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontData"},"W2GlzQ3BB-ywfpcz_FvJ5":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontImage"},"r6ObMc9ZGaKImTljMPwvV":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontScale"},"pJdYcO69fee1Xg0MD4Dwa":{"uri":"/melonJS/docs/melonjs/BitmapText.html#angleTo"},"rnwTtCs12Q5svDXRurnKL":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerOn"},"gO1T8I7A1nmK2IjofCpDc":{"uri":"/melonJS/docs/melonjs/BitmapText.html#clone"},"DDF8Ph1e2fQU93np9uS2l":{"uri":"/melonJS/docs/melonjs/BitmapText.html#constructor"},"pjSaibRAcFqmK60WuQpd8":{"uri":"/melonJS/docs/melonjs/BitmapText.html#contains"},"iiltaBgvIfVgMBUGVtr4D":{"uri":"/melonJS/docs/melonjs/BitmapText.html#copy"},"YOsUewSfciPHMxBLu2RLQ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#distanceTo"},"Hhb5rE6s7yNfJ9bNEkDYh":{"uri":"/melonJS/docs/melonjs/BitmapText.html#draw"},"UHF82vwdoKJ7qzWSADHCp":{"uri":"/melonJS/docs/melonjs/BitmapText.html#equals"},"LVEj4jkXlANEAMz9LH8wQ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipX"},"8YH4gPTDm-u28A1waFexD":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipY"},"Pph-2imKpJGfVStk8xpeg":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getAbsolutePosition"},"81iR13ysbc425P-0MtUhm":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getBounds"},"mPB0WxR9NrofZDFgDJ1W3":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getIndices"},"AIkbcs2Jen7wssfAh6REX":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getOpacity"},"bl2MWpCW-H_-KOABcl-J6":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isConvex"},"AjG14vimawoLusOtKGmSt":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFinite"},"HvQjTZRxRoGJ476W0sLuT":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lookAt"},"M2L6LUrX2MDpEBXnhaGtx":{"uri":"/melonJS/docs/melonjs/BitmapText.html#measureText"},"MAVWpjST2yX7O7zlHfJ92":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onCollision"},"ECyHdkrFtEcnJMrYhHc1K":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onDestroyEvent"},"L20OpBE2LNQPPrph13WcY":{"uri":"/melonJS/docs/melonjs/BitmapText.html#overlaps"},"zAw34bNJtSuKV3aZ0qHhq":{"uri":"/melonJS/docs/melonjs/BitmapText.html#postDraw"},"swIfHceWt14gyhouAb_wb":{"uri":"/melonJS/docs/melonjs/BitmapText.html#preDraw"},"ldCyoSmd5cgK5kTzD600m":{"uri":"/melonJS/docs/melonjs/BitmapText.html#recalc"},"V9RU4SCb-V_252ooDnqWG":{"uri":"/melonJS/docs/melonjs/BitmapText.html#resize"},"rbNxH5G5h0df8xe52vR0o":{"uri":"/melonJS/docs/melonjs/BitmapText.html#rotate"},"0QJjOfDR1543AZ-dFGmdG":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scale"},"fwF8OO91cgAU6MJSc-kcb":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scaleV"},"GQvoGsIShPU8k8fE_uMJw":{"uri":"/melonJS/docs/melonjs/BitmapText.html#set"},"X-IGXdKudUZtvK22BpLaB":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setOpacity"},"x_B3ci9dMbl8Mkv0GgacR":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setShape"},"pfDBj92utIUvaUtoB_FI0":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setText"},"mpVwFcHI1Vp6ykhcf-dpj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setVertices"},"RfGK7axkYbcVciJ0XC7dG":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shift"},"GZZepaMyJdMnjDToUdSnI":{"uri":"/melonJS/docs/melonjs/BitmapText.html#to2d"},"ySW0ELBVzmmVOzJTKyiOl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toIso"},"jn-vLp423fAV0jTRgXyxW":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toPolygon"},"K9vRSOyJEuoy0T6yTmY9R":{"uri":"/melonJS/docs/melonjs/BitmapText.html#transform"},"ESiSXj8j3XVAZb8nKD4PR":{"uri":"/melonJS/docs/melonjs/BitmapText.html#translate"},"xkkIQELM5MG6s7HQC2dHj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#union"},"gogf7Of_uebHfT4AwmwOr":{"uri":"/melonJS/docs/melonjs/BitmapText.html#update"},"hxNgLJMG26U6wAAu0C7yl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateBounds"},"uUKyVmTx2LXT8cfQ-VAlF":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onAnchorUpdate"},"WR2UqyH48wD81Ngj75S3T":{"uri":"/melonJS/docs/melonjs/Body.html"},"D5viemEDEsLjNtlbI3fdh":{"uri":"/melonJS/docs/melonjs/Body.html#ancestor"},"tLn_eUnonSkWqofDZFw-d":{"uri":"/melonJS/docs/melonjs/Body.html#bounce"},"yp7E13tgnhGZ68gHbTQ4t":{"uri":"/melonJS/docs/melonjs/Body.html#bounds"},"mxZajTBVEtZXzUXSRv0A1":{"uri":"/melonJS/docs/melonjs/Body.html#collisionType"},"rboXo-mRrTDtqZZPHwq4F":{"uri":"/melonJS/docs/melonjs/Body.html#falling"},"tf8a08B36wyxH7QgIG1Rv":{"uri":"/melonJS/docs/melonjs/Body.html#force"},"4_FDBVdi_df8NtmBC2hd0":{"uri":"/melonJS/docs/melonjs/Body.html#friction"},"YD7yLnfTQTN_MJswewYcf":{"uri":"/melonJS/docs/melonjs/Body.html#gravityScale"},"8TA7FRQM85BgQfxmP7O4n":{"uri":"/melonJS/docs/melonjs/Body.html#ignoreGravity"},"bnyEk8obbjvdEkJj-fl-j":{"uri":"/melonJS/docs/melonjs/Body.html#isStatic"},"v9xMgyhnQLa3urxPdFmLe":{"uri":"/melonJS/docs/melonjs/Body.html#jumping"},"s-OtUzW8OkjCdtSZKS2Zl":{"uri":"/melonJS/docs/melonjs/Body.html#mass"},"agZiZWLYIdUi3EO4MraOe":{"uri":"/melonJS/docs/melonjs/Body.html#maxVel"},"Adc6ya6xFQQ6adVKidFKp":{"uri":"/melonJS/docs/melonjs/Body.html#vel"},"U36J_tIOKAGEFf_3ICl06":{"uri":"/melonJS/docs/melonjs/Body.html#addShape"},"E-M3G5V0ZdsUDLXjIA5SK":{"uri":"/melonJS/docs/melonjs/Body.html#addVertices"},"rQ36F50omnXNGGZxT6g7G":{"uri":"/melonJS/docs/melonjs/Body.html#constructor"},"DXNwgK2FpadMrxDiR5asf":{"uri":"/melonJS/docs/melonjs/Body.html#contains"},"pFc2YX1lgvccozI8qIrUz":{"uri":"/melonJS/docs/melonjs/Body.html#forEach"},"fzbqphEZRoVUTs7CcyQx8":{"uri":"/melonJS/docs/melonjs/Body.html#fromJSON"},"4TN5hE9hi4dbKSiGj86QP":{"uri":"/melonJS/docs/melonjs/Body.html#getBounds"},"waXDLj1KBaOn8JoJ9Wca3":{"uri":"/melonJS/docs/melonjs/Body.html#getShape"},"0ZHUONDeF-COP8Ce_-Lrg":{"uri":"/melonJS/docs/melonjs/Body.html#removeShape"},"X4nsWz7MnK8iLLtSUrwwI":{"uri":"/melonJS/docs/melonjs/Body.html#removeShapeAt"},"jEs-JK7N-ecJscfS5RPJF":{"uri":"/melonJS/docs/melonjs/Body.html#respondToCollision"},"4BgZv--GrJMYqHxteQv0I":{"uri":"/melonJS/docs/melonjs/Body.html#rotate"},"qsXVYKAFEXW9gHyD5xt04":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionMask"},"Or4iaJOvJ4FBxz1Cbq3XR":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionType"},"Qu8M-pXYg4UBvA_MaiBqp":{"uri":"/melonJS/docs/melonjs/Body.html#setFriction"},"puVg_DxKEMYRZ3qlG7HHu":{"uri":"/melonJS/docs/melonjs/Body.html#setMaxVelocity"},"2ka-JPLGHPjWSA_km8ez3":{"uri":"/melonJS/docs/melonjs/Body.html#setStatic"},"JoLH0EbZNbRY3JcC5B9ZA":{"uri":"/melonJS/docs/melonjs/Body.html#setVertices"},"aQTu2rtrCPaNyKUSUs8Ur":{"uri":"/melonJS/docs/melonjs/Body.html#update"},"WvDJX3q41Z-hXeYeeIsYS":{"uri":"/melonJS/docs/melonjs/Bounds.html"},"aCBSVxWVxCZYwSn0Vf0EI":{"uri":"/melonJS/docs/melonjs/Bounds.html#bottom"},"KnaRovwyMLn0s2CsHuaVZ":{"uri":"/melonJS/docs/melonjs/Bounds.html#center"},"fKlyv8DWA4o7kya5E1CvC":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerX"},"EV0kSjfmcKulIqhPjpnCB":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerY"},"7InfnrqLyHtAJJkCjgmOI":{"uri":"/melonJS/docs/melonjs/Bounds.html#height"},"MZKA1R38-OuE4gyv1N85E":{"uri":"/melonJS/docs/melonjs/Bounds.html#left"},"wR-q6eVIIUUy3UiAO0QXo":{"uri":"/melonJS/docs/melonjs/Bounds.html#right"},"_7lG6I_Ei0Utoa6XjNnHg":{"uri":"/melonJS/docs/melonjs/Bounds.html#top"},"Cuzys6H9IOYgehVbM7mrt":{"uri":"/melonJS/docs/melonjs/Bounds.html#type"},"t20ZMddRvOk7HUSQhoIAA":{"uri":"/melonJS/docs/melonjs/Bounds.html#width"},"VD69aXFDRcMMO9xWFulx3":{"uri":"/melonJS/docs/melonjs/Bounds.html#x"},"r-E7qkocVbPR1Tna2W7rN":{"uri":"/melonJS/docs/melonjs/Bounds.html#y"},"L1ix4JbJ1C_WDYmvMI8lD":{"uri":"/melonJS/docs/melonjs/Bounds.html#add"},"q-vgAnUEzZqkm2wXab3k_":{"uri":"/melonJS/docs/melonjs/Bounds.html#addBounds"},"TWPJ_9i5CnOcPKA0Ov4-w":{"uri":"/melonJS/docs/melonjs/Bounds.html#addFrame"},"irGZGl0-FuY4x5kuFtgjF":{"uri":"/melonJS/docs/melonjs/Bounds.html#addPoint"},"ayl2rqDyt7ajYSs5RcZ9z":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerOn"},"OC19_u_6PAJsdo5lC9Uj6":{"uri":"/melonJS/docs/melonjs/Bounds.html#clear"},"zOPqNJnmEkx1SgvS70QsB":{"uri":"/melonJS/docs/melonjs/Bounds.html#clone"},"0NfUqz8pKtAqcZv2l6XX9":{"uri":"/melonJS/docs/melonjs/Bounds.html#constructor"},"VAPbakFU_s16VWO5Xazap":{"uri":"/melonJS/docs/melonjs/Bounds.html#contains"},"zq12KvUr0OwqOwN7SKooT":{"uri":"/melonJS/docs/melonjs/Bounds.html#isFinite"},"hDIHFaM6ws1-becw7C1np":{"uri":"/melonJS/docs/melonjs/Bounds.html#overlaps"},"MWFPPsD-0J5NVY4CPVG_z":{"uri":"/melonJS/docs/melonjs/Bounds.html#setMinMax"},"TqmRmCarxisMqpsdtqzKB":{"uri":"/melonJS/docs/melonjs/Bounds.html#shift"},"hD7YHJOwP8zhHtXso7Q_h":{"uri":"/melonJS/docs/melonjs/Bounds.html#toPolygon"},"dCEQHSrzWmnGQWKaFrypk":{"uri":"/melonJS/docs/melonjs/Bounds.html#translate"},"JnCLwwOgtQPG0s6OM1CuQ":{"uri":"/melonJS/docs/melonjs/Bounds.html#update"},"urNeo5G4iw1OglUUE4kQz":{"uri":"/melonJS/docs/melonjs/Camera2d.html"},"F5wu1dZZb6-RuCB9MR9po":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html"},"FFjX4f_QfhrBU0UYyber_":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#BOTH"},"fJpgkWs-_JcGENuKGVyrO":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#HORIZONTAL"},"96C1I_lxnHDvH7bn7GlYE":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#NONE"},"FNhfb4tZekZ09vCkg4ge1":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#VERTICAL"},"_4UjHFU8Fum5Ay3Bd4vJ8":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alpha"},"7ss0JGRYgn4FrUJo-5jWW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alwaysUpdate"},"Job4T7dk5tM27g-Ymmr95":{"uri":"/melonJS/docs/melonjs/Camera2d.html#ancestor"},"yxsmm5i-zrwYsaA8zToDB":{"uri":"/melonJS/docs/melonjs/Camera2d.html#anchorPoint"},"rxfKyM9wFqlceNhtPdEjV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#autoTransform"},"dq-FrO7gFX5lZeM_5G9fD":{"uri":"/melonJS/docs/melonjs/Camera2d.html#blendMode"},"g4y9Ldy5Cgg6CYn1mrErT":{"uri":"/melonJS/docs/melonjs/Camera2d.html#body"},"zTewql1XSbHMRP3qJiuMM":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bottom"},"tXdjoMeoaCMWZLaiPUN6B":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bounds"},"zDkECVl2IAfwL3QZ4oxii":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerX"},"4Sv-C97s-M6llduClLD51":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerY"},"_hNma3JETseifpcldZnD5":{"uri":"/melonJS/docs/melonjs/Camera2d.html#currentTransform"},"MULvLEwvx9iSBln5OWwbe":{"uri":"/melonJS/docs/melonjs/Camera2d.html#damping"},"6gxOdUCIRYfDxp0ibEBUh":{"uri":"/melonJS/docs/melonjs/Camera2d.html#depth"},"Y5aHcqJDdN51zGMSQSYkt":{"uri":"/melonJS/docs/melonjs/Camera2d.html#far"},"0JGz7dPDFEa_Hsb7sKssu":{"uri":"/melonJS/docs/melonjs/Camera2d.html#floating"},"nVAAgOvfzTL1ofkdclvcZ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#GUID"},"zfWdh7HKHS1zufFAgHMlb":{"uri":"/melonJS/docs/melonjs/Camera2d.html#height"},"aiM-F8GLyUX2JzjG7wiWI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#inViewport"},"CgcKUtqo9oUOXPJsvVePS":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isDirty"},"dMHr7hEO9hsNICOo6Q-TP":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedX"},"DBq0ZJOgfl-9XVoHwrjo3":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedY"},"jxdX0cLLhOm-G8T0nvHUp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFloating"},"pdu51yIdhL3JZ1eq8Iv8R":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isKinematic"},"Kg7TJ_ZdERRf88oORtllE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isPersistent"},"J7CfykqTrp_hXwcG11kua":{"uri":"/melonJS/docs/melonjs/Camera2d.html#left"},"-eZmC9jpUKnizv5FinWMp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#mask"},"LE_KqSoO_arMldjMl8iFh":{"uri":"/melonJS/docs/melonjs/Camera2d.html#name"},"mYT4ULwX9QCqlSBBG02cE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#near"},"pGJKX4v9Mkk197o_8Pue0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onVisibilityChange"},"uhW2auce-runmPbciJUq8":{"uri":"/melonJS/docs/melonjs/Camera2d.html#parentApp"},"aGjiRZRVRfox_FXHSfKIE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#points"},"bf924XjxAzFvCiMl9cH5U":{"uri":"/melonJS/docs/melonjs/Camera2d.html#pos"},"ytrzLAL9cowZjSO0vUGW4":{"uri":"/melonJS/docs/melonjs/Camera2d.html#projectionMatrix"},"goVB_fTeskz59Z3OQf0PC":{"uri":"/melonJS/docs/melonjs/Camera2d.html#right"},"YtpolD82VR9tIdK2_anGi":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shader"},"vwJ8p9izYunMvZ-Nggozk":{"uri":"/melonJS/docs/melonjs/Camera2d.html#tint"},"7HO64FDJSP1Xki4XOPaD5":{"uri":"/melonJS/docs/melonjs/Camera2d.html#top"},"_YMGUWWWmgv6UVC_VKfid":{"uri":"/melonJS/docs/melonjs/Camera2d.html#type"},"8hSuQ4viKcpNf_zrKh6ju":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateWhenPaused"},"yZYhBHDozpY6bnQwBo9ba":{"uri":"/melonJS/docs/melonjs/Camera2d.html#width"},"j3aX69yPukLpNIQymsteL":{"uri":"/melonJS/docs/melonjs/Camera2d.html#smoothFollow"},"7oHRBrBF5uFYVoy0kdAJE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#angleTo"},"ZiJaQ7bYvAM5rNFoIzjqT":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerOn"},"Q8x6H5hlp7WzG_Y8rpGnD":{"uri":"/melonJS/docs/melonjs/Camera2d.html#clone"},"Khnhy_FoaVUmv5odgna6_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#constructor"},"cZXzIpJsJ0nip7bjgpSi0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#contains"},"rZDOHko-yMXOTqf7e-QHl":{"uri":"/melonJS/docs/melonjs/Camera2d.html#copy"},"SXsYr_RHVTQPIUqZVqpEC":{"uri":"/melonJS/docs/melonjs/Camera2d.html#distanceTo"},"thtmeOpx9z5B0ehtsbMpx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#draw"},"NrDMzIjotPceVli_hvMy0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#equals"},"gSP5BjTcJdydPjkpyjfjj":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeIn"},"4rU56RAgKrs5ISwcq0UiP":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeOut"},"VGdxezTz4EyBIrp3mHczG":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipX"},"AilWDSFE-LGrHPlRl5ADG":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipY"},"lJWIJMEW5cnc4LWlhSKJ2":{"uri":"/melonJS/docs/melonjs/Camera2d.html#focusOn"},"1AcOuu39jE3eSPQZPe4-n":{"uri":"/melonJS/docs/melonjs/Camera2d.html#follow"},"_As7TFkAQ0fFuNBWYcXTE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getAbsolutePosition"},"Z5d9ON7XpHp9nHkEzaRbn":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getBounds"},"4czLq0s6U8Nh5WkUoU4Dr":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getIndices"},"Kk_Z2LXCWvTaYB6wpcIjq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getOpacity"},"ZLnp2lHgRFS2MY5s8oVbX":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isConvex"},"4OXUA3ivpCDQUWoDjmpPP":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFinite"},"4_OQnIXu5kdEmEa1vCmSV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isVisible"},"YbHKJ9Kb2MXAUrJWWjLkk":{"uri":"/melonJS/docs/melonjs/Camera2d.html#localToWorld"},"LN2lDPdW2uV3aBgQWcWid":{"uri":"/melonJS/docs/melonjs/Camera2d.html#lookAt"},"RQTtRArBjfR4SKHBykmQ9":{"uri":"/melonJS/docs/melonjs/Camera2d.html#move"},"mrd4Abdkeww98sdzee7in":{"uri":"/melonJS/docs/melonjs/Camera2d.html#moveTo"},"_w5WMPnDRLzrM36udZLiM":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onCollision"},"rlNVELkNB0_Hfq6S56owW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onDestroyEvent"},"djNMUC-CzTm-4tcEA7eSQ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#overlaps"},"soNjYs9-jNAl9ELRjdwXD":{"uri":"/melonJS/docs/melonjs/Camera2d.html#postDraw"},"I7ifTq6ag-Y31QMALreGi":{"uri":"/melonJS/docs/melonjs/Camera2d.html#preDraw"},"ALIOuy5hMtFVbdRYpg-sw":{"uri":"/melonJS/docs/melonjs/Camera2d.html#recalc"},"kSLdWTl8SCujjl7Ugfbnf":{"uri":"/melonJS/docs/melonjs/Camera2d.html#reset"},"_o9AgtIuTEOnCr3U9BWsU":{"uri":"/melonJS/docs/melonjs/Camera2d.html#resize"},"wDgp1g-_k0qliCOdcuAaR":{"uri":"/melonJS/docs/melonjs/Camera2d.html#rotate"},"XbtucepVnfnNXvybDkCCW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scale"},"SxDNgZ181DpZfA3VJTo4v":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scaleV"},"vXXJkZGCx4Ub0uIrcdSLI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setBounds"},"rfTkRCpd2mrmOQ0ggLCnw":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setDeadzone"},"9I5fOVCyCCbgKvDH13IJM":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setOpacity"},"3QsqcHXNXkoV8eLp7UufR":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setShape"},"4G9ghSQTY5spK8TQZRdCu":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setVertices"},"Mpp5_niPg-_EaiRuW1fIJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shake"},"O7Vr-_9HoenQZmsh89OEz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shift"},"UmD5VRnx7zHLH3CA1sUbZ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#to2d"},"hHGKy9U_s6m7AZE1ywvsl":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toIso"},"wFD82-XC5bBgUvldUWZ3J":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toPolygon"},"wO4ehOjb-TJcHD-szI3Uh":{"uri":"/melonJS/docs/melonjs/Camera2d.html#transform"},"t5G6K9AhEG2WtwaqCdGe4":{"uri":"/melonJS/docs/melonjs/Camera2d.html#translate"},"4GkX3s8gRyzCDRP1pP22N":{"uri":"/melonJS/docs/melonjs/Camera2d.html#unfollow"},"lj_pZDTlH1cXhZReYwcEl":{"uri":"/melonJS/docs/melonjs/Camera2d.html#union"},"8b4jzRO2O_p5Oy4SaHjHb":{"uri":"/melonJS/docs/melonjs/Camera2d.html#update"},"4GruPpy528U-fIUIScZGZ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateBounds"},"g2gw8hYVqgrPde8TSfxZI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#worldToLocal"},"lzy-yecMUO3HLNO0W4tTQ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onAnchorUpdate"},"amLhFLeEuALcU1_BrVZeZ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html"},"b0ovXSKbZBGThVBNVrojU":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#depthTest"},"bDWxCbA8LVVR08gSDbQdC":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#designRatio"},"QKf4JyoomRrrkEmPFdp16":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#height"},"B46qrUTAPuhG1biycwAG4":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#isContextValid"},"K85B5egNJc5c7YErEVypr":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#path2D"},"y_gWopcOGiSZ5a6Ob-8QJ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scaleRatio"},"g7xBpOnyIEZTOiY-VhFHY":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#settings"},"jQjoxAvSFxIxr4FJcQ58T":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#type"},"83hWiGo1taLu29xo9S1SI":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#width"},"_jur4bUN3Nqde_HVUIS6a":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#beginPath"},"4ndpLzmiDIVBapJoJGSLx":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clear"},"bAaDSgKukcyuDqmlIK67F":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearColor"},"vbdrF_H0OO6xGS10at9bc":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearMask"},"6y0EpM1ji_4BGGXZYTlTx":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearRect"},"ByreMeGnowDDS0uplKomM":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearTint"},"k7ylJZ2G8tm3W3p-it0CM":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clipRect"},"SrtLV31KfONsZ3_eClM1c":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#closePath"},"sDks2OWnXzuM9_wKaSJMd":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#constructor"},"bI5ECaS3n89xkoUKucwbB":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#createPattern"},"qsM9hIDPBCAVXMkNp72__":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawImage"},"epOVTnI4tATsOxtBnPMkG":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawPattern"},"wmLby7ffOpZjQqAw8raUK":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fill"},"3zbYmRlRLySUPjYArmGH8":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillArc"},"tGJEy9jb-vyg0TWfBbwuR":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillEllipse"},"5m-HJ237fvg9oX-EVVnlI":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillLine"},"0uQJey5C9kkTJ8Jm50oJH":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPoint"},"HYEIVXIcaOnFEAw2oP7V_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPolygon"},"BnLBPvQuK2fiQ4vw7-EmI":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRect"},"AAc4BpE0gzoH8lRCROwIX":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRoundRect"},"tSWEjnH3McaJtT-cWg5a-":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#flush"},"GYVv_xwihETIOxlR0Lbj0":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getBlendMode"},"bbTQ_8NqD_lor95tKqvZQ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getCanvas"},"MpA-mtARbuaJ17bioH9Bc":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getColor"},"526MbAAfWLynriTP-3AUD":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext"},"QwScrwgkWcY7_9D8I-iws":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext2d"},"3BQKzihzJzwbbgi_2lj7U":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getGlobalAlpha"},"4_EEPPN33QTTHQ6agxZ0l":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenCanvas"},"7Q5o54V8ZbEBkOVsvpJ58":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenContext"},"L8Npam1vOJTzK8hZoVzVu":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#globalAlpha"},"2UmdyhJo4Y-T8Z9WcFa_g":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#lineTo"},"lONDRHO4SYxbuh9l8nipQ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#moveTo"},"Tt3vzZpgiOeh_CRjoC7dk":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#overlaps"},"rvUI9oWeXYVs1mm8-Laas":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rect"},"KiaH7AlEr-f6PFYfdCU9X":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#reset"},"zFxWzPiKNXgJk7bhKnHcT":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resetTransform"},"vzgytcx7khDLSUiD0H16K":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resize"},"veOIVWQ_IZCvcAG2jrezx":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#restore"},"a4ozAA9N6i18GAqAWrGzv":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rotate"},"7iwkdywkTExS36OqIFM-9":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#roundRect"},"ye1B2Fb6O9PDStxz5ekIZ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#save"},"doVtCLA1wak2v7N37BbHN":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scale"},"vWATNXT_K38HrlFzSm_O9":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setAntiAlias"},"oPSeM5bM4S5w81gcyr-F2":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setBlendMode"},"ERMCTZS2faxNJowOiJttq":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setColor"},"FZf-AMKbJ3y3maGeVIY0N":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setGlobalAlpha"},"KTCMvCxYaJUXzTsUlbGea":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setLineWidth"},"QCrqUD_e8DqwDG2Y6DZ0F":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setMask"},"kNGZQ42SB2z2Qkv6ii4RN":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setProjection"},"jVzESnGowmah9JdtAAxHH":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTint"},"XQtROdhcVIjqwFsWvfxby":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTransform"},"jUwmzoOEpwrB2oRJPnMsW":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#stroke"},"46-iyPWRMqNu2GNysnOII":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeArc"},"F4i8G6V-h99bJsZiujcvc":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeEllipse"},"8onL7AW3r-kaKpF1lOIZ4":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeLine"},"qHatd_W2HZ6jKwBe8o3gc":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePoint"},"9V3OR4B-zw6OklEJFcA5g":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePolygon"},"REybgyqn9w4AHZnYMG3Ri":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRect"},"NboklDHodOAeUXez_gttA":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRoundRect"},"mM1iHRrBnFmpNAHaC3qEY":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#tint"},"l4UJWYzsk3W46-ha7k3Ht":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toBlob"},"l1wbola082gt7RPlLGScf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toDataURL"},"bfs3Om_PKJkK-GvlPJWLi":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toImageBitmap"},"MukREe7jpyqm5dsrFkB_D":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#transform"},"onLwkuAvZinJ-LVTWHNMd":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#translate"},"txXY_cIpQ_v8TnRHs1OYI":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html"},"GTF3vW4VmBrImtv_ovoD3":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#canvas"},"kJTdbKc1uK7YoPOh6vesw":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#context"},"Mo1HqM2ggOwd3WMhYHVKU":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#height"},"NzkSSPck13GdcrizWXaP-":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#width"},"tsCrrIxujRn1jxpabCu8q":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#clear"},"rkDkhofzC_ZQn6o1cETO1":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#constructor"},"02kMN5b5KSiZQnySriiB-":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#getImageData"},"JB6iZDbBB-U8lgGAz5Dyl":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#invalidate"},"5RSWSYz-Bb0UBLcl7Rvxw":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#resize"},"aPv5uGK-4wLPIJNmFtTH8":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#setAntiAlias"},"xIXJ0bP8uYFo5xO93ryru":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toBlob"},"Ge4YaVj5e90Bb7RGhrB0w":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toDataURL"},"GoEvNaY72aAdx71LFVxAI":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toImageBitmap"},"CNEN1g2E6CNNv1TGC4K0C":{"uri":"/melonJS/docs/melonjs/Collectable.html"},"ayK2O8rOxyBQJYXgQslpi":{"uri":"/melonJS/docs/melonjs/Collectable.html#alpha"},"UkoYKhFzMJiK4-xU5w1XD":{"uri":"/melonJS/docs/melonjs/Collectable.html#alwaysUpdate"},"AfpouRMqKgGL03abi7YQo":{"uri":"/melonJS/docs/melonjs/Collectable.html#ancestor"},"OPDu6t_5u_oUoloFr4mgu":{"uri":"/melonJS/docs/melonjs/Collectable.html#anchorPoint"},"Rp0KP1pr-9wXPaV2AgI8s":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationpause"},"_5ZRTeeYWuEa77IOCaZ_i":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationspeed"},"c0Sz8f8J2Y0JRu8pYL4Cr":{"uri":"/melonJS/docs/melonjs/Collectable.html#autoTransform"},"jYah6FLfqIxwDFZXK4GjN":{"uri":"/melonJS/docs/melonjs/Collectable.html#blendMode"},"hLGWqZPwtY8joz-G_lKti":{"uri":"/melonJS/docs/melonjs/Collectable.html#body"},"7mcIdnS5pUyO7QsQhgnn_":{"uri":"/melonJS/docs/melonjs/Collectable.html#bottom"},"f_4ODxCZVhrkP-OltcErn":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerX"},"ye9hCEnHVe40iJYk0rif6":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerY"},"68lmNHG_6ADsgnvq0DydH":{"uri":"/melonJS/docs/melonjs/Collectable.html#currentTransform"},"02X6vwdTbGL1JTuxL8jhd":{"uri":"/melonJS/docs/melonjs/Collectable.html#depth"},"4d2g3_AJHvC7k_ORt-X7c":{"uri":"/melonJS/docs/melonjs/Collectable.html#floating"},"8mAIBiW0QkD3TB2iH7t90":{"uri":"/melonJS/docs/melonjs/Collectable.html#GUID"},"EYRI-pJLoTMlc9Hvk4yF-":{"uri":"/melonJS/docs/melonjs/Collectable.html#height"},"GasDY4WMUQ5eqdL9Keg4p":{"uri":"/melonJS/docs/melonjs/Collectable.html#inViewport"},"vgAYzOF-jnLilTtEw-4UQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#isDirty"},"UqjVy5v1iYXpBdnTNoCxZ":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedX"},"D0Tf9K8xG3hY9A11FE__u":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedY"},"Lip-CshcQWzMQBoXp4-Nv":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFloating"},"At4uem_pHfk6Qn8kI0RTQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#isKinematic"},"bO44lj5_cD7EJxJB7XyuB":{"uri":"/melonJS/docs/melonjs/Collectable.html#isPersistent"},"7lKHHgx8n1WPIAS4gFfq3":{"uri":"/melonJS/docs/melonjs/Collectable.html#isVideo"},"-Y_rsYt1dX2yMYrCC-xHy":{"uri":"/melonJS/docs/melonjs/Collectable.html#left"},"bEvxgGAUIzuVEa7ub0ZMQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#mask"},"kCh0ZR0am5SyKMDseRxxf":{"uri":"/melonJS/docs/melonjs/Collectable.html#name"},"1ly8ILjf9qjDzz0_xW00b":{"uri":"/melonJS/docs/melonjs/Collectable.html#offset"},"YVPFMKYk6Ik-qmK0VEncx":{"uri":"/melonJS/docs/melonjs/Collectable.html#onVisibilityChange"},"Zkvn-aWyWymIet83fp91-":{"uri":"/melonJS/docs/melonjs/Collectable.html#parentApp"},"E7gS6tUOkf9TjlNF_nhaM":{"uri":"/melonJS/docs/melonjs/Collectable.html#points"},"VAGc8M3WS_PgPeZthL2n4":{"uri":"/melonJS/docs/melonjs/Collectable.html#pos"},"pqgItbn4W5ZB1LWc5Yffk":{"uri":"/melonJS/docs/melonjs/Collectable.html#right"},"S5IjOkjYON5D0MvaD8AYl":{"uri":"/melonJS/docs/melonjs/Collectable.html#shader"},"GkpmS9rqGfuPc6Y_LAEGn":{"uri":"/melonJS/docs/melonjs/Collectable.html#source"},"XFmQ5UTh9RhQ9n8eklE_b":{"uri":"/melonJS/docs/melonjs/Collectable.html#tint"},"PfY8m-Z4_9jCHufFjaJ1P":{"uri":"/melonJS/docs/melonjs/Collectable.html#top"},"OOIXMwb97s-KDEnMw9N4G":{"uri":"/melonJS/docs/melonjs/Collectable.html#type"},"XFhIh9KBsVtQl17zVSn2R":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateWhenPaused"},"LoEzltHOMl1WkHh_o8ylG":{"uri":"/melonJS/docs/melonjs/Collectable.html#width"},"5YUaDlTFfczwu-UvrVEFj":{"uri":"/melonJS/docs/melonjs/Collectable.html#addAnimation"},"jWH5vPP-R0Pyv1NCNFl7q":{"uri":"/melonJS/docs/melonjs/Collectable.html#angleTo"},"XIclooqgCwF1RFJXzTCnl":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerOn"},"oO59O1awbjwKPlcGX3o8h":{"uri":"/melonJS/docs/melonjs/Collectable.html#clone"},"T_062u6NSTqYKjH1Zsz3j":{"uri":"/melonJS/docs/melonjs/Collectable.html#constructor"},"vTWll7XTEr3m3WSTWPrbx":{"uri":"/melonJS/docs/melonjs/Collectable.html#contains"},"0sr3hmeyuGpdLNwFeIepu":{"uri":"/melonJS/docs/melonjs/Collectable.html#copy"},"tc9HNxRFBMXZQn0Iro2hH":{"uri":"/melonJS/docs/melonjs/Collectable.html#distanceTo"},"yxZP4g7nKRw1-d6iDd7-0":{"uri":"/melonJS/docs/melonjs/Collectable.html#equals"},"7JhEbvTGqL_prCy54UtY7":{"uri":"/melonJS/docs/melonjs/Collectable.html#flicker"},"0TiimV28Kk9u7GRg5sjDt":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipX"},"_WEeoF576iPfWEc6hyGJP":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipY"},"xhDbhYtiK6YzllpmQ1W5J":{"uri":"/melonJS/docs/melonjs/Collectable.html#getAbsolutePosition"},"7O6VGAAKjFbtRpPdLSaW0":{"uri":"/melonJS/docs/melonjs/Collectable.html#getBounds"},"2ZB9kVoBJahJOgqeHPGl3":{"uri":"/melonJS/docs/melonjs/Collectable.html#getCurrentAnimationFrame"},"Bfrw9sNJn6z5PVcvxDT6q":{"uri":"/melonJS/docs/melonjs/Collectable.html#getIndices"},"q92Y-551NKqUrkoqLQdar":{"uri":"/melonJS/docs/melonjs/Collectable.html#getOpacity"},"HuhbCCrYUEzost9Ignefq":{"uri":"/melonJS/docs/melonjs/Collectable.html#isConvex"},"p7usa4Ev20kLsQIh6Z7Px":{"uri":"/melonJS/docs/melonjs/Collectable.html#isCurrentAnimation"},"zM8_gXn8q3rJYbnGg4CtQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFinite"},"F0X-hrF3ENPr31hN3k8zB":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlickering"},"iR6Fg4rY1dhKGCPpK7CFq":{"uri":"/melonJS/docs/melonjs/Collectable.html#lookAt"},"_i4fnDI2ffgdPM4SgGf1G":{"uri":"/melonJS/docs/melonjs/Collectable.html#onCollision"},"ClkRPfEIfjWZGsizaVPNn":{"uri":"/melonJS/docs/melonjs/Collectable.html#onDestroyEvent"},"6Zon1KF3hL0dLvSGKwb7x":{"uri":"/melonJS/docs/melonjs/Collectable.html#overlaps"},"dgyEgo4APkvGVZNJNWP-I":{"uri":"/melonJS/docs/melonjs/Collectable.html#pause"},"UnKQyo0i4Q5GmcspfbQ9c":{"uri":"/melonJS/docs/melonjs/Collectable.html#play"},"NozTst3YwVXnvQ_Ol5Pe9":{"uri":"/melonJS/docs/melonjs/Collectable.html#postDraw"},"7_wwImxPYSage5nwcdQr2":{"uri":"/melonJS/docs/melonjs/Collectable.html#preDraw"},"IfweYvjd0TGrlFnG6bcp8":{"uri":"/melonJS/docs/melonjs/Collectable.html#recalc"},"ohwCA1SfGpDjNnTVwateb":{"uri":"/melonJS/docs/melonjs/Collectable.html#resize"},"YJB46rrHdMzlNHWeP4ugC":{"uri":"/melonJS/docs/melonjs/Collectable.html#reverseAnimation"},"EcxzOM8eC8B5z6zW7_Bxu":{"uri":"/melonJS/docs/melonjs/Collectable.html#rotate"},"8adGfxI0SVhD2-D4MqM_8":{"uri":"/melonJS/docs/melonjs/Collectable.html#scale"},"JdJBBaZaplDr8OcAQ6c3Y":{"uri":"/melonJS/docs/melonjs/Collectable.html#scaleV"},"DCA1ABsHSiMiG3zwO1JIc":{"uri":"/melonJS/docs/melonjs/Collectable.html#setAnimationFrame"},"b2Gn4F6lIc-mRuYpO_ovG":{"uri":"/melonJS/docs/melonjs/Collectable.html#setCurrentAnimation"},"F5DGAkQn065t2o-tDcASg":{"uri":"/melonJS/docs/melonjs/Collectable.html#setOpacity"},"ZNIyPJ3LkvMSEumbFWFM4":{"uri":"/melonJS/docs/melonjs/Collectable.html#setRegion"},"dx70YqNrAL35c9VRr9fJP":{"uri":"/melonJS/docs/melonjs/Collectable.html#setShape"},"K1BoYPrbr73fJFgWH6hyZ":{"uri":"/melonJS/docs/melonjs/Collectable.html#setVertices"},"NgWmjRp18Bg8yNVbnsyay":{"uri":"/melonJS/docs/melonjs/Collectable.html#shift"},"SGQRJJhhs5WM0-n2GWZkZ":{"uri":"/melonJS/docs/melonjs/Collectable.html#to2d"},"L2TlR9GR7BmEhunFhCFtg":{"uri":"/melonJS/docs/melonjs/Collectable.html#toIso"},"UlH2AxAU38CDkh3Yrb2Pd":{"uri":"/melonJS/docs/melonjs/Collectable.html#toPolygon"},"nb9uAY_8XkExwMltPgIjn":{"uri":"/melonJS/docs/melonjs/Collectable.html#transform"},"pG3SoiT4OSrP7IGKNuwxE":{"uri":"/melonJS/docs/melonjs/Collectable.html#translate"},"ePE9UeW9NEwr9jc-umWwW":{"uri":"/melonJS/docs/melonjs/Collectable.html#union"},"wwIyOdxZ6aU73EJ1xnmfw":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateBounds"},"cglMhnytwEe5WU6URbu-j":{"uri":"/melonJS/docs/melonjs/Collectable.html#draw"},"M-3DQ2wH-MAuDmwvsVKKO":{"uri":"/melonJS/docs/melonjs/Collectable.html#update"},"gpWBT1Go9b7hDsijCDf1P":{"uri":"/melonJS/docs/melonjs/Collectable.html#onAnchorUpdate"},"MA3vcwpZ29SgGYr9hla4v":{"uri":"/melonJS/docs/melonjs/Color.html"},"Mkm940Hr3o8-ofE9SXKA3":{"uri":"/melonJS/docs/melonjs/Color.html#alpha"},"Hj4iDqqdfWzDAsp6ev6dz":{"uri":"/melonJS/docs/melonjs/Color.html#b"},"PSQDw1TyQQBKWZNgTyQBj":{"uri":"/melonJS/docs/melonjs/Color.html#g"},"CFzN-r7UvFTligdqsufna":{"uri":"/melonJS/docs/melonjs/Color.html#r"},"Kfcdhu8RvGj5M9W6OSic2":{"uri":"/melonJS/docs/melonjs/Color.html#add"},"PBN28KawvlnPcUwKEN9zj":{"uri":"/melonJS/docs/melonjs/Color.html#clone"},"zIKpOsQZMdCpGAukJ1K_X":{"uri":"/melonJS/docs/melonjs/Color.html#constructor"},"s1lYcd3NeIHtiT4pVJAKL":{"uri":"/melonJS/docs/melonjs/Color.html#copy"},"Axt0OP8grrRsIm2HwZGU_":{"uri":"/melonJS/docs/melonjs/Color.html#darken"},"VX4Ro0tWxEAPnLl-YdiWA":{"uri":"/melonJS/docs/melonjs/Color.html#equals"},"fd88MXYtS1pAWUnd1oCDx":{"uri":"/melonJS/docs/melonjs/Color.html#lerp"},"J57z2BEXyhm0Is87UChYJ":{"uri":"/melonJS/docs/melonjs/Color.html#lighten"},"QplUmnjmE9JXcvUejey35":{"uri":"/melonJS/docs/melonjs/Color.html#parseCSS"},"1ddRz49TsZd4bNDKGWlvb":{"uri":"/melonJS/docs/melonjs/Color.html#parseHex"},"d2r9fkyPwwvo9S49WgQ7k":{"uri":"/melonJS/docs/melonjs/Color.html#parseRGB"},"yLNVsLL55JTxtbwbVW93i":{"uri":"/melonJS/docs/melonjs/Color.html#random"},"xGrt8qOZXl8wBiQO6XvW8":{"uri":"/melonJS/docs/melonjs/Color.html#setColor"},"aC38XjoyJLwgrVAYYRSo2":{"uri":"/melonJS/docs/melonjs/Color.html#setFloat"},"tR70mlcdO2VE_IWMbRI6W":{"uri":"/melonJS/docs/melonjs/Color.html#setHSL"},"UExMT7AYc4CVAYoJUhO5P":{"uri":"/melonJS/docs/melonjs/Color.html#setHSV"},"kbLR2nK6r2fryGRJDhBLE":{"uri":"/melonJS/docs/melonjs/Color.html#toArray"},"a9yxFNIKiI2z9I4fMvbzo":{"uri":"/melonJS/docs/melonjs/Color.html#toHex"},"KqKSFLR3ia18amxOm8h_D":{"uri":"/melonJS/docs/melonjs/Color.html#toHex8"},"zf3k5-Ktz5umTowvYk7KD":{"uri":"/melonJS/docs/melonjs/Color.html#toRGB"},"JbPJyV1ZU-_JeBBgatBem":{"uri":"/melonJS/docs/melonjs/Color.html#toRGBA"},"zQyx_mg8z09JMa8Cq_KbK":{"uri":"/melonJS/docs/melonjs/Color.html#toUint32"},"nO6LM7Gntkw6LBjChBT5l":{"uri":"/melonJS/docs/melonjs/ColorLayer.html"},"_X1jX5efnfJYL5Kzu17aS":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alpha"},"dh_klT4Oc8u_UE0fNVJlR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alwaysUpdate"},"WvlcgsKON32r_0gbYTtVa":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#ancestor"},"aHuBNFjdYWM1ZHXl0Uh1J":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#anchorPoint"},"IK_aW_wgvmovMop4EXtX6":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#autoTransform"},"7F-rnGrJMMdcwWN3_0dRe":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#blendMode"},"ta-fI801NbIvm7kcIgGmh":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#body"},"nEJVwf-cr51rEOws4rA_Z":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#bottom"},"yGF81baTYD_-HpNEWu9PD":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerX"},"315vAvsRlI1tC5SX4DtHu":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerY"},"dVL7e-XjSAlVDFspPe_qQ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#color"},"SNDPhsaLJAvVEJVZDDXSc":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#currentTransform"},"y7DZ_1anuU_xv5rk4K-ST":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#depth"},"M01Uiybp7YioAx_VG3Pcy":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#floating"},"24XmwQZ0jqZPe8tn04cze":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#GUID"},"JHpAWsS-_RWJ6S8msG1Z4":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#height"},"WRzK6FwS6sxwivd8uYtVH":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#inViewport"},"G_-eJZ8PqQkYIgsmbDGcg":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isDirty"},"THmW0ilOPvEeYfDnP-Z4K":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedX"},"ISvfoYATcAoIdo-HsVaKE":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedY"},"0nR_sMr1DM-AAuCS-lCtZ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFloating"},"z2NTXwIB27QjGbaa6B50f":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isKinematic"},"R0xo863NJTgekIZHJWjF4":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isPersistent"},"0MIRt9ffPfKf6NSt3KYfZ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#left"},"S0ab7tFR7DVmJ9CqgDA8o":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#mask"},"ok0BonSj6QVrqwFMtV4K5":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#name"},"Xzls2FFB-LWshRBjHh6FC":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onVisibilityChange"},"Hn8XTapVOVumtlJ05-0R_":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#parentApp"},"uKlxExMgD5yDCojli2dFl":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#points"},"qDmtQItKM3ARCCeDpg5W_":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#pos"},"kwk6aDFp3brYPB5aFLQ8U":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#right"},"EcBMc-MsqhBgNzjfhD2jm":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shader"},"SKLi-oHrDVa6g7__MWnAB":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#tint"},"o5TVi_0k4Egh9cIZsD2hM":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#top"},"LYX-GXkMoDQSJ3kEXaAFD":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#type"},"XrRqjuOMrEZbXvVdvg_rv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateWhenPaused"},"c4q2sCnmqJNrp2vHfOYZu":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#width"},"32YQwbrV1g3HbMfS4e8x1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#angleTo"},"mBcpnAMTyuHdLiqstSbce":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerOn"},"YGavVDFTT4wG92o0EGlyg":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#clone"},"bAf5rgxxzenL6SZHII43R":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#constructor"},"JGuFhH5eO9UVMqcgUqdcQ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#contains"},"U1OuZ2rEFPWR4q_NDF0nA":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#copy"},"mOWQAa9sQQZ03GbIswMCc":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#distanceTo"},"zoNlyZtlFgGY7SV8J64UW":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#equals"},"owHIEdslifQEOZJlf14Lc":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipX"},"OE9kkA5aiSwe_7JgoepZW":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipY"},"cOBSICnJh6l662dkBwSsp":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getAbsolutePosition"},"3RDCV3Oq2iDlj0tqWeqJr":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getBounds"},"S5jNGXlAXozhV1ebVuEpG":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getIndices"},"cX53YxdJ7GpWcL5WDbp-d":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getOpacity"},"iatZSPRJGVyB1w-rtj6HU":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isConvex"},"5IKiDGOrN1oaRxjc4Prsa":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFinite"},"myewHLFQiNHwtNwEF6q6b":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#lookAt"},"7rnUh1lhRDdqNmPMBUPaq":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onCollision"},"MbEv_kVSfKoopAeriISWL":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onDestroyEvent"},"Ac1x2sldO-aqbAHJWfGe3":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#overlaps"},"1x62K2cqDXTX7-jznM8lO":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#postDraw"},"chYGESxaRxKWWltvMuvBC":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#preDraw"},"uZAAn5KSOAcNSrkhGfVa0":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#recalc"},"LYPmu5keMDdu-ibNc-C_n":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#resize"},"M362qKu1x3LOOR7X23xxK":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#rotate"},"5kwY3FWotI-uLN6C8ZNUk":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scale"},"6H0GOzR5953WN4eKrTWd6":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scaleV"},"pzmy8VJtzhpdqYTQEiqzy":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setOpacity"},"CY-iyOrZW_7JMbi1fgZiV":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setShape"},"LZpAmMJfs0YYHlqbJ_f_c":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setVertices"},"ydnvlSfSoUPADvhJUCY-K":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shift"},"d5QCaWqFHJg0hdG2v2jhX":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#to2d"},"RD6Npss-PIZaBLGUf09p-":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toIso"},"5idVcOKt74bRAK_QbRBGI":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toPolygon"},"rvXkrIN7jlo_HKtHykfr1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#transform"},"s4ffjzL6v1ydcTKwBabAy":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#translate"},"mtTVvQFQK24gWTCSADJz0":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#union"},"l8qz34ARMzizWZhOpm21P":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#update"},"c5wqlT5t2T8bTx1lzKmHq":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateBounds"},"ioC9SSp_ii7gMNOwrpQZD":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#draw"},"U3fbkvKyVV_aS1MGgkZUx":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onAnchorUpdate"},"R4BL5phVLwnX_nDF5bqLN":{"uri":"/melonJS/docs/melonjs/Compositor.html"},"rlnXegrTOckckln0Pfm3v":{"uri":"/melonJS/docs/melonjs/Compositor.html#attributes"},"Av9Z_42ceS3fMaSnNOOO9":{"uri":"/melonJS/docs/melonjs/Compositor.html#currentShader"},"e0skydNcduJWXNvtAj4jK":{"uri":"/melonJS/docs/melonjs/Compositor.html#defaultShader"},"HsYPlF-JeoJVlAXvM81j_":{"uri":"/melonJS/docs/melonjs/Compositor.html#mode"},"Ry9W-wBi8IrEYWpaYhFVB":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexByteSize"},"hHEIJifHV5Zh2NsQLNQNH":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexData"},"dC-ObBinoVf37z_MJLDU-":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexSize"},"ew7_w4iPln1q5Z9l7WXY6":{"uri":"/melonJS/docs/melonjs/Compositor.html#addAttribute"},"OGnkMOBM12eMRu_QeGBYv":{"uri":"/melonJS/docs/melonjs/Compositor.html#bind"},"JFdWHXQaGlhWLdOM6J_QY":{"uri":"/melonJS/docs/melonjs/Compositor.html#constructor"},"hMVN-TP4aoVBx-89JAEb7":{"uri":"/melonJS/docs/melonjs/Compositor.html#flush"},"OyrN2LYT90IsyJXzQhhWS":{"uri":"/melonJS/docs/melonjs/Compositor.html#setProjection"},"2NoyOyeDC9-kmQ4RCDUFe":{"uri":"/melonJS/docs/melonjs/Compositor.html#useShader"},"_bbFI4jCNSEU5ksM7vo8g":{"uri":"/melonJS/docs/melonjs/Container.html"},"rllQxDxYQ1BSqPkk50AM7":{"uri":"/melonJS/docs/melonjs/Container.html#alpha"},"9mTNEJDlPNPUC0oji_LCy":{"uri":"/melonJS/docs/melonjs/Container.html#alwaysUpdate"},"_QOtwHriEGCLc1dsYGyoQ":{"uri":"/melonJS/docs/melonjs/Container.html#ancestor"},"02oiQQ2LDnkIx-tdUXfVZ":{"uri":"/melonJS/docs/melonjs/Container.html#anchorPoint"},"EnXUUTcYv4b_qyItNiuvt":{"uri":"/melonJS/docs/melonjs/Container.html#autoDepth"},"qFYiWQfjfx4eJICQ4qNmA":{"uri":"/melonJS/docs/melonjs/Container.html#autoSort"},"LPNwipC8h63HO8iK4jrW3":{"uri":"/melonJS/docs/melonjs/Container.html#autoTransform"},"ZVF0XZo-ZfOttw07zWWgk":{"uri":"/melonJS/docs/melonjs/Container.html#backgroundColor"},"AGvFpeu_RinNuWHrxB0xQ":{"uri":"/melonJS/docs/melonjs/Container.html#blendMode"},"IXuAsjkWM1-1OiY64Xsxr":{"uri":"/melonJS/docs/melonjs/Container.html#body"},"w1FHTwnK6kUcVw9vbVKdQ":{"uri":"/melonJS/docs/melonjs/Container.html#bottom"},"MP2s4ynkkTL-JoZV7s2SV":{"uri":"/melonJS/docs/melonjs/Container.html#centerX"},"onVo4Pzt-I3gLUra0nqTj":{"uri":"/melonJS/docs/melonjs/Container.html#centerY"},"mRFo-zv2gPdZf2a4eIrns":{"uri":"/melonJS/docs/melonjs/Container.html#clipping"},"uVoQP3mTfiNUH5OZZD5aH":{"uri":"/melonJS/docs/melonjs/Container.html#currentTransform"},"Xzwm9E_EBa58Qh4c87dxj":{"uri":"/melonJS/docs/melonjs/Container.html#depth"},"aMVkFrv6jozCQB5ocE0wJ":{"uri":"/melonJS/docs/melonjs/Container.html#enableChildBoundsUpdate"},"F_Pn4pQLwGBAFc-a4twFO":{"uri":"/melonJS/docs/melonjs/Container.html#floating"},"FjeK0g_zTpzuVyOpqqDqz":{"uri":"/melonJS/docs/melonjs/Container.html#GUID"},"3PoqfqWbvdLXlnreion9Q":{"uri":"/melonJS/docs/melonjs/Container.html#height"},"5bjJ4BmzN4moOmNkkR3z1":{"uri":"/melonJS/docs/melonjs/Container.html#inViewport"},"U3lAsi4v9r1xIWvW-Iegi":{"uri":"/melonJS/docs/melonjs/Container.html#isDirty"},"TNgGciDcbiCl7vS1mP7cY":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedX"},"gZWSOMa4zpGfrCNb2my_z":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedY"},"EZSZfO_rWvxvLVBhw61iw":{"uri":"/melonJS/docs/melonjs/Container.html#isFloating"},"tdMBPgsD4KqJxwfajRvnU":{"uri":"/melonJS/docs/melonjs/Container.html#isKinematic"},"67QEZ3Ae_bgm0OuQMPXsY":{"uri":"/melonJS/docs/melonjs/Container.html#isPersistent"},"LmqrQu2EA2bg3zX261VOK":{"uri":"/melonJS/docs/melonjs/Container.html#left"},"uwr93wXw6xCsWz7Zyde5V":{"uri":"/melonJS/docs/melonjs/Container.html#mask"},"jwJ0kq-Roh_FmupqgSH75":{"uri":"/melonJS/docs/melonjs/Container.html#name"},"m2ghRA7GYsxkTO4J-ZKhv":{"uri":"/melonJS/docs/melonjs/Container.html#onVisibilityChange"},"E9RIG_5UQZXZzLRovLLWn":{"uri":"/melonJS/docs/melonjs/Container.html#parentApp"},"J4ryJeIL7XldAroX5znFF":{"uri":"/melonJS/docs/melonjs/Container.html#points"},"k0YRRHL7KV6NZHW_negay":{"uri":"/melonJS/docs/melonjs/Container.html#pos"},"dJS__4Z_V38YyzYaMrKWA":{"uri":"/melonJS/docs/melonjs/Container.html#right"},"85NRc1_gpP7TKbUa2LFZT":{"uri":"/melonJS/docs/melonjs/Container.html#root"},"P7lfEAHBU7uSaRVu75542":{"uri":"/melonJS/docs/melonjs/Container.html#shader"},"DUkB2vph-TV9vtlLSXh_O":{"uri":"/melonJS/docs/melonjs/Container.html#sortOn"},"5NM4hP7Z1f0E81j9zgwaj":{"uri":"/melonJS/docs/melonjs/Container.html#tint"},"Nk1-TGF48QcZGimJ81S1N":{"uri":"/melonJS/docs/melonjs/Container.html#top"},"vSkqscUn2TM2ldHoFOYyH":{"uri":"/melonJS/docs/melonjs/Container.html#type"},"42frC4RTn1gn8EnZuT8wc":{"uri":"/melonJS/docs/melonjs/Container.html#updateWhenPaused"},"NuFQ2mhcE-iyLbeNh4vBg":{"uri":"/melonJS/docs/melonjs/Container.html#width"},"UbDb_H0Io2iMTUruItGSt":{"uri":"/melonJS/docs/melonjs/Container.html#addChild"},"TH5ih9ZGzNE4aBbyFwxmN":{"uri":"/melonJS/docs/melonjs/Container.html#addChildAt"},"H4ysCSxyoYlUIpriph1R4":{"uri":"/melonJS/docs/melonjs/Container.html#angleTo"},"1vEFIciPeZrw9wdL03KDX":{"uri":"/melonJS/docs/melonjs/Container.html#centerOn"},"7mRcJfR5SWpCej_UT5haK":{"uri":"/melonJS/docs/melonjs/Container.html#clone"},"IcTh6-98wzwj2ls-xisJy":{"uri":"/melonJS/docs/melonjs/Container.html#constructor"},"3lGaRnhIppSudpMUtTIPM":{"uri":"/melonJS/docs/melonjs/Container.html#contains"},"kke3N0Oby6rn69CbNymr8":{"uri":"/melonJS/docs/melonjs/Container.html#copy"},"rg_1unX5_s33flMHDSoEm":{"uri":"/melonJS/docs/melonjs/Container.html#distanceTo"},"YmmTVdh_yq3QGOAnqatHQ":{"uri":"/melonJS/docs/melonjs/Container.html#equals"},"iao7IPhALoG4W1_RHStCM":{"uri":"/melonJS/docs/melonjs/Container.html#flipX"},"JucFH20EYKHhunPNwyEKS":{"uri":"/melonJS/docs/melonjs/Container.html#flipY"},"ntfY3j9WF8dyef3wnZem7":{"uri":"/melonJS/docs/melonjs/Container.html#forEach"},"Hg0UIyZOrrzWDOuNUyWeN":{"uri":"/melonJS/docs/melonjs/Container.html#getAbsolutePosition"},"cywRncYzn8vtfnahU_VRY":{"uri":"/melonJS/docs/melonjs/Container.html#getBounds"},"aUmZ6gBSzQb7p09L24Dwr":{"uri":"/melonJS/docs/melonjs/Container.html#getChildAt"},"PIRJdJS8ndSBE_sslaxfe":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByGUID"},"fGmU-hyuthHE9QBrdnjDD":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByName"},"kran_hB_k-rMgOYAo_LIL":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByProp"},"4QcyR2dAuAs46SaEACcx-":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByType"},"wit2Z39wgST1MTVzPSV0P":{"uri":"/melonJS/docs/melonjs/Container.html#getChildIndex"},"OifvNyKeIpR48C5uaRudw":{"uri":"/melonJS/docs/melonjs/Container.html#getChildren"},"BvkxZt9uy8PZMniRZEPDk":{"uri":"/melonJS/docs/melonjs/Container.html#getIndices"},"sDub-1qPA7a5JKljjeTfr":{"uri":"/melonJS/docs/melonjs/Container.html#getNextChild"},"otaxF4ue3SypBeMm_TLud":{"uri":"/melonJS/docs/melonjs/Container.html#getOpacity"},"DHWd9Pn_HawvK2AlW0xVh":{"uri":"/melonJS/docs/melonjs/Container.html#getRootAncestor"},"zS5iG3j0VHp_jGdePycXR":{"uri":"/melonJS/docs/melonjs/Container.html#hasChild"},"czdIAJuIZrKkO4htqhM-f":{"uri":"/melonJS/docs/melonjs/Container.html#isAttachedToRoot"},"fk46D2s8TP0jjLRtMbwII":{"uri":"/melonJS/docs/melonjs/Container.html#isConvex"},"UjyP25i-jgytEiM994Jhv":{"uri":"/melonJS/docs/melonjs/Container.html#isFinite"},"geWtjeyau2K5t8WqObl6i":{"uri":"/melonJS/docs/melonjs/Container.html#lookAt"},"myaejMbbHZP6V4r97ABYn":{"uri":"/melonJS/docs/melonjs/Container.html#moveDown"},"rTXUGV2yGflqsEgNROqnq":{"uri":"/melonJS/docs/melonjs/Container.html#moveToBottom"},"sWhO1wNf4r6qlvWFbvMEt":{"uri":"/melonJS/docs/melonjs/Container.html#moveToTop"},"dlCA09Bwd2DseKKErcDsG":{"uri":"/melonJS/docs/melonjs/Container.html#moveUp"},"xJPVZrqIT03Odv-pLHrw8":{"uri":"/melonJS/docs/melonjs/Container.html#onChildChange"},"bIHe2PaZ226X6FT-iQBOK":{"uri":"/melonJS/docs/melonjs/Container.html#onCollision"},"otgsmEawku3ByYT2oD7c3":{"uri":"/melonJS/docs/melonjs/Container.html#onDestroyEvent"},"95eK5M_WEVo8fkoJutAPn":{"uri":"/melonJS/docs/melonjs/Container.html#overlaps"},"eNgq5h5Auo1rfZ-GXTM83":{"uri":"/melonJS/docs/melonjs/Container.html#postDraw"},"te9eoPpK433yym0hXslUO":{"uri":"/melonJS/docs/melonjs/Container.html#preDraw"},"DEgeYbu6SRNPTM6iHlS5I":{"uri":"/melonJS/docs/melonjs/Container.html#recalc"},"HGlrnqS1I9osGNr-_sJta":{"uri":"/melonJS/docs/melonjs/Container.html#removeChild"},"WwmCJR5-6qqDK4txwQsY-":{"uri":"/melonJS/docs/melonjs/Container.html#removeChildNow"},"o2-7LghZEno_AaEq3wgZG":{"uri":"/melonJS/docs/melonjs/Container.html#reset"},"sIDi-nlxCngEQRjmNL_q9":{"uri":"/melonJS/docs/melonjs/Container.html#resize"},"u-NhEx2dEDsoz-EC4X36W":{"uri":"/melonJS/docs/melonjs/Container.html#rotate"},"RM9btngfh4Uo_O_aZ1BFa":{"uri":"/melonJS/docs/melonjs/Container.html#scale"},"KrHxpOrxqKzf0c3savBkg":{"uri":"/melonJS/docs/melonjs/Container.html#scaleV"},"Rl0YqOqnm4X8leGmPeeK4":{"uri":"/melonJS/docs/melonjs/Container.html#setChildsProperty"},"WRfo-HhhegArqpmh0-bfo":{"uri":"/melonJS/docs/melonjs/Container.html#setOpacity"},"HGv865OdGt1jB4AqUMBuP":{"uri":"/melonJS/docs/melonjs/Container.html#setShape"},"ZRzI3XTszXjcyyku7O3_z":{"uri":"/melonJS/docs/melonjs/Container.html#setVertices"},"LaVR2CofsYwnf7tGIVL58":{"uri":"/melonJS/docs/melonjs/Container.html#shift"},"DydlAgtkXOyIWssu-vbSB":{"uri":"/melonJS/docs/melonjs/Container.html#sort"},"fkzUZtY82ilxVc6yRLw3i":{"uri":"/melonJS/docs/melonjs/Container.html#swapChildren"},"7ftVCES4d_LDgcwF6fKMu":{"uri":"/melonJS/docs/melonjs/Container.html#to2d"},"bWs-6Lxgxkm-AQOdoxkKm":{"uri":"/melonJS/docs/melonjs/Container.html#toIso"},"qQQaDIifzTc_WaUKYPMpu":{"uri":"/melonJS/docs/melonjs/Container.html#toPolygon"},"O1voZcYW36QwM4H2EXdpV":{"uri":"/melonJS/docs/melonjs/Container.html#transform"},"f1Wk9cbHkIXVC7oGfaDSx":{"uri":"/melonJS/docs/melonjs/Container.html#translate"},"g9HxrlEgqOe3rt7bWu6-X":{"uri":"/melonJS/docs/melonjs/Container.html#union"},"ogY21jZbbHFljCFjC6-mv":{"uri":"/melonJS/docs/melonjs/Container.html#updateBounds"},"Tt4gblJiMiQD1dTvvmwA6":{"uri":"/melonJS/docs/melonjs/Container.html#draw"},"0fumJA6BsutTSVJaxfFv_":{"uri":"/melonJS/docs/melonjs/Container.html#update"},"fzOBPhR-Uv6_FXdrDVKXH":{"uri":"/melonJS/docs/melonjs/Container.html#onAnchorUpdate"},"qSOFHs24uCMnVQ9R2oO1k":{"uri":"/melonJS/docs/melonjs/Detector.html"},"J3U4tALxO2pdYIpmt8dLx":{"uri":"/melonJS/docs/melonjs/Detector.html#response"},"fXPb4QcTR7OYZLtAqe6EI":{"uri":"/melonJS/docs/melonjs/Detector.html#collides"},"HGdL01ycaEbGH2LN-gHAD":{"uri":"/melonJS/docs/melonjs/Detector.html#constructor"},"0DLZYns8RW5X-fIU_dA9R":{"uri":"/melonJS/docs/melonjs/Detector.html#shouldCollide"},"Ij0MzZtt2kJxQ8XvGBa4v":{"uri":"/melonJS/docs/melonjs/Draggable.html"},"yHYxX-WPR7doT98N3UaOg":{"uri":"/melonJS/docs/melonjs/Draggable.html#alpha"},"I5qCWg8RdxtW9mdkpMwFd":{"uri":"/melonJS/docs/melonjs/Draggable.html#alwaysUpdate"},"aEapBdw-lPKM80gPTYUzP":{"uri":"/melonJS/docs/melonjs/Draggable.html#ancestor"},"yGm8r3zDQ2VqMwn6SBgVH":{"uri":"/melonJS/docs/melonjs/Draggable.html#anchorPoint"},"olzUpiwjCIA5IQcldeYUm":{"uri":"/melonJS/docs/melonjs/Draggable.html#autoTransform"},"Wqq88GxBsAn2AmgKTkczl":{"uri":"/melonJS/docs/melonjs/Draggable.html#blendMode"},"JitoXkLowsOMFSzICRbbI":{"uri":"/melonJS/docs/melonjs/Draggable.html#body"},"13AzRwydf3fpoXKQDmH0e":{"uri":"/melonJS/docs/melonjs/Draggable.html#bottom"},"G4tAnpYNtMQrLPTJggkIP":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerX"},"4h0_knoWaTNylGKG6PDhr":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerY"},"-sVnvR5uDBuolYdTypUO8":{"uri":"/melonJS/docs/melonjs/Draggable.html#currentTransform"},"Gg_zxk1g1wX6c9pVnCiqW":{"uri":"/melonJS/docs/melonjs/Draggable.html#depth"},"KidM2TB4h6bqVzn1DqzDQ":{"uri":"/melonJS/docs/melonjs/Draggable.html#floating"},"yWzBtFIvA3yxMcwFPIpLZ":{"uri":"/melonJS/docs/melonjs/Draggable.html#GUID"},"6U-UqN-Ue8zqy8m7HS1dV":{"uri":"/melonJS/docs/melonjs/Draggable.html#height"},"OwzpMMPKz-tOahIM207tB":{"uri":"/melonJS/docs/melonjs/Draggable.html#inViewport"},"C4x8W0ecezJ9OibBKL_5T":{"uri":"/melonJS/docs/melonjs/Draggable.html#isDirty"},"ATDj_xhltdO_Arh77h6k0":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedX"},"fIpm7jVjo3NrN3cbUb9xA":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedY"},"3F6_Mv2WPIa8cBq8idoLC":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFloating"},"4w2Liamz7Dzc1hSL9kmmf":{"uri":"/melonJS/docs/melonjs/Draggable.html#isKinematic"},"j4B5UcP1phUyj936ORisl":{"uri":"/melonJS/docs/melonjs/Draggable.html#isPersistent"},"pOt5QYXYUolew5uG0_OJw":{"uri":"/melonJS/docs/melonjs/Draggable.html#left"},"bfWDqjlwNpn7V9r28FyQl":{"uri":"/melonJS/docs/melonjs/Draggable.html#mask"},"bbzY7edZ4xkwJ-Fv21WJP":{"uri":"/melonJS/docs/melonjs/Draggable.html#name"},"lWihuJksnNRWtifDQ07oN":{"uri":"/melonJS/docs/melonjs/Draggable.html#onVisibilityChange"},"7cXtJnBtmzzjgRFi4MURE":{"uri":"/melonJS/docs/melonjs/Draggable.html#parentApp"},"T8gvl_TTwIMCat3pG0mpV":{"uri":"/melonJS/docs/melonjs/Draggable.html#points"},"pGyVJPZUM-5tyM4BDNFzk":{"uri":"/melonJS/docs/melonjs/Draggable.html#pos"},"P1-nKOdQBMB45LoZb34BI":{"uri":"/melonJS/docs/melonjs/Draggable.html#right"},"10qm1OGCmtxUFrz2ymRcb":{"uri":"/melonJS/docs/melonjs/Draggable.html#shader"},"tLQiZ9BwT_8MYpQwUlol1":{"uri":"/melonJS/docs/melonjs/Draggable.html#tint"},"TApgs5xy-hi3tK7DWYWAH":{"uri":"/melonJS/docs/melonjs/Draggable.html#top"},"VPAKONWqASslKp-SRYLEW":{"uri":"/melonJS/docs/melonjs/Draggable.html#type"},"z85K51r7SFytBVv8HNhpP":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateWhenPaused"},"6A_5WEKNyzLw3tHT5eou4":{"uri":"/melonJS/docs/melonjs/Draggable.html#width"},"qcDBOQs9A2LlnoLeql29k":{"uri":"/melonJS/docs/melonjs/Draggable.html#angleTo"},"MKHxdhj8dxnTTqgst-Ptz":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerOn"},"ldLnaj2GHhwXWALuPZfN3":{"uri":"/melonJS/docs/melonjs/Draggable.html#clone"},"WRzHFvefDh3G14UfTD9fC":{"uri":"/melonJS/docs/melonjs/Draggable.html#constructor"},"h14qmfVLNQkAgYZllz6N0":{"uri":"/melonJS/docs/melonjs/Draggable.html#contains"},"A-bpuBqzdUygvogQaTt7X":{"uri":"/melonJS/docs/melonjs/Draggable.html#copy"},"psz33xohDP2IbaSx2dkJl":{"uri":"/melonJS/docs/melonjs/Draggable.html#distanceTo"},"D9lV32UVoSznRtWX8DmwF":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragEnd"},"vXJXKjyaVHek663KJohaX":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragMove"},"cmAzfR9cU1nOoW5B63vQk":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragStart"},"bkZWgcBKCtEXjYarS94hI":{"uri":"/melonJS/docs/melonjs/Draggable.html#draw"},"tj-iU8-ZtZUbZWLsjGL2Q":{"uri":"/melonJS/docs/melonjs/Draggable.html#equals"},"Oc0yYERc49E3p35O1sTL3":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipX"},"onEooiq7zayWlNS6ucOKS":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipY"},"GfslXa28xD0BVCXik2aWo":{"uri":"/melonJS/docs/melonjs/Draggable.html#getAbsolutePosition"},"T4Du_37NhvSix1lp03ruQ":{"uri":"/melonJS/docs/melonjs/Draggable.html#getBounds"},"hzgL0E0Nt6--9z3gbNBCO":{"uri":"/melonJS/docs/melonjs/Draggable.html#getIndices"},"pyVREKbsKseOisBjnqLDw":{"uri":"/melonJS/docs/melonjs/Draggable.html#getOpacity"},"YI69ORCycPxVHrWL7IbAh":{"uri":"/melonJS/docs/melonjs/Draggable.html#isConvex"},"K3POFm6ed0TSeidyURV0s":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFinite"},"TiYNdltK5GlVTQjf9t0-D":{"uri":"/melonJS/docs/melonjs/Draggable.html#lookAt"},"W7nNKh3evw_HhsD1JvafR":{"uri":"/melonJS/docs/melonjs/Draggable.html#onCollision"},"lnep-osUxc9fsRB30vjCy":{"uri":"/melonJS/docs/melonjs/Draggable.html#onDestroyEvent"},"XNXQpeTTL_t_7PFPJkx20":{"uri":"/melonJS/docs/melonjs/Draggable.html#overlaps"},"eeJiWppCih25EWxB5DJRR":{"uri":"/melonJS/docs/melonjs/Draggable.html#postDraw"},"DTG_RxV9tRVbRRrmcLvnD":{"uri":"/melonJS/docs/melonjs/Draggable.html#preDraw"},"1tGuqp6t4GHiL737UcljM":{"uri":"/melonJS/docs/melonjs/Draggable.html#recalc"},"x26VMCaA5D3SMCDFPzpeA":{"uri":"/melonJS/docs/melonjs/Draggable.html#resize"},"abCzMvkxmYP1g4dHxjYk7":{"uri":"/melonJS/docs/melonjs/Draggable.html#rotate"},"mmTPqvWuGI3kmqTB-HF8I":{"uri":"/melonJS/docs/melonjs/Draggable.html#scale"},"emFiXhlfVhPRG93hvneae":{"uri":"/melonJS/docs/melonjs/Draggable.html#scaleV"},"mcGLNomcpRmF0cjaIM2jW":{"uri":"/melonJS/docs/melonjs/Draggable.html#setOpacity"},"SfWMh1kjHn46IELPTxyTG":{"uri":"/melonJS/docs/melonjs/Draggable.html#setShape"},"lgMTYRH65hZJ6PLTeSHI_":{"uri":"/melonJS/docs/melonjs/Draggable.html#setVertices"},"QrVxn9vjbaL14EWKppWde":{"uri":"/melonJS/docs/melonjs/Draggable.html#shift"},"vtANGTKftIdgzboaRPrmA":{"uri":"/melonJS/docs/melonjs/Draggable.html#to2d"},"rFLhMV5iqpJNofb1ZTBDf":{"uri":"/melonJS/docs/melonjs/Draggable.html#toIso"},"lI33wwBI4-sGlYUvWY7hR":{"uri":"/melonJS/docs/melonjs/Draggable.html#toPolygon"},"EZ_HRPGYcsdkAQjHY64s-":{"uri":"/melonJS/docs/melonjs/Draggable.html#transform"},"bLexl-c7VVYSJg2-w4Fuo":{"uri":"/melonJS/docs/melonjs/Draggable.html#translate"},"uQ8Z4qmROrqIDF0_Q6UYo":{"uri":"/melonJS/docs/melonjs/Draggable.html#union"},"DAYCNuuK40nidmBrMAMdD":{"uri":"/melonJS/docs/melonjs/Draggable.html#update"},"htUFdI7NYAQ3ZarltcZmI":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateBounds"},"b8mpBhsSayWpiw07Tx2H_":{"uri":"/melonJS/docs/melonjs/Draggable.html#initEvents"},"U5W8HBDKmaf9BeM-Z3PY2":{"uri":"/melonJS/docs/melonjs/Draggable.html#onAnchorUpdate"},"NWmtJX4sCCM04x5xl7XlR":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html"},"X0f-E3bEK-MH1G7ct_-Gh":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alive"},"rB5h_IjyjUplSMg5bSojW":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alpha"},"kuIfI8oUEx4RXwlTlJtxo":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alwaysUpdate"},"ShSzTgflYsY2noAduLPMG":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#ancestor"},"cjJm7q_zbtaTcndIhjvhL":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#anchorPoint"},"cgOff_aaBrGUwd9z2vW0o":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#autoTransform"},"AiRZOXU9eKjzohM193uqu":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#blendMode"},"q9DKM1-L5UvY8MdeZMuJC":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#body"},"zARZvtuln_OXTBup9Y7QU":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#bottom"},"qVsQsqErDyus1J4r-PKpK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerX"},"3ZF0IOnvCXWH_qXq0loCR":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerY"},"9solcg4FbONDr3FlL3Lud":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#currentTransform"},"mJwA2igjSPdolJrSw3LLJ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#depth"},"QkEhJtGl_5amzmeGLGY6e":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#floating"},"o5ov03TTNEeV7sJAbyhpD":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#GUID"},"OzEaeS3Zu6F8S4bmBc9ae":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#height"},"VJ7Co9vo0fC-dcgI_cejj":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#id"},"wKRptxyveEwW7i4eeFN9x":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#inViewport"},"A6x7xvTusutPDHldx6w4A":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isDirty"},"mBwEypMgIFVZjeLk8dTi3":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedX"},"XDSIGr9RRXoqvYun-BSv4":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedY"},"YoKFMKx9kz3YZ1GloO318":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFloating"},"EHzX1R5QjAeyK6Ksx5qhr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isKinematic"},"7rq6FHwwzCXuyAX9Tft_w":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isPersistent"},"HnRxmAKVwkZLg2cCFheLa":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#left"},"VE5OR-0mdW9eNfTi0bxlf":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#mask"},"hPefZjdOr-VWTKtmoP0nF":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#name"},"XPTOT_lijJx9w9S9phaUd":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onVisibilityChange"},"fA5WiV3bgLUeHCX1j2p-c":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#parentApp"},"qG3eaqQZhytUA09FcUXQ9":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#points"},"d83vjRB_CzpEQR0aqFTL6":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#pos"},"G1OjoFi6RukSVFcgrCxhr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#renderable"},"J8kMPpkHoiVAVlrGBytzz":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#right"},"QPiF2eaEclClpxFcBZezw":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shader"},"TiaTLUcQavCxo_CLfesMm":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#tint"},"v36xgtzaTpFkDIOi6vaFl":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#top"},"3J2HNlbbyk0l9UF7X6W7n":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#type"},"l7zx80DJW7CshQimElJHq":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateWhenPaused"},"tGTIuUcnOGvC__-nxRF5M":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#width"},"BdzjR_8cylHdCee1BeisH":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#angleTo"},"23gJukOA7Lk_1zKLWvg0x":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerOn"},"guC9drXJovUZAz4-wy2_W":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#clone"},"pLt0Mt6NwoUB9OonhVI6M":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#constructor"},"24jUzyosfa60SuqdfBOYB":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#contains"},"v9bf9AsS_aTBnbhF71h6g":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#copy"},"sb3eiJHaInqpkuwAJ4PtT":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#distanceTo"},"imdCryTYMnPt98ub8_E1J":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#equals"},"zVle7xHCW_NPfXPZ7rcW9":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipX"},"HfmXL7Lgs0e5EKqPJGIFy":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipY"},"jgNJY9EMU0xOvUOGw0Uy3":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getAbsolutePosition"},"iQs43YkiuOak-biAyGRfq":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getBounds"},"5Iv2rqdjdzIiqyMZxO9Ir":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getIndices"},"2wMOrYXeMGMC55A3HY8rA":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getOpacity"},"8q8P7CmnAW1GrYCK-nlYC":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isConvex"},"JhOL5YVZjYY1OGtaUntDl":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFinite"},"Vk-GDNSZPOdaQyMIfcdUM":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#lookAt"},"OBQW9j6ua3hLnmG2eYvCe":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onBodyUpdate"},"xoZpUI5kU3k5NL-EuucLN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onCollision"},"_Y0UQY6KvrnHnsHXUfHgN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDeactivateEvent"},"Cxu7aAclGD9HBMlYrPdxz":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDestroyEvent"},"uegicD7FJaDUxUX2vphVc":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#overlaps"},"typnExpPdK3CFd0-TazBa":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#postDraw"},"4vu0YVeDCVlOOdczxYd5j":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#preDraw"},"WEehJERfpUrFLypIjIbfD":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#recalc"},"Hzn9NImKU_pXQNQcYeoZn":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#resize"},"8ZtcMvSkl6uUsVZBLDzjO":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#rotate"},"wlp_ZRG7pSQIALBggDU3Y":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scale"},"HNf9-DcbVFUbNFH_SppTl":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scaleV"},"HCKisONSVpkI6LyYZ5t0Q":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setOpacity"},"_iwW8t1684GdhmqXwP6LW":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setShape"},"hirkQDLvmZDJTd7GWJGnQ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setVertices"},"b9NxbsZJcWnMGjQoa-gjK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shift"},"nY4aNHfQ2Mrq6c3K69RQh":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#to2d"},"pM59NLyTMangYQkTn-5nr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toIso"},"Zqt_jzzOHEF7lRH4BuUNQ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toPolygon"},"YD_n78VB65ryYj1x3fqXw":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#transform"},"Vx2Uzs8PSFEpfbAKynEGZ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#translate"},"sZC3Mb5tbsVpTalOme8DU":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#union"},"FrTD3qOk8sWZGX5Kl17Kr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#update"},"Lcy-y69-8v7TzDM1r5ybV":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateBounds"},"ckOxZXF5RRXLqMc253hk9":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#draw"},"-geiKSgQUREhhkAlNTj4z":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onAnchorUpdate"},"zyyuS_12avGi1P9m7djt4":{"uri":"/melonJS/docs/melonjs/DropTarget.html"},"LR7QRIAwma0es9XWVjdLx":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alpha"},"ZXypN5lC33_kF5OObp6TT":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alwaysUpdate"},"i2nEV8Pi7ukkagPzQElT9":{"uri":"/melonJS/docs/melonjs/DropTarget.html#ancestor"},"uZI34lhVvzPAW4ZqdP1Nz":{"uri":"/melonJS/docs/melonjs/DropTarget.html#anchorPoint"},"CwkO_Y2LuipUCnuImvspS":{"uri":"/melonJS/docs/melonjs/DropTarget.html#autoTransform"},"8hyOTnjdN2lHIxJ8yPJlE":{"uri":"/melonJS/docs/melonjs/DropTarget.html#blendMode"},"a5O_oIRyAwJ2iFvrAwJDG":{"uri":"/melonJS/docs/melonjs/DropTarget.html#body"},"N4vfzNTwbtWIFTQlYeWcx":{"uri":"/melonJS/docs/melonjs/DropTarget.html#bottom"},"n6M5M2PKUQ_H_g16i4Awb":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerX"},"JUc5t5VjzUyq3s4W8xS42":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerY"},"ZLvksZ85OPeavIHHo0Iat":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkMethod"},"Z6IhL7WD1LvcMICOc6YGX":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_CONTAINS"},"wlKrsLvgi3YZkWk09CUJX":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_OVERLAP"},"C80e0YTj35q7XfFm_vOkV":{"uri":"/melonJS/docs/melonjs/DropTarget.html#currentTransform"},"yHmsnaBwPf8nq5LPKA86D":{"uri":"/melonJS/docs/melonjs/DropTarget.html#depth"},"ksKrVLZ9i9Jm74Rr1Vkjj":{"uri":"/melonJS/docs/melonjs/DropTarget.html#floating"},"OBVrp4RsTFBfNhkZMFrVG":{"uri":"/melonJS/docs/melonjs/DropTarget.html#GUID"},"LGiq0z7Yj_t9Ph_d7VVIQ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#height"},"9AEjPEVSDNZJXKyq3EJex":{"uri":"/melonJS/docs/melonjs/DropTarget.html#inViewport"},"2rASH3pkss8aYu0kqM178":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isDirty"},"Q_ehA7p4RbrHNHx3sF0IP":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedX"},"fbPGc5VdR_t5KvZUG4IQh":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedY"},"-2VmTc_0cuOtogrxYt5Hc":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFloating"},"s1P27cOyK94BDCgggcdV_":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isKinematic"},"KoohN96eZYEaEhg_AdJoL":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isPersistent"},"YIjQKGjrd1Aa2Uf8VHseA":{"uri":"/melonJS/docs/melonjs/DropTarget.html#left"},"JftjSkmaNiPYCwSo1KnoS":{"uri":"/melonJS/docs/melonjs/DropTarget.html#mask"},"qxiXgQRRkr4zDEB2rSMJC":{"uri":"/melonJS/docs/melonjs/DropTarget.html#name"},"3BIU6pSM5jd5FAYCgOFK-":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onVisibilityChange"},"JUATs-P2OvhLettAna7zh":{"uri":"/melonJS/docs/melonjs/DropTarget.html#parentApp"},"lSTBIqwpjkRU2lm8A_GGv":{"uri":"/melonJS/docs/melonjs/DropTarget.html#points"},"vPc0dB4hNzgyRbqfeCj2h":{"uri":"/melonJS/docs/melonjs/DropTarget.html#pos"},"BvmnhB4w86wV2pLWHDCvB":{"uri":"/melonJS/docs/melonjs/DropTarget.html#right"},"fnZmd9yArN_Za-pNApAzV":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shader"},"U58lPHdv69GP5cx7lq3Va":{"uri":"/melonJS/docs/melonjs/DropTarget.html#tint"},"7bP-_eeKvUgsw5TU0HI1K":{"uri":"/melonJS/docs/melonjs/DropTarget.html#top"},"YgF1WwRVsVCTERcwgcbth":{"uri":"/melonJS/docs/melonjs/DropTarget.html#type"},"PJrKg104TcEFfiQKhs8Rp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateWhenPaused"},"G7XgYlh3m03zLre9DZ-c1":{"uri":"/melonJS/docs/melonjs/DropTarget.html#width"},"JqZ0WPQFonKMi08E0VFYh":{"uri":"/melonJS/docs/melonjs/DropTarget.html#angleTo"},"IcCiedCkz5aqRaPeeo48H":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerOn"},"l8mtx8K44CfJMrvThk0uK":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkOnMe"},"9DVQdWiDFKv5jz0xOEigQ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#clone"},"RbeOMuGE8mujlMoZS7fvu":{"uri":"/melonJS/docs/melonjs/DropTarget.html#constructor"},"8xB9lGeO-RLZRqDYENvy4":{"uri":"/melonJS/docs/melonjs/DropTarget.html#contains"},"iHnRhMgMSXXirChD0D0_X":{"uri":"/melonJS/docs/melonjs/DropTarget.html#copy"},"VgNBbKa1lU6M8Ue2qcrgA":{"uri":"/melonJS/docs/melonjs/DropTarget.html#distanceTo"},"yFfmynUZ64TJqRhDFY5ob":{"uri":"/melonJS/docs/melonjs/DropTarget.html#draw"},"1Mh98r2Hh_vKYozk6TRcz":{"uri":"/melonJS/docs/melonjs/DropTarget.html#drop"},"2FmGKnApXzfOY6eLmyRyp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#equals"},"E3gdaB_-FpzjFDkCK2phA":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipX"},"PKg9A3_YmICuZKIipowz7":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipY"},"VfnZbf6iBGYRyxCkb_2we":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getAbsolutePosition"},"LCz5E8ocSHV98Pw9Sdu83":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getBounds"},"UH6z04RlMTrTpx6BjCrSi":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getIndices"},"s7QQYE6YMUWRBBlHYn9VZ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getOpacity"},"jCA9Ky-7L5OFL7_f3BER4":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isConvex"},"1YxnqM2UP0H-Pw0_hDQTP":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFinite"},"UcWMvQGQMQwFb155SRNu3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#lookAt"},"Q6qcgpDMQ9hxWoWeX0n3y":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onCollision"},"GLly3wjry-npbbP-xhFdI":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onDestroyEvent"},"QfE8v4ts5hu6Hk7QsFukB":{"uri":"/melonJS/docs/melonjs/DropTarget.html#overlaps"},"P0In71SRNqTug2DiuSXFC":{"uri":"/melonJS/docs/melonjs/DropTarget.html#postDraw"},"qnIna18pG_NQFkVb5r2_f":{"uri":"/melonJS/docs/melonjs/DropTarget.html#preDraw"},"C3YLuvOi9PXK1LkrXmaD3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#recalc"},"DxyV44WxdGxpq6bBoL7hf":{"uri":"/melonJS/docs/melonjs/DropTarget.html#resize"},"t9wQv46xaKC_Gb4_4TDR2":{"uri":"/melonJS/docs/melonjs/DropTarget.html#rotate"},"7S4kbDxDtwBfKOmjabatJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scale"},"1JYVnmBCinjAEvpfAwFns":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scaleV"},"3hwUdinAVbMaAjASvR3_8":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setCheckMethod"},"LpUDL6wYjP11W4rCmVMhJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setOpacity"},"1McBkNyWGyfOMWX15a5KT":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setShape"},"faDuPlHnadee5ErAVn8n5":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setVertices"},"7MDAy_tad9jGk0hSFXxTN":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shift"},"Do-T1PAL6otEgHBa-dp_W":{"uri":"/melonJS/docs/melonjs/DropTarget.html#to2d"},"E2obSBBmEFEl5fH35_-pK":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toIso"},"YoHxFQ5HxiQxaEynrgRvs":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toPolygon"},"0vwA65hTlX820Z4SB9tO-":{"uri":"/melonJS/docs/melonjs/DropTarget.html#transform"},"_X5xhHk7-3k64Nfyp22AR":{"uri":"/melonJS/docs/melonjs/DropTarget.html#translate"},"4PbltIj2siCKgZVltuLtY":{"uri":"/melonJS/docs/melonjs/DropTarget.html#union"},"BY0RpjKDj_vulyJm2eSwJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#update"},"TizbS-HEcBfYHtbjbWG-3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateBounds"},"qt81IeX53_XpFliYeXMF1":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onAnchorUpdate"},"_S9PJwzpEENsqyN4d99PH":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html"},"z6CzsfNZjQCDKY7vJXQhK":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alive"},"WClI3mT-xf7kKun8-Md_z":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alpha"},"oP9VPqeu6jrBV4bPFVaaP":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alwaysUpdate"},"bpZKekF6RqN7aOx9v0Dv8":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#ancestor"},"60l2U89QCimJuqOW6Vgh6":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#anchorPoint"},"ejWB_YVp-kv0d4jujbEXS":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#autoTransform"},"IS15z6VDjpHfgw1N1TUxb":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#blendMode"},"UFn1_0P5cqbjJ3rTZSQ2G":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#body"},"PO6sCaVhuXBMMI6IDfQab":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#bottom"},"1btXSNLOC7m97pRGUCsS0":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerX"},"NkN7TPTbMno0pKSllg4ks":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerY"},"XDWy-xElDDruqqywj2UqX":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#currentTransform"},"sDrLOLCjEbupLLI7_JDdO":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#depth"},"fEVC-kF3GwMItXPlRvyvh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#floating"},"Ki2YLBkg-YcLthhNGwAR_":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#GUID"},"tK3E0vKAjhIYULGBSPEOH":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#height"},"9UtwU_xKbs4XIToeVHRvb":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#id"},"rtPIiyHhuZXcH2OIRyUYv":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#inViewport"},"Recqj5H_rhiCd4dIgUDCM":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isDirty"},"jEbNOwMb1gJB_vTHLpwqP":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedX"},"4g4_V2WDZoSzJb1Y-zKaN":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedY"},"hrcTOK-HZkiMzF4fMYULE":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFloating"},"V9kDJi7V_ysp9pfteCEoX":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isKinematic"},"FILSHTP2baOmCBpnKFGHI":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isPersistent"},"yJylavotEEIVuQZSJurEp":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#left"},"qQFIYVrGUVEgcFuu9yNhh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#mask"},"wN-qY7n4KR2G13-CqWqZO":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#name"},"mg4i1rT_5PMNQ15ga7Yck":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onVisibilityChange"},"28q8h8CSUmavez8symN84":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#parentApp"},"E0cRp13ApnjAxPuYCE0pj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#points"},"6FQfBTxSbIxKbfXBnjPsU":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#pos"},"bqda7QRSmHx3i_Yo1w9CV":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#renderable"},"JGN2a2dwD_5-0-S-D6BeB":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#right"},"3Ni39tuwryumWpdikDERT":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shader"},"cxnnx26_NlScsVc2Q4fIR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#tint"},"BTYdzAIzsTLqwxIiawd8Z":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#top"},"ajH5DvT_HKGU9XZfRnALB":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#type"},"EUHCw0l5WL-ADZkFh_Mhe":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateWhenPaused"},"v_OfQ1vwKFy7iR-7yD1Is":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#width"},"SC3lw0-qLtG5JZ3z1MEv_":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#angleTo"},"Ng8m_dg_vcTYDGwyMBoz4":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerOn"},"EyV5G5fMKfTv5qjlN22l_":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#clone"},"KoMvTMB2qSdaR0OQ0HvC3":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#constructor"},"blLE1BbSpHzDdrlmJERgr":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#contains"},"qFNSwiwM21f1Scp8dwmgM":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#copy"},"CWf-l42iL4ZUd6M2IWsy9":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#distanceTo"},"Co-Oplft0dE_Q6ngNnqBI":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#equals"},"i_lnmq1XpF_BJzZts2tA0":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipX"},"a-DAqURK7QmWoT2I2ij9e":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipY"},"GAgbfD5Bs0KKFr32NNJSQ":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getAbsolutePosition"},"i0hZNfN24vhZ3I4G-uaEb":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getBounds"},"F4VDEd5qoORvlfTsSOMLN":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getIndices"},"4j6OxFnnDqOlkfZd3_TY1":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getOpacity"},"0F9LyajbTPm8PtnRAtDsg":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isConvex"},"mgw0EfhIwUuqj-P9HeMtw":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFinite"},"3DxBZj997Xfac9v3h80ZM":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#lookAt"},"bm-e5OObuHB4dgOwZ64zO":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onBodyUpdate"},"b0vCz46KW21Mq9FJMvY6c":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onCollision"},"zZ1ghXYQhxtri_ABVigUD":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDeactivateEvent"},"9eRHWILfFqHckx5UzPt57":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDestroyEvent"},"UC588UO28xxcBXD1h2NPj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#overlaps"},"RhRuECjGdXfNCkEj0nQ0G":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#postDraw"},"2gdlr_dbM8bxjLyeBT8lh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#preDraw"},"kctN8D4sr38nQoo-eM9aw":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#recalc"},"GLtTIMSjQTH-L4S4OtRrl":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#resize"},"qUiS8qbG5DC4zjCDPw1m6":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#rotate"},"ejbJ132YicImzwHX0I-6Q":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scale"},"aif5trUck0X1EtyuEOebN":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scaleV"},"ugyAI2UojhnJ8FONPpDDU":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setOpacity"},"FuN0u7hHpSsb-erBHZhLN":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setShape"},"IkitorPlCKU_DMwMA_Du0":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setVertices"},"zjDC-oqBwDvaWmHrWk862":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shift"},"shfTsiRcAA-VjOl_2paBU":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#to2d"},"r_aW1asspgvMpZ4QorlLS":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toIso"},"zTKxjSoX4Prlb54-T2cHk":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toPolygon"},"rTBTs6mbtANgd6-pwQ5ti":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#transform"},"co2dVJFcliFxlE39Ap9Cu":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#translate"},"nb3q3MR5VeOdxsRLKe7ts":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#union"},"9ndDTnFdRX9SkXdFL2ffP":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#update"},"JawdpSgm6YEjdTCS9-QZj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateBounds"},"i-StHkwH928JDbUWqbRug":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#draw"},"4rCptvFcIisMOwxJVy04a":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onAnchorUpdate"},"jjt0AZ9S7f4aVGNbfQDUl":{"uri":"/melonJS/docs/melonjs/Ellipse.html"},"zdiO33Gzu6GBoQWGRf5vW":{"uri":"/melonJS/docs/melonjs/Ellipse.html#pos"},"gHXDj0yxJpwap_OR7nemf":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radius"},"8SJ10J8LTxA9bjrUyvpBa":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusSq"},"HVaKb1V-20z9jqRQ462Lm":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusV"},"PPM1LHglvMkGe9NHoFgEo":{"uri":"/melonJS/docs/melonjs/Ellipse.html#ratio"},"Q0G6Wtl3rqDQG7yeN_0G0":{"uri":"/melonJS/docs/melonjs/Ellipse.html#type"},"eGbHAe2SicJdPfdNRCZgh":{"uri":"/melonJS/docs/melonjs/Ellipse.html#_bounds"},"TGrg2wvqBnJ0rfKXaDQY6":{"uri":"/melonJS/docs/melonjs/Ellipse.html#clone"},"_Iosc5HkbQPUBBBI1f-Qc":{"uri":"/melonJS/docs/melonjs/Ellipse.html#constructor"},"3rN-MfZIvh9E098wy5doz":{"uri":"/melonJS/docs/melonjs/Ellipse.html#contains"},"xbJNaKMJz1dNGLM2cnVT7":{"uri":"/melonJS/docs/melonjs/Ellipse.html#getBounds"},"Cr-62zzt6U9SvrnMpP-lw":{"uri":"/melonJS/docs/melonjs/Ellipse.html#rotate"},"Ma_tTY3Ko5C8FX43Iculk":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scale"},"2lwg3H68K5jy1IcADS6gE":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scaleV"},"c9ln4g0Nq6Xfg1_dxpUN9":{"uri":"/melonJS/docs/melonjs/Ellipse.html#setShape"},"4xM7TfyL5YcicsaqBOfX3":{"uri":"/melonJS/docs/melonjs/Ellipse.html#transform"},"y1Rfz9igxSc9bmx3Sif3j":{"uri":"/melonJS/docs/melonjs/Ellipse.html#translate"},"GCUklxAJPkSco91e99twM":{"uri":"/melonJS/docs/melonjs/Entity.html"},"5R__NFxY72cpQMMt4BYOo":{"uri":"/melonJS/docs/melonjs/Entity.html#alive"},"9nEKmixGktJ-FTiaaHSfK":{"uri":"/melonJS/docs/melonjs/Entity.html#alpha"},"Bfz6EItb6HnLdsSz6lPBT":{"uri":"/melonJS/docs/melonjs/Entity.html#alwaysUpdate"},"Jnn2ALMpI3wrcGXTLFZv_":{"uri":"/melonJS/docs/melonjs/Entity.html#ancestor"},"_oo_SVoxwxgnN0R3j8-ZD":{"uri":"/melonJS/docs/melonjs/Entity.html#anchorPoint"},"Xn-qae_zdxHGZ-uMQr5rx":{"uri":"/melonJS/docs/melonjs/Entity.html#autoTransform"},"xup7pIkW_YX_oR6xVndE3":{"uri":"/melonJS/docs/melonjs/Entity.html#blendMode"},"LkK_Y6lLoa8BvqceP1BOi":{"uri":"/melonJS/docs/melonjs/Entity.html#body"},"2TAeg0xL0uLBtL6XG0BPH":{"uri":"/melonJS/docs/melonjs/Entity.html#bottom"},"XnrCPrW_R_F-SM2h8hAQQ":{"uri":"/melonJS/docs/melonjs/Entity.html#centerX"},"vK8k7mix0ObanGm1LsSMY":{"uri":"/melonJS/docs/melonjs/Entity.html#centerY"},"4sJghEcMymRwNBKrEPI3E":{"uri":"/melonJS/docs/melonjs/Entity.html#currentTransform"},"dHEydSEbyPyco7k7EoNCT":{"uri":"/melonJS/docs/melonjs/Entity.html#depth"},"VQ1a6qEp8_Kw6En4Mi23O":{"uri":"/melonJS/docs/melonjs/Entity.html#floating"},"unB0Cvn2FQHcXGbX7AVsz":{"uri":"/melonJS/docs/melonjs/Entity.html#GUID"},"RDO4K1NEMDSXvy0hQfbik":{"uri":"/melonJS/docs/melonjs/Entity.html#height"},"iSNn-8P9aQSlqQH5UE4_w":{"uri":"/melonJS/docs/melonjs/Entity.html#id"},"gY7ateiNIS6xJcSEDIB1C":{"uri":"/melonJS/docs/melonjs/Entity.html#inViewport"},"vW9ns0ixaizMSdap8u_NT":{"uri":"/melonJS/docs/melonjs/Entity.html#isDirty"},"01KyFrdMLQjJwlDZZqRf0":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedX"},"G7-kPbHlJnHIKQ3T5HUgi":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedY"},"wPqHQfq-o0kJm6KuFGlK2":{"uri":"/melonJS/docs/melonjs/Entity.html#isFloating"},"QP4NoG7SogtH5XoX-IWBE":{"uri":"/melonJS/docs/melonjs/Entity.html#isKinematic"},"YA3YaZGsMj7NO0M5qL4jg":{"uri":"/melonJS/docs/melonjs/Entity.html#isPersistent"},"w--lWw2ai57k4v3_ZrTxy":{"uri":"/melonJS/docs/melonjs/Entity.html#left"},"r_aTEaY8PlY_aYKP0O1d4":{"uri":"/melonJS/docs/melonjs/Entity.html#mask"},"CIzhDGHatGumdpQk8d3au":{"uri":"/melonJS/docs/melonjs/Entity.html#name"},"nRjAzCiDp-I3x3-SJTZrf":{"uri":"/melonJS/docs/melonjs/Entity.html#onVisibilityChange"},"hZc7CmuPVwHjAw1Wrmn4c":{"uri":"/melonJS/docs/melonjs/Entity.html#parentApp"},"6OeoKrlCpZ1JiZSyLs1-7":{"uri":"/melonJS/docs/melonjs/Entity.html#points"},"Vc7yKAs_OAgG0BLrKb6fw":{"uri":"/melonJS/docs/melonjs/Entity.html#pos"},"CHJvOpsLB4ui3P2tgZdBf":{"uri":"/melonJS/docs/melonjs/Entity.html#renderable"},"qU5fZDcAhzKY4awllH17B":{"uri":"/melonJS/docs/melonjs/Entity.html#right"},"sIWfs8seyM24UXDnJbSUU":{"uri":"/melonJS/docs/melonjs/Entity.html#shader"},"PpcbcbO6C38hjnti7Seei":{"uri":"/melonJS/docs/melonjs/Entity.html#tint"},"JXKPylR0iCIL1fFiJP_Dq":{"uri":"/melonJS/docs/melonjs/Entity.html#top"},"mjyIi_PWWWMRJdq85TmKC":{"uri":"/melonJS/docs/melonjs/Entity.html#type"},"yaRu2isVw5-IBl-7RlK1v":{"uri":"/melonJS/docs/melonjs/Entity.html#updateWhenPaused"},"htsZ3lHushinOVR6l2_Ll":{"uri":"/melonJS/docs/melonjs/Entity.html#width"},"VephsQnece7GmmlpvOAYL":{"uri":"/melonJS/docs/melonjs/Entity.html#angleTo"},"Bd1s18VlpL0zE6yw05jeQ":{"uri":"/melonJS/docs/melonjs/Entity.html#centerOn"},"UfObQDrndomOn6MN7j95G":{"uri":"/melonJS/docs/melonjs/Entity.html#clone"},"ltCUpbUbKJYXe49aOclin":{"uri":"/melonJS/docs/melonjs/Entity.html#constructor"},"Jicd_tcSIzYGxnQHsP9wO":{"uri":"/melonJS/docs/melonjs/Entity.html#contains"},"ywTxF0P-zOfR27kAscGm4":{"uri":"/melonJS/docs/melonjs/Entity.html#copy"},"bGsVq-xgHBEMeYYirEqR4":{"uri":"/melonJS/docs/melonjs/Entity.html#distanceTo"},"3Rh1duFUcmx82Axf97NHN":{"uri":"/melonJS/docs/melonjs/Entity.html#equals"},"5HwwpD6WtmnNZM0E0OZen":{"uri":"/melonJS/docs/melonjs/Entity.html#flipX"},"q2xu_3bxp6JYHhn5EdeDk":{"uri":"/melonJS/docs/melonjs/Entity.html#flipY"},"saZtxHA6Pw3GhY7NRX3ed":{"uri":"/melonJS/docs/melonjs/Entity.html#getAbsolutePosition"},"kI_njGmad3AJJmZsTRkhK":{"uri":"/melonJS/docs/melonjs/Entity.html#getBounds"},"f8PRDxn83zXOsagydXbVW":{"uri":"/melonJS/docs/melonjs/Entity.html#getIndices"},"mcZ8z3qtHlPoSRRKQ2g6f":{"uri":"/melonJS/docs/melonjs/Entity.html#getOpacity"},"SAKyjpwj9zx3wxSgFNYG9":{"uri":"/melonJS/docs/melonjs/Entity.html#isConvex"},"HFR9wzuiWXrfRkGNZi-PK":{"uri":"/melonJS/docs/melonjs/Entity.html#isFinite"},"iC8BBz2QgRth_UcB3NqNX":{"uri":"/melonJS/docs/melonjs/Entity.html#lookAt"},"SdcqIUx3pZuh6mWOwIzda":{"uri":"/melonJS/docs/melonjs/Entity.html#onBodyUpdate"},"dPw5udQFSY64qvmNCcv7f":{"uri":"/melonJS/docs/melonjs/Entity.html#onCollision"},"jbHB3ej4OqSMA4tC7Ofzj":{"uri":"/melonJS/docs/melonjs/Entity.html#onDeactivateEvent"},"WuwtG7BdEzLRy5N-3AVqk":{"uri":"/melonJS/docs/melonjs/Entity.html#onDestroyEvent"},"oUsLsdH7dbnwRrqANjeXA":{"uri":"/melonJS/docs/melonjs/Entity.html#overlaps"},"9W6K89xZHHsGIJQ31Kezd":{"uri":"/melonJS/docs/melonjs/Entity.html#postDraw"},"T-_S3PFxbh44QrixnSd12":{"uri":"/melonJS/docs/melonjs/Entity.html#preDraw"},"rKgN3ffSWGrD_wIUK_6MN":{"uri":"/melonJS/docs/melonjs/Entity.html#recalc"},"jZ4lDCNWPtIg4gzEslAVg":{"uri":"/melonJS/docs/melonjs/Entity.html#resize"},"f-2tc1JI94RinMtdpEKmo":{"uri":"/melonJS/docs/melonjs/Entity.html#rotate"},"lks14itaNYlXWDWXozo50":{"uri":"/melonJS/docs/melonjs/Entity.html#scale"},"NKbSLNAVnAWG7AAHkLS-i":{"uri":"/melonJS/docs/melonjs/Entity.html#scaleV"},"blxbJjpSZgN32D81yMcBx":{"uri":"/melonJS/docs/melonjs/Entity.html#setOpacity"},"12lR8sjfSBIQqKM030eOf":{"uri":"/melonJS/docs/melonjs/Entity.html#setShape"},"X6DbNkS7Fs_xeFaWFmYml":{"uri":"/melonJS/docs/melonjs/Entity.html#setVertices"},"Rsg8iXgGHUWC7DnPUHSnY":{"uri":"/melonJS/docs/melonjs/Entity.html#shift"},"h3ThN9EVwl11J0xAMPkkj":{"uri":"/melonJS/docs/melonjs/Entity.html#to2d"},"BRLJMD8VZF8d407DmCdZc":{"uri":"/melonJS/docs/melonjs/Entity.html#toIso"},"DG4CwGex2aMTuZTWYhJ4_":{"uri":"/melonJS/docs/melonjs/Entity.html#toPolygon"},"RWDewRro_LePMTQVpiDz7":{"uri":"/melonJS/docs/melonjs/Entity.html#transform"},"73mW-YKhMxtzaUq3aMTEZ":{"uri":"/melonJS/docs/melonjs/Entity.html#translate"},"P_1YEPE9xNXECBLYAPzQv":{"uri":"/melonJS/docs/melonjs/Entity.html#union"},"U6PEESo57VbSQ5QSF6s6g":{"uri":"/melonJS/docs/melonjs/Entity.html#update"},"VPl8nCjXHpDjsmX45hkQM":{"uri":"/melonJS/docs/melonjs/Entity.html#updateBounds"},"Rpa_3FXyyZePHgC5BAnAT":{"uri":"/melonJS/docs/melonjs/Entity.html#draw"},"z6Qhwz22fBOtiIq2HqKAu":{"uri":"/melonJS/docs/melonjs/Entity.html#onAnchorUpdate"},"S_nHr46I8KuCNzQVTiD9M":{"uri":"/melonJS/docs/melonjs/GLShader.html"},"Zh2b5M41kaShnmFx4Acv1":{"uri":"/melonJS/docs/melonjs/GLShader.html#attributes"},"AazhvLFK5iyw_Urtf7rFp":{"uri":"/melonJS/docs/melonjs/GLShader.html#fragment"},"FXy64X6vsgJRS43dnOMYO":{"uri":"/melonJS/docs/melonjs/GLShader.html#gl"},"4XD4fgUHDVWkvYT-cdLPG":{"uri":"/melonJS/docs/melonjs/GLShader.html#program"},"475zYEezmHL_Zj1F1qwYU":{"uri":"/melonJS/docs/melonjs/GLShader.html#uniforms"},"l-7hO-sE-2mHwWOHJVnFe":{"uri":"/melonJS/docs/melonjs/GLShader.html#vertex"},"yghb2XFTcEhDsO1Mzxz0R":{"uri":"/melonJS/docs/melonjs/GLShader.html#bind"},"lfrMKhufG9LHx2mR1hrPF":{"uri":"/melonJS/docs/melonjs/GLShader.html#constructor"},"_an2EEp-z2ryFYOqwc9VR":{"uri":"/melonJS/docs/melonjs/GLShader.html#destroy"},"2LBlDbpRB21NLYN9-cGU1":{"uri":"/melonJS/docs/melonjs/GLShader.html#getAttribLocation"},"xciT840ZZlMNP5wYgT8Rv":{"uri":"/melonJS/docs/melonjs/GLShader.html#setUniform"},"r89WjgtaOWSrBbz1lDnay":{"uri":"/melonJS/docs/melonjs/GLShader.html#setVertexAttributes"},"xy7h7gFNhl-qKes420UBs":{"uri":"/melonJS/docs/melonjs/GUI_Object.html"},"OCTjKV6Dhmnk7UxD89W0_":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alpha"},"KeGilaXlN4Xp8vrfF9T2Z":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alwaysUpdate"},"FRjEHRQj3v_Zagq8MWXQH":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#ancestor"},"ymOqaNvza6jBd3Asy7x_F":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#anchorPoint"},"sDkgmP5l5wPaoD8JzD877":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationpause"},"nH7X9xpLsGGtvguZbMIK7":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationspeed"},"FpgzLCJB89NwiGuRr6KlI":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#autoTransform"},"zG521LLqo9ZPR2sCMAufw":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#blendMode"},"bGrvijjxqVQhy9yNb3pc9":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#body"},"fHIY_vH0--Z_nmiJcEcFy":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#bottom"},"o_AQjTHmE7LqGfKN2FKUB":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerX"},"stRrVIzITU6sZvLeVQl57":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerY"},"ZQOsW4vBBiCnTIat1HmS2":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#currentTransform"},"NaH2SvEeLJMUm1Rt6mJ8R":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#depth"},"GO3z3sEJYbc5M5hOqe33V":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#floating"},"epOk2ZjkzdQuG3NSIRbwO":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#GUID"},"t0ITKB1FT7jWVikq3fuvU":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#height"},"758jzM0xlgrX9rZ5i6_xX":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#inViewport"},"0ZiElb54V6aAQ0UdZCv4H":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isDirty"},"CWaKLd6Vx3g48mdyr8--a":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedX"},"nJhh8ApqkywFFkXtpty73":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedY"},"rP4oNwdsnFSBsulFNgXyv":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFloating"},"-uG1FtL-dEeva-CdS6AhD":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isKinematic"},"yhyyFxzvveFwS3uoZHUdS":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isPersistent"},"XWQDp98c9pCfd-lHKFLMR":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isVideo"},"_wc5sJRW3D5tNpYbFhlhh":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#left"},"97Hz9FX4oQqIcVouDqbOJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#mask"},"I8nufOr6CXjhUuyvTO6HW":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#name"},"6I6C3w5KaoCXlO71mmoMB":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#offset"},"05Duq_3sKroWeEHuY289k":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onVisibilityChange"},"QdksfsLsoUkB2CsK7FKXo":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#parentApp"},"J0FuhJAG2HuX8TnkSLtPv":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#points"},"IrF8Wu9bIFXyoQU0XfHLk":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#pos"},"SWHvJIlW-zbIrhoeKw47l":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#right"},"Ui8zCM_F_pgbYO_YyBPP1":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shader"},"1B4GmhDJqjnXtL4ttXDjT":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#source"},"DLrumSBXbY7G9eBQrZ61n":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#tint"},"yOJAy2ZLd98PbGbwPQYIf":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#top"},"wY-4irn5RNoLkovUDefxF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#type"},"nuE2ed-cGa4AcDysqKPxP":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateWhenPaused"},"flgYttSAb2JmHfvCYdhNU":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#width"},"hFzpc86z6tJAA9DKvn_ab":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#addAnimation"},"PSUTUZKre8E56BeVO1Otb":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#angleTo"},"nefq3KXV12g8bgq7lMwBy":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerOn"},"TolMiSw01gbuClbpRU_Xd":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#clone"},"L4YrNfcdiSkYmDpiUjOD3":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#constructor"},"kyiJ6qHyCG0_S8N1Le_9Q":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#contains"},"rT1S0MmCrA084GEs0Ob_8":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#copy"},"E-r3IHm7CIjYtc4vkPJeZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#distanceTo"},"bA9LoMdgEdXK9Z2AyRiKj":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#equals"},"eGjH7iVKHf18sNkevz8AW":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flicker"},"c-k2upp46zvEofbCyBIpc":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipX"},"oPtpTVdSp2Ws08ZwTnp8D":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipY"},"sOoO08ZtvvMoWAOUP-NF9":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getAbsolutePosition"},"fwM6zrG0oAarQ4Uwxcire":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getBounds"},"2cyjPEHqDhreL7ntOMJUx":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getCurrentAnimationFrame"},"RaljX80xMpD1wW3MiF94N":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getIndices"},"CWAsPFe3-C--GHDDZ97xT":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getOpacity"},"qft371G4IpqXAtk9hzWFZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isConvex"},"fGF05bEVaNN4J1bgJdrLN":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isCurrentAnimation"},"iaBSDvnM6fy_D3l_VLmKZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFinite"},"uAh8CvL7GJXHKCxOEzxv0":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlickering"},"TJEx7gfW298qmGg8DuPJt":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#lookAt"},"O25c80X5lDn15fXil2lqr":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onCollision"},"vNBhyJ6_YaM6KmJ0ETZJu":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onDestroyEvent"},"GShVyGBLZTw8E3gnLkRDy":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#overlaps"},"27e_Oa7pqz9heUWfUozoM":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#pause"},"YQo-dcR3xk2X3qGVFsK47":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#play"},"ZTS_AkqFrrsq19PszZAnH":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#postDraw"},"lxqwtslMhmfDpW0Wze5Ru":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#preDraw"},"1SKLXX_JtxuLMQEunjVOo":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#recalc"},"faWD36I4HHdrnzh6pXEeT":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#resize"},"E4rw_pqNW9u_ZOk5u8X6H":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#reverseAnimation"},"hWJ3gLE9V-qSrDmk_LkuJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#rotate"},"_1g7OgvNxNpDDevjpgYOW":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scale"},"V5gTLVv7tJ23y5au2nbI_":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scaleV"},"OyQMEefloVBTCZJAjctDe":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setAnimationFrame"},"WMXbh9NjXNO-19HakMxoz":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setCurrentAnimation"},"7S9otkzROGvLIV-LgaPj6":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setOpacity"},"JwQikn_AyEhof32Q-L92g":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setRegion"},"WTAUekPnywgTnT8t9XJdJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setShape"},"ExdzODomRxQ-C5UQ6ttYe":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setVertices"},"hRlH79HPLBooAgdnVOHYR":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shift"},"s8e11_LeX7DiOHGEEIb2k":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#to2d"},"prcSEOHAtytV41B_PEEz4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toIso"},"RdxYdPhx4EbtVNUQ2YF2Q":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toPolygon"},"PUL1ZwjYhRsP8m5BVyuat":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#transform"},"9N0APCA3ebdvsmRT9C_Zk":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#translate"},"FAbQYdMzOGylwCpA6yC9k":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#union"},"ojiNmbCv-wiiNwjXhUrDg":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateBounds"},"6gnSZUZzd5HDbCu9jP6mV":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#draw"},"em2XEy_JAI7XwnXGbh0KD":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#update"},"yrOSFeQc7CsNSVFknwpuC":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onAnchorUpdate"},"6gfcfdYxFgN9nFhB6DwVT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html"},"EFXo9ovozY51rMt8zR6g4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alpha"},"XxQ9kSwB3XGrH8tIA-_eS":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alwaysUpdate"},"akrKCsAY6c5uqE9hVZeTN":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ancestor"},"5yCODTU9zGzxNYhxf3S6N":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#anchorPoint"},"GfewFo0tunKg2HgORP1dP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationpause"},"s9umQ7mTz2j-NeOYyo2K7":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationspeed"},"ki5AW0McWUqTFgrJ42Az_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#autoTransform"},"8T1K6RRYR5WLmtCp9K3NQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#blendMode"},"sHDV5k58N9RHCeMMP9SNm":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#body"},"uPj6LEak3B1rnp8c22r45":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#bottom"},"6XW7MtPy1iU7-hjMcEIR9":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerX"},"LHqwQyJK7fM-QODROklrI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerY"},"e39BS78fvl8W395F74UOa":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#currentTransform"},"K6_ahOAskPR92ITPklj4F":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#depth"},"RYPfW-LGj1DD3-BEmh7C7":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#floating"},"hZCpluRy353nGCdZZ63Tz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#GUID"},"9WsGlyCquqo_ARwrlQsbK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#height"},"MrleV58YcMTWJscg7JZVs":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#inViewport"},"5U4U9Iw57Mic8UyoDAII1":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isDirty"},"CbNiMDDkeNksyF3bA9ly7":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedX"},"qKer9ZbGI_hw4CHsWDmBD":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedY"},"FBZqmmXJJxeadlPRtqin8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFloating"},"es7aTdaoGgTio3t-KHCRs":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isKinematic"},"DZNjTK7FJFvzBlziUBLyf":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isPersistent"},"Z92Ws1Ve46FLEadcPQMnL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isVideo"},"KEqPnepdfTIJAqxTsy7J1":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#left"},"NjcTl385bI6RaPE0Dfsh_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#mask"},"SpOJrbhKzCEZt0GxJ5xnT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#name"},"UgBKyAXKbI-35CudZ8lkZ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#offset"},"tkME3Hps9gISWFyThlMzs":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onVisibilityChange"},"Od7P0471WneFUi3hVlILR":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#parentApp"},"4QNtKY84WuWitZ1sPDyiy":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#points"},"YAVuzmyqmcbMWkhm67938":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#pos"},"DLSbfB3O4OCmtSMLf7RGO":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ratio"},"cli_3OGnOY-dEtiGmQYuS":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#repeat"},"SPmtEEYuXoGpUiA5O-XRv":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#right"},"mD58YCFZyvq6BMuYR_DzJ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shader"},"nnXCI7jgGiwEtxmjTlUBI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#source"},"Soc9KAZDndSQL91mn5e07":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#tint"},"gfdoGmByEJLN4n6KF20Xu":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#top"},"zx6CejVhHYvz-7vZKNujn":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#type"},"Eut23WQotWhBZEjCCuy3l":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateWhenPaused"},"r00hVKsMoJFwuM48LDur0":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#width"},"9gs-2RjVkdH94tcK_ncKM":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#addAnimation"},"4iAIWUIJ6UsKlDQsp_AIL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#angleTo"},"jN5-O3AHyEc8uBqR1GUNF":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerOn"},"f0tIHxAT-ogzZ4HYf_AXa":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#clone"},"SizAfukPtSiU5eKPxfdBL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#constructor"},"K685VdLFNyfA28VcSONCV":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#contains"},"axwBnxIBjmLsXNHMa8w3E":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#copy"},"qRu78sVeldLIw_hH4X3iG":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#distanceTo"},"7zSPblT19oCftXD0ofj6U":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#equals"},"oVwMXtcxlDT447THYZPau":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flicker"},"HGT4JGYQbZfE95Ut_G8O7":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipX"},"Zk7DtRFLrGMJZ2rWWDg2x":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipY"},"R1Rphn9UKVVMooAvGAYFE":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getAbsolutePosition"},"FK1JjyjhXVTDl-jfJOj-Z":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getBounds"},"9S4uoQd2QA1JVWucOH5xN":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getCurrentAnimationFrame"},"oc6vDHerhyn_huaFCvKGY":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getIndices"},"O971OCydN8gXelCuyopN7":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getOpacity"},"wMVPJwQZJw_vtYTd3IYnD":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isConvex"},"j8_IbgYlou8rbbr9rfv3U":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isCurrentAnimation"},"3SkMub46E56d1YGWuTCyP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFinite"},"thrheaD8kD0weaHoz5b3N":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlickering"},"suwcnSdOL3hlVDTTi__mr":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#lookAt"},"CYPekHQKdLNIC7FNLPdrI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onCollision"},"15OQ7QA8QOuKtj1QuuCbP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onDestroyEvent"},"T4bbLQxFiesFYCo3k2uJm":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#overlaps"},"M1vaUpn71e6daRJH0eKdU":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#pause"},"2dXxa6EVXxXFwJKY-Zew3":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#play"},"xa1BuJ3zThNBudAi5mpbW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#postDraw"},"Tmd1-5pH85BMpkEGp2DeH":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#preDraw"},"gbUCO6Yr008euvqj9euPB":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#recalc"},"fdGeBTHZnO3q6tChDt08n":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#resize"},"287hu9yaqihRFGFK7r3uG":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#reverseAnimation"},"pfBOZSANvzbdHEFQgjkuV":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#rotate"},"e-YasRfWtzJFVTb94WY8D":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scale"},"yoDugl8Iwgw-hGzenACef":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scaleV"},"6UsKFDa5waT-YFCNl-_5S":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setAnimationFrame"},"Ylw0Nh0TbHiH1etT5qWWv":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setCurrentAnimation"},"C896KCGfzP9QEZRjFVbeK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setOpacity"},"QWWRX2AJ6eSB09AlzMP-I":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setRegion"},"pzbRTswiyxYYblYObmIbv":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setShape"},"rWh6-4op-VgvZAJd14sA4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setVertices"},"6Vluytps3FY9uKpB__thh":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shift"},"aDMY-jyTZ0BMcjUmh5wiI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#to2d"},"vuUnw5Z6klKfjiThVk-nz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toIso"},"wdGAejeRJz-sfXk8gQ0Wi":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toPolygon"},"OrtzrHkhFG_WwRoRryRJ0":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#transform"},"0_vb2QaPrVdOtKAblMW4B":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#translate"},"-Bm63BT2arB-JQ072ciIv":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#union"},"YZV1EFaPUxPIXnA3UndtT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateBounds"},"fO77RvaVSeLUMZx0ANTiW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#draw"},"19QcLSEe60tezQc90bQut":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#update"},"cr8PDHlKa3DAGApZ3tzF6":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onAnchorUpdate"},"WdCfry3aitHMGX6pxPheE":{"uri":"/melonJS/docs/melonjs/Light2d.html"},"vAORPJgF6rb_34L1cEBtO":{"uri":"/melonJS/docs/melonjs/Light2d.html#alpha"},"C-nypnvEJb9aI2U8ZDMY4":{"uri":"/melonJS/docs/melonjs/Light2d.html#alwaysUpdate"},"FhudbGJ67JoT7lB2KQaW2":{"uri":"/melonJS/docs/melonjs/Light2d.html#ancestor"},"9_VVO6UtsxzIz3VrJLXg9":{"uri":"/melonJS/docs/melonjs/Light2d.html#anchorPoint"},"wFDNglAIITVwH3Xionw0A":{"uri":"/melonJS/docs/melonjs/Light2d.html#autoTransform"},"-pJLcNww9jIo9x458tgXg":{"uri":"/melonJS/docs/melonjs/Light2d.html#blendMode"},"2f1aWe4j76-CZKKejYMwy":{"uri":"/melonJS/docs/melonjs/Light2d.html#body"},"ufPJUTDBOqm5PkLtboAYL":{"uri":"/melonJS/docs/melonjs/Light2d.html#bottom"},"yREg4DckaR9ux6bNgxDf2":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerX"},"oYwuyilvYJxOGwXbl7fZa":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerY"},"h5LML6G-Lkj44f6lf5e_8":{"uri":"/melonJS/docs/melonjs/Light2d.html#color"},"FwflEnUX0PL45KppOm2wH":{"uri":"/melonJS/docs/melonjs/Light2d.html#currentTransform"},"AL7hsRsadfAmho06ikWt5":{"uri":"/melonJS/docs/melonjs/Light2d.html#depth"},"KGfjdtXETc7s3E6xfVAGV":{"uri":"/melonJS/docs/melonjs/Light2d.html#floating"},"lXXDicrxxdqjApbAqVBcl":{"uri":"/melonJS/docs/melonjs/Light2d.html#GUID"},"GEn69DF0WiGFmdmPQg2gC":{"uri":"/melonJS/docs/melonjs/Light2d.html#height"},"x5eHJAE6hkK3quDJDZm-X":{"uri":"/melonJS/docs/melonjs/Light2d.html#intensity"},"afZjtmNVyNqPC7eGhTcf6":{"uri":"/melonJS/docs/melonjs/Light2d.html#inViewport"},"cKMG842AXWbD69qvOiPEX":{"uri":"/melonJS/docs/melonjs/Light2d.html#isDirty"},"R4UuiyaFsGoUAgy8mlhWl":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedX"},"ZZKNrPgwWnBPnzmILLk6o":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedY"},"vwhSkmyaxUZJ-e23BYWd_":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFloating"},"Goy1-4J4pUoOAkAzhU7xh":{"uri":"/melonJS/docs/melonjs/Light2d.html#isKinematic"},"qSFGy_9_e-hlznECF_HMW":{"uri":"/melonJS/docs/melonjs/Light2d.html#isPersistent"},"On3a26jKauvC2y3u-eRXu":{"uri":"/melonJS/docs/melonjs/Light2d.html#left"},"YnnEGE6E6gJXPVVlsUHcL":{"uri":"/melonJS/docs/melonjs/Light2d.html#mask"},"fIRuBqf-CG0_yCoETdRfk":{"uri":"/melonJS/docs/melonjs/Light2d.html#name"},"yh9VFG2MxHRP_delPlNgW":{"uri":"/melonJS/docs/melonjs/Light2d.html#onVisibilityChange"},"yyZN-ZEfCdkkPmvbB_cPn":{"uri":"/melonJS/docs/melonjs/Light2d.html#parentApp"},"IU5QlBB9OHsluWrygYVjS":{"uri":"/melonJS/docs/melonjs/Light2d.html#points"},"lpQt-1i0qBeyKw8vJ9iTk":{"uri":"/melonJS/docs/melonjs/Light2d.html#pos"},"dY-eRc3nQCjQze2frqNYh":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusX"},"WK8ziZbFLwSMOPob9vDE5":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusY"},"rV1HGoEMg1MKOVdGX13Ed":{"uri":"/melonJS/docs/melonjs/Light2d.html#right"},"0Hw-2muvvMMCGTf1h0ZFm":{"uri":"/melonJS/docs/melonjs/Light2d.html#shader"},"eK73ybDRPZsjE8cAfelnb":{"uri":"/melonJS/docs/melonjs/Light2d.html#tint"},"3wcio2R_tJg5FC6W02nfP":{"uri":"/melonJS/docs/melonjs/Light2d.html#top"},"N_oerTxtunJ2HqezpaUwC":{"uri":"/melonJS/docs/melonjs/Light2d.html#type"},"7rUfi3gWgD_Zl20Oogmd2":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateWhenPaused"},"SDsJsXjxvSWZQSfgT8kuY":{"uri":"/melonJS/docs/melonjs/Light2d.html#width"},"AnmcEAHGbQzwl8oHs4C_7":{"uri":"/melonJS/docs/melonjs/Light2d.html#angleTo"},"L5nPKRoZTfRvgEKL7cj7F":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerOn"},"iAhbDeiTsHf97tePpzzKj":{"uri":"/melonJS/docs/melonjs/Light2d.html#clone"},"xZHUKK79Uv27_xfiSNBWX":{"uri":"/melonJS/docs/melonjs/Light2d.html#constructor"},"gNW_EJ1EKLoPHNoXrLuUF":{"uri":"/melonJS/docs/melonjs/Light2d.html#contains"},"PVHpoUcL2wox7e_AYseo7":{"uri":"/melonJS/docs/melonjs/Light2d.html#copy"},"DvLdSteUvC9Cgjia_S2i1":{"uri":"/melonJS/docs/melonjs/Light2d.html#distanceTo"},"6lBz_vTapiURxwR4WvGZI":{"uri":"/melonJS/docs/melonjs/Light2d.html#equals"},"Rj_mVromTvFVjjiSyp3_o":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipX"},"28x8977hsuhwGF785m4V-":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipY"},"Ogdduf7o0RLyOld28MRA2":{"uri":"/melonJS/docs/melonjs/Light2d.html#getAbsolutePosition"},"kSmotrGp4lfOmn6LT29rh":{"uri":"/melonJS/docs/melonjs/Light2d.html#getBounds"},"gQYhkmyk-BrzEmhsvca3z":{"uri":"/melonJS/docs/melonjs/Light2d.html#getIndices"},"3KjmF6e_s5YnrdckhW1IE":{"uri":"/melonJS/docs/melonjs/Light2d.html#getOpacity"},"NWr_cJDTjfEeiVzc1Ghtm":{"uri":"/melonJS/docs/melonjs/Light2d.html#getVisibleArea"},"QU2Dh4dMTxRT2f6ZhTi4d":{"uri":"/melonJS/docs/melonjs/Light2d.html#isConvex"},"wqxHL_Pm5EOQ6eI6dS8bv":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFinite"},"JBcN6dE7at_qlLaRmW72X":{"uri":"/melonJS/docs/melonjs/Light2d.html#lookAt"},"gNp7naS48n6FgMefTOzcY":{"uri":"/melonJS/docs/melonjs/Light2d.html#onCollision"},"TPwr4OatSrdC-rNO4hiP_":{"uri":"/melonJS/docs/melonjs/Light2d.html#onDestroyEvent"},"vmUDfKLX58xMbittFgytv":{"uri":"/melonJS/docs/melonjs/Light2d.html#overlaps"},"Tg-0yTK98ZdRLo-U8zJDh":{"uri":"/melonJS/docs/melonjs/Light2d.html#postDraw"},"LvmYeBoWh1eLdjZG5d5ls":{"uri":"/melonJS/docs/melonjs/Light2d.html#preDraw"},"_CxCPLBH9cRd8j8sUFMGb":{"uri":"/melonJS/docs/melonjs/Light2d.html#recalc"},"rz01OEJCWNtheEmAZZ73s":{"uri":"/melonJS/docs/melonjs/Light2d.html#resize"},"9ecUuea0-xUAu7fTQpp2Q":{"uri":"/melonJS/docs/melonjs/Light2d.html#rotate"},"Pn0dNY3gy8baPz0kdj2il":{"uri":"/melonJS/docs/melonjs/Light2d.html#scale"},"Pv3lMKX-0RglruJO-ZS0v":{"uri":"/melonJS/docs/melonjs/Light2d.html#scaleV"},"nBrwgaj7T3rwPxLPgI7S-":{"uri":"/melonJS/docs/melonjs/Light2d.html#setOpacity"},"4s0yOH599JkhyjgZo9R6k":{"uri":"/melonJS/docs/melonjs/Light2d.html#setShape"},"tg_0z00ZvmbqRmWY7I2hi":{"uri":"/melonJS/docs/melonjs/Light2d.html#setVertices"},"Z4mh6IX_wA3iyoZgL_znx":{"uri":"/melonJS/docs/melonjs/Light2d.html#shift"},"bSoI0qaalU0pRKtYa8Hf9":{"uri":"/melonJS/docs/melonjs/Light2d.html#to2d"},"wSNN8mk2Jy0yc7slplYin":{"uri":"/melonJS/docs/melonjs/Light2d.html#toIso"},"44vbclHprl-YD4c7w-cw6":{"uri":"/melonJS/docs/melonjs/Light2d.html#toPolygon"},"Mh6M63zcH1I0Hui9rtWie":{"uri":"/melonJS/docs/melonjs/Light2d.html#transform"},"BuU7iGnIMEIPpgRxOUNaa":{"uri":"/melonJS/docs/melonjs/Light2d.html#translate"},"2-H0UUoBra8QYpAbsD02T":{"uri":"/melonJS/docs/melonjs/Light2d.html#union"},"OTPbbB-GFkkW-iBJfoyEW":{"uri":"/melonJS/docs/melonjs/Light2d.html#update"},"QbdWA-YP1bdb2ri_Jd4Vd":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateBounds"},"H3akYjcoW_BKBaH-4gbtI":{"uri":"/melonJS/docs/melonjs/Light2d.html#draw"},"KV3Ij0JQ97VcXxaGm8R5P":{"uri":"/melonJS/docs/melonjs/Light2d.html#onAnchorUpdate"},"jWK_TVM_TTE9QT-3c0BeO":{"uri":"/melonJS/docs/melonjs/Line.html"},"AlZSEFW0hT69sCqZeWYdr":{"uri":"/melonJS/docs/melonjs/Line.html#points"},"DTjRWdWHMk6gvskhE-JzJ":{"uri":"/melonJS/docs/melonjs/Line.html#pos"},"pOXTA7X8noGM78r2Cj5oU":{"uri":"/melonJS/docs/melonjs/Line.html#type"},"QJ2u7A4bWfCVSxU5gRv0B":{"uri":"/melonJS/docs/melonjs/Line.html#clone"},"yMHt77uBcfCcuXUxvrJAu":{"uri":"/melonJS/docs/melonjs/Line.html#constructor"},"a6XeNNL0lOCBXxgxXfICp":{"uri":"/melonJS/docs/melonjs/Line.html#contains"},"l54xSMZ0bkfzdbO-firxw":{"uri":"/melonJS/docs/melonjs/Line.html#getBounds"},"DeCRGFpjdtTzVH86wHgIU":{"uri":"/melonJS/docs/melonjs/Line.html#getIndices"},"iLcCKW4pB7QRmUsI2VsNW":{"uri":"/melonJS/docs/melonjs/Line.html#isConvex"},"nMyBleNJWrLDCUjm9HOft":{"uri":"/melonJS/docs/melonjs/Line.html#recalc"},"-Ma8qqKP62MOdDaTlE7ow":{"uri":"/melonJS/docs/melonjs/Line.html#rotate"},"_sRDEVpSK4DqkxX-2RX2d":{"uri":"/melonJS/docs/melonjs/Line.html#scale"},"qXXrsIfI1qGJeq3n54M0E":{"uri":"/melonJS/docs/melonjs/Line.html#scaleV"},"ymKsWjvJzgJg49l5m018H":{"uri":"/melonJS/docs/melonjs/Line.html#setShape"},"v7eOUM6ZN_2bU7k0jIt0y":{"uri":"/melonJS/docs/melonjs/Line.html#setVertices"},"8Jk-esl8kXA_JxkBiuCQL":{"uri":"/melonJS/docs/melonjs/Line.html#shift"},"h1KgapMUz_jAKSMZHxUZJ":{"uri":"/melonJS/docs/melonjs/Line.html#to2d"},"PQEGebqmAuEfD8p7D7ewc":{"uri":"/melonJS/docs/melonjs/Line.html#toIso"},"S-a9VorsteKuH5-10lPwh":{"uri":"/melonJS/docs/melonjs/Line.html#transform"},"xFSLnKJEreMBY1yCpTbbb":{"uri":"/melonJS/docs/melonjs/Line.html#translate"},"gajATUx0L55hQOp3hiFYy":{"uri":"/melonJS/docs/melonjs/Line.html#updateBounds"},"9Cjffq9kYt-TxeCp8sH7V":{"uri":"/melonJS/docs/melonjs/Matrix2d.html"},"eAO_lcUSvyk8dNWGspKrE":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#tx"},"40bGDzRq5RtWVRhfPD5dV":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#ty"},"RguoXMlPWgdx_MzGCjucR":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#apply"},"ANtKZiMwo4pl_Sr6v9ODa":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#applyInverse"},"DbKSxXYXSmejhAcQLRrGV":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#clone"},"rQFyrCZQVz79RdN77BcCm":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#constructor"},"L7zcZO14Mzr4-VeAK9FkX":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#copy"},"aHH9VgbZD0nPO8wC8jniX":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#equals"},"FnXAKDKLZ2quZwG_kjBh9":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#fromMat3d"},"CMdOU2o1vunH44VRSUzH4":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#identity"},"b8Un9Q9ig3AqiQmv0cV4r":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#invert"},"cDSZLMb2Ug1vehkPhvkXy":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#isIdentity"},"e_jPrQUWAej-FuysA6RBv":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#multiply"},"pcAsZp_s4ZH8jqAOFJ1T1":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#rotate"},"ztf5Aan-578nOYyjpv9qI":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scale"},"B2zJ5hgLKwfm-1BCaQpuM":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleV"},"ZpVnsRd28JbPkFM4cjjsZ":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleX"},"oXfgEAd_zr32q9u9ZeMgC":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleY"},"NWoNKRewSaaeYBotfBy7e":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#setTransform"},"Y_SkWwSuf0Px3Kd_PxqXO":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toArray"},"4aN5wZ73HcZ9iY9ckPMpd":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toString"},"4Jh_-DuJ_bVSBa42Z646M":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transform"},"hkhxbNYlJVmaOm1dN4TDJ":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#translate"},"LnaZyB1fdnRhetOauipQ4":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transpose"},"zvELaNA0DUKy2Onpwu23Q":{"uri":"/melonJS/docs/melonjs/Matrix3d.html"},"bkiGvufaBYXV3toYwSUL6":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tx"},"4FFgtyzuVZq2wl1z9NRd9":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ty"},"LgYh-R9kbO9Jd0_NRDgk6":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tz"},"fBSyPQ_qGzr2Mnmiz1bgt":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#apply"},"3dV2ZKLKbzirJUZkLKsAW":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#applyInverse"},"2Jkxrg-ge47E95v7KmXdG":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#clone"},"ejV8DxQYX_64WptaMRhbK":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#constructor"},"Dp9zTNZbVOr6aw-Qfq6Sv":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#copy"},"6vH3CQN9o4PbyjsrE1sFg":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#equals"},"juwdn-n1BYnqA8PgpA-E1":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#fromMat2d"},"8XrARZxoQiiGjBdSjI_Ck":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#identity"},"RoDnrN8mskYcXiD3rXj0M":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#invert"},"OPjnF2ABeZSx-Gvi3Lb0V":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#isIdentity"},"j7EbiOM_YK9-uriIoCdMQ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#multiply"},"xBLVxezGhOeIN7GHS2paa":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ortho"},"fpJb_zzrqzBR_n6q69iJh":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#rotate"},"MJhTw9LRkHIDXzdjQ_o2A":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scale"},"MWt1zLV4WoZ5AxHE7bVTh":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleV"},"5LkMVSUoCr9SYWJes1Jp5":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleX"},"ojxTkJ4RltlGWnIARaGpn":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleY"},"ivX71rW4GRwlLTtKt9HiP":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#setTransform"},"jCkVzGn7fKSa2pXwLN4jw":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toArray"},"ptWSN7tRbF_-YKJrwzDLZ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toString"},"QI5xxo6ixm_e6Dg1BxJBC":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#translate"},"aLrKjyqF6JoEZdcx9VLKi":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#transpose"},"weQEiwwM5WstU8mhjDPnX":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html"},"n9GxHmMESC-2QFd-KB0eI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alpha"},"9kf6fJepNDaQjPiK3-2T1":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alwaysUpdate"},"Mc99RAz1ZG8z88M8iI-UK":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#ancestor"},"wSPzjN5ISlaHfxkQ7V3T_":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#anchorPoint"},"IyVSn8J6A4rvRAc_sLm4u":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationpause"},"xY8nMnDd8U_DKjbIc1kvt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationspeed"},"2UF-GI4q4hwA9YzVHhLmk":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#autoTransform"},"5HxmvV_ua9Wxqc2FjGjAP":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#blendMode"},"kasA4RCiU3TLa2vyL3MG0":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#body"},"y1OHhNGxDm5djb2Kqb3tF":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#bottom"},"fDT_TjmjUQHUXxEuCgIDB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerX"},"cU2KQSuB5_g4BIqeEbhjN":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerY"},"QkNYXcfatDRUx8R_cUIkd":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#currentTransform"},"-Wj2iSVY4pr5rnCnIYelC":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#depth"},"cPJQknq8dIJFk3aw2G1aS":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#floating"},"5xyk6oFe6P5kbxqiuTrRn":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#GUID"},"JVB19E-J1vaLP6WuWHudt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#height"},"GuoSS06gFZlUZlECeoRNl":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#inViewport"},"u3SbtXmQu99gVcDQui3gW":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isDirty"},"4mT3lcK8pVvijj_VtbE6p":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedX"},"Mj0QrOj73nbf_ACB2oJ1Z":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedY"},"MElU0mQ9ylz0u0pGWrRns":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFloating"},"1M59XfM6E85Lhf_4ouPo2":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isKinematic"},"F0y1dofmRBCU536UuPakB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isPersistent"},"og3e1b-Z9i6V3k2BJlaYl":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isVideo"},"M_WX6rnO6O2yf_YLWl__m":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#left"},"p3mX7W5IB5tbOBaH7Yf87":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#mask"},"WXJZ7r7mysdP65Lg8jDlt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#name"},"E-zqr4qMG251PkmSUTasG":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#offset"},"1z3Jno5yQXLq9wTeqDvIr":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onVisibilityChange"},"o3aatkJO5VVEZ2fqfWtma":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#parentApp"},"G8piTiP7UlW0nxRnPLUNR":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#points"},"V9rm2tmBt0DcyR1McmD1S":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#pos"},"n6F7Mztc3Kn-f8mbrmZAK":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#right"},"3rtmBvzO47JzHjo-pEStl":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shader"},"CSqmWpdTAg8exCVeI9fsT":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#source"},"ry2DbxVTuVxHwFQ6bqgKI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#tint"},"RcsdPOu2Na9JwEoTcvI6j":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#top"},"JGQgZKAeEx49eVhNlubt7":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#type"},"4xI3h-v7nSVAZjbIkqLPW":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateWhenPaused"},"oc1S88ZQfXvVhltjEfpJY":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#width"},"fMI07czGt5Jrb9lMH6_V6":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#addAnimation"},"pd6m9zf67ImTZ7OUdgnbL":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#angleTo"},"F-aBBTuHJASxeZHnJI4DV":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerOn"},"fdMJIMXS2CQFQT0D0-N1q":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#clone"},"fY2UwslGXRMCta-kW_kdQ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#constructor"},"936neVmZktWl1CmMVExen":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#contains"},"THewOWgzQPtrnGTNRGkfp":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#copy"},"hdA1LwgUpgNBv8DFSSEnI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#distanceTo"},"7kmk-jvtF1dCcDkakfZNI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#equals"},"8wHMDrbtWC_SaHByokeaq":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flicker"},"wpA1O3B0d8nVAupFXHWVf":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipX"},"DEF7d6e7ljke0SC1-IXTt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipY"},"4zNTvCGXkZX23IBV2n9RJ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getAbsolutePosition"},"qyZZqKERz7ZgGP9rZrgkq":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getBounds"},"96UYLVzhbGpMA4MJdLsog":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getCurrentAnimationFrame"},"YPaikptaCtf_LbFsITguf":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getIndices"},"Y7qtMAdw45C4NVSea2FV7":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getOpacity"},"MD55QxAoTMtgR3sVRc4Yq":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isConvex"},"wTaiVuuFZZzQt8eMulvYU":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isCurrentAnimation"},"T3jkSd704jQrQ5KghkiRE":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFinite"},"855hKxlwfXShHlAYjYvIZ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlickering"},"lZ7UzslyGs_uCmHZP2OE7":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#lookAt"},"SSxT5epXvldun9KH_uoVg":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onCollision"},"fK8ijlnbFisKfIrmeCnJ1":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onDestroyEvent"},"vENrnCXZ6AYkWm6QVket1":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#overlaps"},"gf8APSmh3yiOYPlilRbNy":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#pause"},"c_XDDtO0ISxHdWytseOT4":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#play"},"XCGjvw9Augn9JE1xPF3cE":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#postDraw"},"JLLapkAHAwfkdsrq5M6Gu":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#preDraw"},"v-6TtNhMClrYs5Oc_rwMb":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#recalc"},"d7-dfjPXw_3PxnSHChu9S":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#resize"},"Ef6su8EkDIqj9DytujD-k":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#reverseAnimation"},"uoA68qykIdGMa-QLgYWlh":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#rotate"},"IH1ryWwigDleY6E7n9GMH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scale"},"jShxIPtSXg2sd6ulzriVg":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scaleV"},"N_6cdFNS9vH2_xSFP62wC":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setAnimationFrame"},"YyXQRKz-2KtktpTf67mpy":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setCurrentAnimation"},"xF9_DBBrqEftT6cYf5buW":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setOpacity"},"Wo8A5WqlycjG-1k_dJFH5":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setRegion"},"X7UjTuCQP-OBEqmJpds-r":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setShape"},"opPrXGYE0akxi1x6370Ce":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setVertices"},"9PPNHjwnCpnl1sVEq2NqH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shift"},"m6qR4EmSaCkUIW5ebuOFw":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#to2d"},"f2p14PPDUPMv0g3r27VRf":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toIso"},"0YwAIPrEFGsyvIbijTfIx":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toPolygon"},"D47BjH5rd396vSJgAm7tt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#transform"},"HAUe56I1BPsvXC2xdTMun":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#translate"},"zbvr1upO8GFfvgHYayve2":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#union"},"rMFis2GK-SLNBriwpv4Mw":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateBounds"},"Xgk-RO8sBTB0RrGXtmaB9":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#draw"},"h5HvTS2j04PqSYjJoJsl-":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#update"},"hWXDXaSFckiUsHCdGphVN":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onAnchorUpdate"},"HXKny6FVJyLTekYgg3_pb":{"uri":"/melonJS/docs/melonjs/ObjectPool.html"},"R_YFlsSzW8PJ5ab7OKW9w":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#exists"},"v-MPhJRZgePj5GfF6lBe2":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#getInstanceCount"},"pcCOyZXzM3LAcRFcNFcTO":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#poolable"},"utmGTGsTC5RBN9OR7gg-E":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#pull"},"m9e-rh3KFor7tdfvProY8":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#purge"},"2-p-5MdCD-IUFzo4IqTqt":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#push"},"44A0lf9YIQGk06Y_3O76I":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#register"},"TKdiEfV3hKbBgg1FUTsaa":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html"},"6JIgn5v58kvbukpr5iP6X":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#x"},"BOLKY-cn21IHxJbFDQg_6":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#y"},"ppxdzN0MjUxuthRI3K5hY":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#abs"},"vlQKwgv-VKNlN4-dIQGuW":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#add"},"0V-oojk9P-MBgUWBlx6Uq":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#angle"},"nKykWqEPWXeRhgFIMy-6q":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceil"},"oUqlNn7yN4bQesnpUyaA9":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceilSelf"},"KybK3RNufmwTXMB8RRAf0":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clamp"},"pmUX0lT_QIhLM7n8YfqA5":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clampSelf"},"7Cur4rFV00r_Q9IuFligH":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clone"},"odW0XIbRRT1enouzN9H1s":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#constructor"},"qd3yqRVq1TaB93zpK9BeN":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#copy"},"cT3Bbnw0h_KUcQWUI1PLv":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#cross"},"uUZHGKFalSgYICx8Kde2F":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#distance"},"3iMBPyKljp5WYqBTl5nqg":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#div"},"5diKhpLVztNfWA_Y0ClnJ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#dot"},"EnkgIHy91q1MflzoMOMwe":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#equals"},"ip80ymAlhCZEZshBYoHN_":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floor"},"SkA2x329InYhVMuJzbhen":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floorSelf"},"hxy0xKSFciLlfTdeKdWGm":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length"},"5szR6fmLnAeC28_6-P8ZT":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length2"},"1nzz_xCp9uLvNO-ajBCzr":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#lerp"},"pYeixpCluB_EkPHq3Fx66":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#maxV"},"MSkqLW_E14YZKyBPy-cpC":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#minV"},"k5paiAuxUNIvqrWdmy0FF":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#moveTowards"},"H_3mGarU1GraBougqVA41":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negate"},"ZGtriSOa0FBsQqlPgBX8O":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negateSelf"},"U4sBthexkZmkBNRLBEx9K":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#normalize"},"wf93NEYQzU9witUf8ZKbc":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#perp"},"L6HZLZevjGJlzJ0M-LbmK":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#project"},"A2HI6IyuupE_QA2Jy-ZnX":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#projectN"},"k9SkSEJkp3lU7qezyeT9m":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#rotate"},"bCSJWlWRVPgkKEaL8VoPg":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scale"},"dEZnziOfDPm8Nc8AAIuqX":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scaleV"},"5EJA2nUAT235UWhRzePBL":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#set"},"7GvDXipwZ9FZoDqRGJMTj":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setCallback"},"X4lZET1YvE9oHYJmosgUX":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setMuted"},"HBxMl1iPcFQ7Bs8u56Yv4":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setV"},"JLTADRDvMsttzsW7-C0lG":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setZero"},"NP8LthBp5owsbHl9sCW0S":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#sub"},"MpJZWa8DW5zzWc5oiWWz3":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#to2d"},"8P2hzbfY-0NufrGZP3ZSM":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toIso"},"UCy1Tefhi1KVHZvq7pdqg":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toString"},"c31ZdeftcIObo4gpLg_dV":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toVector2d"},"iwsA5uxrg6pQ5Q9wSxp2N":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html"},"osDe837GxVWIwH7SumUxh":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#x"},"J7Q4qkBKlpYLzzlqlR8PK":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#y"},"X1Q02hz25ZxOyCWJPk6tX":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#z"},"EHeqSe3LPca9Wg6WEo_Q7":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#abs"},"Om8oKFsHqM01cwX3A-i1p":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#add"},"H2ifWhhVsXopWGAtnn3EE":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#angle"},"lcO7tvaS0n9TMGE-hQ28J":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceil"},"K5RPYODSc9BtLlxW9QdcB":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceilSelf"},"pZKv1aSBFtwyatuV4t4qd":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clamp"},"ognRX870TPZRqvAJazpBw":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clampSelf"},"VU7ORD92QNqAWPyYZ2DWb":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clone"},"dys88j6Gan1KmF3HqeKxh":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#constructor"},"MAbiGhV5dH0zOKzY8PYzH":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#copy"},"0j70b5g0fAGAe6vZm_4Jz":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#cross"},"EcIWb4rHXbdt_MheZKETC":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#distance"},"-xhP50byp5Oyq9fPkB02G":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#div"},"5GEl43OHmLWSAWXu8x8X4":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#dot"},"Azq_w6ZqmS95heh8qfGt3":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#equals"},"-mlalN8fm_nfLOlz7NOu_":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floor"},"NKx-u0d2FmV47AoMw991K":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floorSelf"},"-SyVhzSvWm8tbpq9HzpxQ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length"},"T8M-VNrOlcGnKTgM4QNiY":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length2"},"khonf4dSkjQTMfmwjR1Ph":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#lerp"},"7_H_HtLAlRcrZ1FG9nXZ9":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#maxV"},"FIL_qhPn8IETJIXx09vqB":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#minV"},"Qn6cFNyaE-G8gMxyu9wvy":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#moveTowards"},"1NlLK3jGFkhdFsVBOBZIF":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negate"},"csRdcNFVLTgtumUCtPsLc":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negateSelf"},"gZVNpCz6va1KIcZcXUT3J":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#normalize"},"YTED1geFSNYFK-YF4bQNJ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#perp"},"88MG9OAufDbYz6kwlMi-C":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#project"},"dT9gLOg_Fx5-9TXt_PgM1":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#projectN"},"FbVZ1K6nK7HgEFRrNTvAK":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#rotate"},"s5pn5LebNpTr1dm2-7UgC":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scale"},"ymVLE4IRQ1JN1O0cZnrCX":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scaleV"},"M9cnOZdZyakmpEO556xih":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#set"},"g8I6Z9Pagr3EuN9BG2Jsz":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setCallback"},"NxEg5oELr34dJgg0ZHJxV":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setMuted"},"00g6dIZoN3yTMD5bFcQgB":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setV"},"Aj2OJPClkOD1mow5cUJ2o":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setZero"},"CE9Xfmk96IkucKJ7Mt_sZ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#sub"},"CVMZAfTDKLTCpMYsFrNRA":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#to2d"},"UCM2bTG4I2ZXu6tvxyxyV":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toIso"},"AA4uWaA_kSKswK6vbQM5k":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toString"},"IpZtnnkqkqIVaO7TEu_c3":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toVector3d"},"Ye3Qvytb7owpsgN1IVMDA":{"uri":"/melonJS/docs/melonjs/Particle.html"},"frhU_3N-qyemP6_hOsJQL":{"uri":"/melonJS/docs/melonjs/Particle.html#alpha"},"zcpavLRxGJOH3PQOk043e":{"uri":"/melonJS/docs/melonjs/Particle.html#alwaysUpdate"},"-qZscfJ95jcz5aJ4pTUAx":{"uri":"/melonJS/docs/melonjs/Particle.html#ancestor"},"AaBB3sZ-9GyJYFdx_pdSF":{"uri":"/melonJS/docs/melonjs/Particle.html#anchorPoint"},"_Oo3BsJJ4O-EJHUwPwZPm":{"uri":"/melonJS/docs/melonjs/Particle.html#autoTransform"},"FoNUAQcMXzgvV00mXoqp_":{"uri":"/melonJS/docs/melonjs/Particle.html#blendMode"},"ETMRnBp8PKf5ONc8JIH7B":{"uri":"/melonJS/docs/melonjs/Particle.html#body"},"S_aZPqxSqqRuzo5iugyOJ":{"uri":"/melonJS/docs/melonjs/Particle.html#bottom"},"zEnWwhLwb5YsfDa7L1z9u":{"uri":"/melonJS/docs/melonjs/Particle.html#centerX"},"TKqgjpH839QJFze3RhQBi":{"uri":"/melonJS/docs/melonjs/Particle.html#centerY"},"XJSZR__xo3WVGKlxmdtAL":{"uri":"/melonJS/docs/melonjs/Particle.html#currentTransform"},"EfscTqNSWF_rxsU5h6PAX":{"uri":"/melonJS/docs/melonjs/Particle.html#depth"},"egHJJxkpgpO_FqIOM6v0y":{"uri":"/melonJS/docs/melonjs/Particle.html#floating"},"9ITdVYfeVMl3mzLZ-c3tn":{"uri":"/melonJS/docs/melonjs/Particle.html#GUID"},"qg_IFX5yXsDh-sxQxe59s":{"uri":"/melonJS/docs/melonjs/Particle.html#height"},"hy7cBRt6CnRTGs5A3oE4j":{"uri":"/melonJS/docs/melonjs/Particle.html#inViewport"},"MViEibmHDGZsbUx8ifFcs":{"uri":"/melonJS/docs/melonjs/Particle.html#isDirty"},"iDujjk_8oR-uRIAYV_oMH":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedX"},"XSy-i-xJlKAPkUjObxB4u":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedY"},"odkKJt39w6AIVhwGoAYg3":{"uri":"/melonJS/docs/melonjs/Particle.html#isFloating"},"gfG2QDHdx2xQUdRilqx6o":{"uri":"/melonJS/docs/melonjs/Particle.html#isKinematic"},"Xw73JoALXacF1W2cf2bbB":{"uri":"/melonJS/docs/melonjs/Particle.html#isPersistent"},"VcGBO0YRWKO4HJhJi0LB0":{"uri":"/melonJS/docs/melonjs/Particle.html#left"},"Pgqbqj2cG0jAHrUoP7gAA":{"uri":"/melonJS/docs/melonjs/Particle.html#mask"},"B2MzbkljiA75p4Q3e2-iF":{"uri":"/melonJS/docs/melonjs/Particle.html#name"},"gPEmBawWrL9hIpWalV66V":{"uri":"/melonJS/docs/melonjs/Particle.html#onVisibilityChange"},"9Erju6G1hr3z8PYT1PCzT":{"uri":"/melonJS/docs/melonjs/Particle.html#parentApp"},"MBKnUypS42llBDkUl6Mbm":{"uri":"/melonJS/docs/melonjs/Particle.html#points"},"dhXThUFpzY_dyrfxI7Xzs":{"uri":"/melonJS/docs/melonjs/Particle.html#pos"},"37aLU0QMlvz64P7ZA-BWu":{"uri":"/melonJS/docs/melonjs/Particle.html#right"},"g0CkGqOudujm7D5RsVbM_":{"uri":"/melonJS/docs/melonjs/Particle.html#shader"},"9AH3UucVmK84Osa4_S7vn":{"uri":"/melonJS/docs/melonjs/Particle.html#tint"},"ajFSvvtgkWuz0nlMsa1Jd":{"uri":"/melonJS/docs/melonjs/Particle.html#top"},"RnPfLuMBfR-6n_IrWFhHT":{"uri":"/melonJS/docs/melonjs/Particle.html#type"},"lYZuzPOAPJ9oCR3_aVN3a":{"uri":"/melonJS/docs/melonjs/Particle.html#updateWhenPaused"},"9kRE1ZyHPI5yn1hS-snQc":{"uri":"/melonJS/docs/melonjs/Particle.html#width"},"Ha2BWQ7TA7hRNSIJF7PLZ":{"uri":"/melonJS/docs/melonjs/Particle.html#angleTo"},"mOdAcRflRgh6yGtcGdwYx":{"uri":"/melonJS/docs/melonjs/Particle.html#centerOn"},"w18TxkJqFBtwLYxv40oOk":{"uri":"/melonJS/docs/melonjs/Particle.html#clone"},"K7jAr6fgoIJ6F7cPTFCs4":{"uri":"/melonJS/docs/melonjs/Particle.html#constructor"},"oRzqwNHYHmWRAtkP53XQO":{"uri":"/melonJS/docs/melonjs/Particle.html#contains"},"AWjM5zCJlnoEd6k9M_sRk":{"uri":"/melonJS/docs/melonjs/Particle.html#copy"},"p4UpApzLnT-eWNBBHJhoK":{"uri":"/melonJS/docs/melonjs/Particle.html#distanceTo"},"RXKfEYrS1WVsVbitcKbHW":{"uri":"/melonJS/docs/melonjs/Particle.html#draw"},"mjEIsnfX6QPjy_Z9AJC7g":{"uri":"/melonJS/docs/melonjs/Particle.html#equals"},"HE01J54wUQ_QQgjoTJMNz":{"uri":"/melonJS/docs/melonjs/Particle.html#flipX"},"RnlBJ0FNU3SzJIhLILR4J":{"uri":"/melonJS/docs/melonjs/Particle.html#flipY"},"FbPl6HXvs5v0aDcYbD1rG":{"uri":"/melonJS/docs/melonjs/Particle.html#getAbsolutePosition"},"VXvSY1j1P4QGyxbVCcVDq":{"uri":"/melonJS/docs/melonjs/Particle.html#getBounds"},"GfzIzkt0ELLgRurSSskmQ":{"uri":"/melonJS/docs/melonjs/Particle.html#getIndices"},"J5e2DpbH6Nm0WPUIa-0KN":{"uri":"/melonJS/docs/melonjs/Particle.html#getOpacity"},"9xzVo6jTeVfsiTkryUr1o":{"uri":"/melonJS/docs/melonjs/Particle.html#isConvex"},"7q2t2UqknMRtNwpEnjd5a":{"uri":"/melonJS/docs/melonjs/Particle.html#isFinite"},"JGqKODcZdea-zR9VilI1r":{"uri":"/melonJS/docs/melonjs/Particle.html#lookAt"},"KB2FNgYPDdxDvNNE8ENgu":{"uri":"/melonJS/docs/melonjs/Particle.html#onCollision"},"aU9YEZ1u8c_NxxiSc3Clh":{"uri":"/melonJS/docs/melonjs/Particle.html#onDestroyEvent"},"r97HV0lpfJgtLZynx09ax":{"uri":"/melonJS/docs/melonjs/Particle.html#overlaps"},"sgHZbYzwyjHqQoQWPfsLu":{"uri":"/melonJS/docs/melonjs/Particle.html#postDraw"},"MQO48jPxyhwk-WUEmtX6M":{"uri":"/melonJS/docs/melonjs/Particle.html#preDraw"},"hMKY-1OIAstV2yRmLgi1G":{"uri":"/melonJS/docs/melonjs/Particle.html#recalc"},"XUe56lSgK4ZWtQV8q5HZ1":{"uri":"/melonJS/docs/melonjs/Particle.html#resize"},"fsvVEg5YNLyHCubvMyIY8":{"uri":"/melonJS/docs/melonjs/Particle.html#rotate"},"A61CWhH5_rmGUrG968J3h":{"uri":"/melonJS/docs/melonjs/Particle.html#scale"},"B1xSWhKSrKXbI8F2oGXYx":{"uri":"/melonJS/docs/melonjs/Particle.html#scaleV"},"4xH-FVTLT81zC2YWR3RqB":{"uri":"/melonJS/docs/melonjs/Particle.html#setOpacity"},"sahBfKRgwOtg-7ZBTS3Vp":{"uri":"/melonJS/docs/melonjs/Particle.html#setShape"},"UY_Sm5rXELGwqFlkVz_sz":{"uri":"/melonJS/docs/melonjs/Particle.html#setVertices"},"Q03Luy1gRoD5Con8tygRV":{"uri":"/melonJS/docs/melonjs/Particle.html#shift"},"YCD0VAQkqd49SvPmvvajz":{"uri":"/melonJS/docs/melonjs/Particle.html#to2d"},"7G9zb_9-w7CabwQMlCA0i":{"uri":"/melonJS/docs/melonjs/Particle.html#toIso"},"jCRSghkg1QV1pWXe6_tb0":{"uri":"/melonJS/docs/melonjs/Particle.html#toPolygon"},"AIaOBGVCXY_v4PG1qs_gG":{"uri":"/melonJS/docs/melonjs/Particle.html#transform"},"eIQJfE2zilSHrpoQ2a486":{"uri":"/melonJS/docs/melonjs/Particle.html#translate"},"559yheu4CfetVRcVydhPU":{"uri":"/melonJS/docs/melonjs/Particle.html#union"},"hTZ4lo6AtYvNlbYwhufqb":{"uri":"/melonJS/docs/melonjs/Particle.html#update"},"Hx-FeXQHX0IqRWpgbZgUX":{"uri":"/melonJS/docs/melonjs/Particle.html#updateBounds"},"ulbG9A4LeaqflPYVdRRE1":{"uri":"/melonJS/docs/melonjs/Particle.html#onAnchorUpdate"},"_WCJzQNQILx8VY2Oh-I8y":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html"},"PJbdnvsy-g8X2LcU8CyMB":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alpha"},"F9PgiuF6hsoq8WumuuCyT":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alwaysUpdate"},"2xHKqeAYQvfAb1EIeTUoC":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#ancestor"},"xHmo31LE7yF1vrr3Dj0fE":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#anchorPoint"},"uf5MCJjv_89NkyckuORXU":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoDepth"},"WTAeMh0y_jNiMc9dlJdep":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoSort"},"oxYZ5lzHgOouQwucLdqjj":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoTransform"},"Pt3uYotrbL8GSE8TbUDRZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#backgroundColor"},"rSJeGGxCJpsM9JLeRqcMW":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#blendMode"},"3fJSG7mvGzH4TDUeoidoP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#body"},"xtAVuWo-J-Vvusa9-Px0c":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#bottom"},"sKzZQllX_r4uZj_i2EFZF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerX"},"zgUZU2ZODLAdwmsYdrLlK":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerY"},"mLbsb6fCMi0BTBS7iLqDB":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clipping"},"wqOiR9AfeVmB-rtQ5-RWG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#currentTransform"},"f4zMJdEqhcISbszS7eI43":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#depth"},"0voWXZi629wqwfCCLKL_P":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#enableChildBoundsUpdate"},"Gr8gjRGXUlNrFRGsCcCnY":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#floating"},"qrAG2W1Gh94ENlzscS-m3":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#GUID"},"11ZQFoT5Y19MSsI_U4XG6":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#height"},"gtJfY-m6ubGZqPP_Y54sz":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#inViewport"},"ffDDIyXhibGPjuPHzSn0W":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isDirty"},"UeG8NQJw9amdRdVuNubhq":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedX"},"Rsp5nHhWLE2sV2grB-0kF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedY"},"_qB9tNFvFEpKmM_IP0ojR":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFloating"},"wKvEOI9YyDq8c3fLVE9Kd":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isKinematic"},"9kBeuB2Dy9AOtuv6RWrqr":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isPersistent"},"yKFxryxgoAI43gy9aXDA3":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#left"},"Gea_910jhnYBCqsU-l6rb":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#mask"},"z4xyLPQVfokiiqH_UBLXk":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#name"},"tYzeQknxr3pgWxA89dUo0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onVisibilityChange"},"vGBQODj7hYsGD7wggDrkq":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#parentApp"},"F6T4JWR2pKDFSk3XC_vtw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#points"},"yIzKxOV5AlHBjP4AsWzGZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#pos"},"LoRc6WmBPxGDX3IYPwVRn":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#right"},"vVPA9iYo0pzkA2yMQ7Yst":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#root"},"xFj0usfSWdEpdOgDzc-CV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#settings"},"bOwLoiPbb7p_sjTGKeyVo":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shader"},"vuFgpoCf8WYH0ZK2wIznd":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sortOn"},"p4rt05S2qahJiZD4wDAPq":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#tint"},"roAdab7pwhrP7ciI8hjk-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#top"},"FnHLgw74O5_nKoaQK-U3d":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#type"},"LJqBaafAzBEsLUkBa7Yie":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateWhenPaused"},"ABkbe82k8Xu4ecxdGlQgK":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#width"},"0Xebu0b0HL450PGKbGXnL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChild"},"77SVdZRuXtcXNkLh91n3j":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChildAt"},"77PcS1WMVF40rLrxaaWGn":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#angleTo"},"qgq0y-NzMOcKi4wcVSmIv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#burstParticles"},"JpDz-G1myty0b_agDtAqz":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerOn"},"ulbvIjb8pXFuOuRAnGPNT":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clone"},"RMr6INZs8l09GjBaVryK4":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#constructor"},"xzWQeG2WzAmSovJpcGiG7":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#contains"},"5B51jlVlyhui_JMWblEnP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#copy"},"t9YLHF3Prdize-PtCBhid":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#distanceTo"},"a0uZQiVNJNdD1hpXXJ4Sp":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#equals"},"S5B4DLBXnbdHazO184a_h":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipX"},"d3Qrtw_JYlPqK1gMjBSXy":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipY"},"tIprage_7vHdyIw4bEYgn":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#forEach"},"MI68tfYW8pnNAtmHEnBkX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getAbsolutePosition"},"xIzFX7_8tTtK6OSJuokMP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getBounds"},"IbiKBuOVnKqzXqkQW2tG6":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildAt"},"5Erm7yQycowTrtlEnCqKt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByGUID"},"2axLt8UDGRnMj4hKmEEPv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByName"},"UjqAkin34-50GBJzMVH1I":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByProp"},"7ncMbWZX5mZqE9_IN2WEm":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByType"},"xcWeb4c8JFMILThwsXvtP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildIndex"},"IRe1IPpiDuWFdpNPKN0kN":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildren"},"8tvfR2ZxT5_xirJEkPIOQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getIndices"},"bZkZAey_BbNHp-fVSA5Ny":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getNextChild"},"ZG_tGRMUKYODV__Ai1TIZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getOpacity"},"7-d_l_J1pEFNaUD9t0qOF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointX"},"Ea2w28_8tOXY8QqUj8mqI":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointY"},"02uSThxX81JS7EHu_Wd_b":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRootAncestor"},"7QDDVfWNVyl0dHPRtLvjX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#hasChild"},"U1fpsSV0J11KcoC229J1_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isAttachedToRoot"},"7x7NvBXJipa9W-0Bqhzkx":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isConvex"},"2rqZPFFy-z20-Q_Fpl_LZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFinite"},"1l0yTNJWHSpyPNBoPUikQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isRunning"},"jJquwxOcdWc3cj5mTHgmY":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#lookAt"},"O5eidim40saCIvHBVycVt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveDown"},"5c_F3-N6RS--B55oEH0n4":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToBottom"},"YDGZRnzHHRqbkTwZccet0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToTop"},"q1slaVJeHWnD6UAt8xmni":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveUp"},"PiTg4GkXKRgGI-ZZaEfCZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onChildChange"},"MZS-g1xisYEngoJ3-tOxw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onCollision"},"hvc0iKv3YU51v16lXylRN":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onDestroyEvent"},"gr2O-MhNMbBNzikQYv7H1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#overlaps"},"-0N2u95p205NDL38znIQG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#postDraw"},"ZYfq_6nbK36QQl0qW7fLa":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#preDraw"},"5NXJx3YS8dB3A1mxo10-y":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#recalc"},"wzoNNO62mj7fRXOY8SXJl":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChild"},"lsdWTH1LfphS0Ojeo1DoQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChildNow"},"WTyOOhR1P4Nl9RJJMwurQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#reset"},"rHlQJMnTCMiVSzCgrvNW5":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#resize"},"xm8mAm0D9ADvDhpCZ5AWT":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#rotate"},"L190YOo6tuIK9dwk0RfIH":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scale"},"C5BQz0E-6OLpS5JlQzWAZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scaleV"},"vza03dfjLqEH0Jb9S_P7V":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setChildsProperty"},"8NW3nSqMphn1D0gReSiZh":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setOpacity"},"SUrDxMR9ICk6-yiz4-T_R":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setShape"},"eSR3klun-vPVvh4mjNknU":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setVertices"},"APPZfdA8lFtART8yzhI0Z":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shift"},"zzTMcgSecqaf4YVwVDnqA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sort"},"w6mSFMHvgJ5U8gtR3f5cM":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#stopStream"},"6TdyOUDB5HdVYWSOz7pDs":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#streamParticles"},"6NWlawaatpZWSOXPgBP0_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#swapChildren"},"CF-uyqXFokU6BnlWcNteh":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#to2d"},"_eA1YzUqgug609aBEZD19":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toIso"},"4SSoLunVSp-5mZ12yShXn":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toPolygon"},"MbQ6iCxsFwvyXb-RlIXjH":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#transform"},"GZA_vRnsLuvmNQPcUOv85":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#translate"},"6Dg2yymB-wprH3YgueiBe":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#union"},"Xe6yYj9Jwb-uSc6K3ffko":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateBounds"},"CXsg_1UqJ__0IlsiQmeR1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#draw"},"0H8YmvDbjMmE_FWSZ-KQo":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#update"},"RMxRDnrOn_0IYphubkoBT":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onAnchorUpdate"},"IJPIuByxTThCsn11CB0J3":{"uri":"/melonJS/docs/melonjs/Path2D.html"},"h2EgGklAk8ql2krNczpLk":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcResolution"},"eDElHvncuuK0RMVxuOIfC":{"uri":"/melonJS/docs/melonjs/Path2D.html#points"},"ZbhybbZxoD3cipa5aHbZr":{"uri":"/melonJS/docs/melonjs/Path2D.html#arc"},"YWwM5_acdidF2LBVffiiP":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcTo"},"ucon8dNp1qqcAb2JoGV0Q":{"uri":"/melonJS/docs/melonjs/Path2D.html#beginPath"},"9pqu_rWvj1ARW2m6-31aM":{"uri":"/melonJS/docs/melonjs/Path2D.html#bezierCurveTo"},"Jat61p7q5vJNw96WXQt4E":{"uri":"/melonJS/docs/melonjs/Path2D.html#closePath"},"3twJR1PerSGH74uiH5EPq":{"uri":"/melonJS/docs/melonjs/Path2D.html#ellipse"},"ydsRPe5bvWJjv4KniWXzQ":{"uri":"/melonJS/docs/melonjs/Path2D.html#lineTo"},"W8WGYSQaQN8JWMHaGbOlz":{"uri":"/melonJS/docs/melonjs/Path2D.html#moveTo"},"wEc01DKzOc4QeEDo_kBz-":{"uri":"/melonJS/docs/melonjs/Path2D.html#parseSVGPath"},"fLOlFBHryA4yCUTXcLfZa":{"uri":"/melonJS/docs/melonjs/Path2D.html#quadraticCurveTo"},"sHMxIJdCGjVnjti-6h--B":{"uri":"/melonJS/docs/melonjs/Path2D.html#rect"},"Z7OGDuEp314JJDCK_elyJ":{"uri":"/melonJS/docs/melonjs/Path2D.html#roundRect"},"f1in_GR5ozWOD6qbFREKC":{"uri":"/melonJS/docs/melonjs/Path2D.html#triangulatePath"},"aR2ypQPLhR_nnEUNvLDQH":{"uri":"/melonJS/docs/melonjs/Point.html"},"IkMPJcQUjFZmT2u5x_G9q":{"uri":"/melonJS/docs/melonjs/Point.html#type"},"4LYK3WrccDyicVQHkRkuv":{"uri":"/melonJS/docs/melonjs/Point.html#x"},"ozUo3kutqKp-zcK_vOEVe":{"uri":"/melonJS/docs/melonjs/Point.html#y"},"WXL40P00fcirzl7V4ezcj":{"uri":"/melonJS/docs/melonjs/Point.html#clone"},"qkP8DMfA1mET1phyoiYwQ":{"uri":"/melonJS/docs/melonjs/Point.html#equals"},"oZs6i7hFj-YL2emck5-Bu":{"uri":"/melonJS/docs/melonjs/Point.html#set"},"By5iTw89owWOVxcwzEiMm":{"uri":"/melonJS/docs/melonjs/Pointer.html"},"v7ElYwUuUrTa0G1SEc4_z":{"uri":"/melonJS/docs/melonjs/Pointer.html#bottom"},"FBrbzDdbsaXtg-qeGnzB8":{"uri":"/melonJS/docs/melonjs/Pointer.html#button"},"FuRxHBA0m06zH2IJROD-J":{"uri":"/melonJS/docs/melonjs/Pointer.html#center"},"Oo9n8aloX28kerWAmmMf2":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerX"},"1m2ZNONL_5woPq9pMhEs7":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerY"},"OctMw4qkANtk3XyHUAskX":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientX"},"_ELDGynRFEgG18TSA__lC":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientY"},"GLHBcd5QmG5cO1t9wmdba":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaMode"},"JuyBoTKSaOjS-2QBDggkR":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaX"},"OVU_TtwHFHOOvjbAVTVVK":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaY"},"1Y25TLhhDhQ8KODfjCi30":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaZ"},"lH_IB6Pnr_PyHB2NURzvF":{"uri":"/melonJS/docs/melonjs/Pointer.html#event"},"QkNnc89pazhgq7YD9V0Vl":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalX"},"QfPh6RfZtEfMDQH_Lf-vQ":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalY"},"WeYbLWRXO9bqSgYiO3UQC":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenX"},"SFNDXtmMJRRB_2WoSzgut":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenY"},"jmAVP7iqwLm2CX713tXdD":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldX"},"sDJoKOPjnR6PVJ7RZV2yA":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldY"},"otfrPRBysXCa3I-ZWDALE":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameX"},"0dYtu5Z3zHIn4So8dW4A7":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameY"},"eoJg_s_J9nC3g5K3WVUfG":{"uri":"/melonJS/docs/melonjs/Pointer.html#height"},"D-YA4tySJYuY6NvtDXyq0":{"uri":"/melonJS/docs/melonjs/Pointer.html#isNormalized"},"TgD9NtuTYEEThw6d70tK0":{"uri":"/melonJS/docs/melonjs/Pointer.html#isPrimary"},"M7HgyC1yBNnno-aBKIm7h":{"uri":"/melonJS/docs/melonjs/Pointer.html#left"},"4BxPV386U85PFkPOqLgfV":{"uri":"/melonJS/docs/melonjs/Pointer.html#LEFT_"},"91RpbSINyRQyPPLy6qeYN":{"uri":"/melonJS/docs/melonjs/Pointer.html#locked"},"mBpMXSUOwgvDabVOOjxLg":{"uri":"/melonJS/docs/melonjs/Pointer.html#MIDDLE"},"M7-2BDo4xNUgtFVWzsYsI":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementX"},"e7-4hWbhvfp3M40DaIx7y":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementY"},"x0Qof8IOwnTffVz4Olrr6":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageX"},"cq0qxZuuxVQ5FwoPSAD4E":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageY"},"eCRijwir-7OZyTxKsAQQf":{"uri":"/melonJS/docs/melonjs/Pointer.html#pointerId"},"aYIlln9nGjGICTRxnrHZi":{"uri":"/melonJS/docs/melonjs/Pointer.html#right"},"hz_tr2OpTXCEDZhyG6sxf":{"uri":"/melonJS/docs/melonjs/Pointer.html#RIGHT_"},"6QQSvWpCSYRslw1xPMnQA":{"uri":"/melonJS/docs/melonjs/Pointer.html#top"},"azuXoMU8kQV5hGCduxVP9":{"uri":"/melonJS/docs/melonjs/Pointer.html#type"},"Y2d2j83RGsnFftCiKcq9L":{"uri":"/melonJS/docs/melonjs/Pointer.html#width"},"0IEy-RzL_XDeyLqmDcSJR":{"uri":"/melonJS/docs/melonjs/Pointer.html#x"},"iOCJc3npSaFuBebTflir6":{"uri":"/melonJS/docs/melonjs/Pointer.html#y"},"6NNUdSdgmDlmILBdmLNuX":{"uri":"/melonJS/docs/melonjs/Pointer.html#add"},"cQzIcaTNR0hQ0jVfMfedc":{"uri":"/melonJS/docs/melonjs/Pointer.html#addBounds"},"3WH8o8xfinqAY_PWobMqE":{"uri":"/melonJS/docs/melonjs/Pointer.html#addFrame"},"4w26R3rkXJD0bFnSxwA1Z":{"uri":"/melonJS/docs/melonjs/Pointer.html#addPoint"},"wfwJw3SGwnqACtzvfXFMp":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerOn"},"4Kg6LP0fbEBTJDEyvooXb":{"uri":"/melonJS/docs/melonjs/Pointer.html#clear"},"6swnr_-v-1f4Q06tmrOf0":{"uri":"/melonJS/docs/melonjs/Pointer.html#clone"},"Nucz4pbdPSnX8DRGK2i7T":{"uri":"/melonJS/docs/melonjs/Pointer.html#contains"},"tk49tfFSCCcCzf_sKzziE":{"uri":"/melonJS/docs/melonjs/Pointer.html#isFinite"},"7Vax30ZEjYazcpY-OdAKb":{"uri":"/melonJS/docs/melonjs/Pointer.html#overlaps"},"9E6hxfc_aMbOqmcCuW26O":{"uri":"/melonJS/docs/melonjs/Pointer.html#setMinMax"},"i5_lMpCI4OQOQP9mi63is":{"uri":"/melonJS/docs/melonjs/Pointer.html#shift"},"MgtJyyCYarru7emp3rI6V":{"uri":"/melonJS/docs/melonjs/Pointer.html#toPolygon"},"xRk2HeO4VeihlgFqqjYhC":{"uri":"/melonJS/docs/melonjs/Pointer.html#translate"},"bnuXsjPNeao356ak_pfsk":{"uri":"/melonJS/docs/melonjs/Pointer.html#update"},"GXYedrz7GaUhJiJ6F84wa":{"uri":"/melonJS/docs/melonjs/Pointer.html#set"},"7dlasGXJf3FM0wXDMFBaT":{"uri":"/melonJS/docs/melonjs/Polygon.html"},"DShNF8P2TH7JSdfFfY1RH":{"uri":"/melonJS/docs/melonjs/Polygon.html#points"},"p-vBu4ShMQOV0tp1vxuti":{"uri":"/melonJS/docs/melonjs/Polygon.html#pos"},"57VERY1gEnNNu-I4WtUpP":{"uri":"/melonJS/docs/melonjs/Polygon.html#type"},"c-UfGXFp24GDATeHVHLfq":{"uri":"/melonJS/docs/melonjs/Polygon.html#clone"},"AZAa-rPfKgVg1GX9RYP5N":{"uri":"/melonJS/docs/melonjs/Polygon.html#constructor"},"Q1mZ3_4p3tdgrM8h-X97e":{"uri":"/melonJS/docs/melonjs/Polygon.html#contains"},"CrMSJGjLt_pN0SHrvz564":{"uri":"/melonJS/docs/melonjs/Polygon.html#getBounds"},"ABNpXSeEKeWnP-WJn8-Cy":{"uri":"/melonJS/docs/melonjs/Polygon.html#getIndices"},"lJDWXWFNszJ2Vr_pJmcJp":{"uri":"/melonJS/docs/melonjs/Polygon.html#isConvex"},"qbMsx_VwcuIiTBsKK1oUA":{"uri":"/melonJS/docs/melonjs/Polygon.html#recalc"},"qPaq5xrD3EpwU5tNadAqu":{"uri":"/melonJS/docs/melonjs/Polygon.html#rotate"},"e91Id1QCXemsu5yeGh7s6":{"uri":"/melonJS/docs/melonjs/Polygon.html#scale"},"Xsq9EndHBJKXRHFGZRl0M":{"uri":"/melonJS/docs/melonjs/Polygon.html#scaleV"},"uVaTbutVhP2MQV3hKJUPq":{"uri":"/melonJS/docs/melonjs/Polygon.html#setShape"},"rTLr3-TexRZ4XRWjo-RS_":{"uri":"/melonJS/docs/melonjs/Polygon.html#setVertices"},"wIL2cmukQW36Se29vxwwA":{"uri":"/melonJS/docs/melonjs/Polygon.html#shift"},"wySRU5wuruQSsykJ6XedR":{"uri":"/melonJS/docs/melonjs/Polygon.html#to2d"},"614tMDqA6I6bt9U3aa47E":{"uri":"/melonJS/docs/melonjs/Polygon.html#toIso"},"NMFzh_cASRvDXwfiqklP2":{"uri":"/melonJS/docs/melonjs/Polygon.html#transform"},"BJeCHbflJ5ZqQGp0LCkb3":{"uri":"/melonJS/docs/melonjs/Polygon.html#translate"},"uGUNtbjEhSFU1FYrthOIv":{"uri":"/melonJS/docs/melonjs/Polygon.html#updateBounds"},"UVx18JTuGuxye3G7wBkzL":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html"},"8XsTQGwdj66duelRzdLeN":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#attributes"},"Bc5kclrKLQ__k6b9jQPzn":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#currentShader"},"r0_qdYNZbO6DO3bf8gyZn":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#defaultShader"},"ob5isEHINY3EyIFUiVEl_":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#mode"},"Nz_1uWVVxVddHyR-XcpwQ":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexByteSize"},"q6vSYj7rAySbycVZXVSmw":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexData"},"XKxMv2eQXBS3jSFMk8yh8":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexSize"},"KZrP9qG4WjYFYl4FkY4n3":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#addAttribute"},"FiRGZr08VPIoZYApW0Kh9":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#bind"},"-RHVv3r0AehPVfsUGV_sb":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#constructor"},"5WjKJE9y75WAHR64vR7jV":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#drawVertices"},"wUwH6ov74yb1mk0mLAwFB":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#flush"},"cQGza92-v0W_MDRYjods2":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#setProjection"},"MaEUWLgMPZmmaTlQ9GdOJ":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#useShader"},"QiBKQChbdhAO3tcfRgg-V":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html"},"WVxN24KX49nJg6NaY_iDZ":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#attributes"},"ylqQM7rF5d4clxKp3nMmO":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#currentShader"},"uYVee_Rg2MY5-PMt3eVhC":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#defaultShader"},"MUQinCsqBbCQiIp0R8vVu":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#mode"},"aPWNO_c_3L-EbD_dMW-ls":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexByteSize"},"dba0M1aT_nCz_5eiJeB6W":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexData"},"9OHP9okDZHtJmNkqQn5yW":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexSize"},"uL_5n5PbIAPrNx19ltqXB":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addAttribute"},"j_CiUWa_34E90ec3_GjpJ":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addQuad"},"Urwzrm-C7EutLyeJ7I4Su":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bind"},"k2FQZn8k61yqpEy6bagr_":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bindTexture2D"},"Rgl6f6O1WJQlhEfIm6jSH":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#constructor"},"w7Y0EEZhu0RG1ITPOO42U":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#createTexture2D"},"dLd63Qf7uRorsNtcQmkqf":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#deleteTexture2D"},"iCrFOYJrr_LGRbvegwbXg":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#flush"},"y3hmKF11uXbuPHIOdiUBi":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#getTexture2D"},"W-HwtEHv8E6kvcGD0gjmy":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#setProjection"},"S4IveElEkDlSfF5l_po5p":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#unbindTexture2D"},"JVhzfWNinYRnvBGpEaVmB":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#useShader"},"1OqBX4K2sGHyXnkEnEXhB":{"uri":"/melonJS/docs/melonjs/QuadTree.html"},"z8a1gIShiYeJm9hBcJAuL":{"uri":"/melonJS/docs/melonjs/QuadTree.html#clear"},"JmMmd6jOs2LV5AE4_08z0":{"uri":"/melonJS/docs/melonjs/QuadTree.html#constructor"},"97LCydHT4dTo93QT8TnW0":{"uri":"/melonJS/docs/melonjs/QuadTree.html#hasChildren"},"eerwx8GYucqXgsKo0dajN":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insert"},"qiZeOA5G8MMbtHoi3nWmk":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insertContainer"},"IuZajiHQV4sxr84OAWeTp":{"uri":"/melonJS/docs/melonjs/QuadTree.html#isPrunable"},"kdoJ_AlA_ElVmHwszspX3":{"uri":"/melonJS/docs/melonjs/QuadTree.html#remove"},"tA-_JbTq9WXn145fMZtd4":{"uri":"/melonJS/docs/melonjs/QuadTree.html#retrieve"},"BUfFABuM4yd9UEXhigHWC":{"uri":"/melonJS/docs/melonjs/Rect.html"},"Kh4wDzAFvtQzTBis7Edvg":{"uri":"/melonJS/docs/melonjs/Rect.html#bottom"},"jBI0NKkwFoDdLASPiX3Ul":{"uri":"/melonJS/docs/melonjs/Rect.html#centerX"},"hast5v9xTlnsl-ks4rSVM":{"uri":"/melonJS/docs/melonjs/Rect.html#centerY"},"RCJnlba437lUTcqZPFB2Q":{"uri":"/melonJS/docs/melonjs/Rect.html#height"},"0iIpqaSyiCD6tKEJOtWug":{"uri":"/melonJS/docs/melonjs/Rect.html#left"},"7r3XbFY3gIY4IGuPrBP4t":{"uri":"/melonJS/docs/melonjs/Rect.html#points"},"U1obQTNvOqZgMKE501ukj":{"uri":"/melonJS/docs/melonjs/Rect.html#pos"},"0PMAf-PSRK8DFaye5h193":{"uri":"/melonJS/docs/melonjs/Rect.html#right"},"6i2zKBrizvgFfkMyewSbe":{"uri":"/melonJS/docs/melonjs/Rect.html#top"},"bcRQznv2SbsPHwGKsn70S":{"uri":"/melonJS/docs/melonjs/Rect.html#type"},"S548xI-V9UxGpqvr5Q8bD":{"uri":"/melonJS/docs/melonjs/Rect.html#width"},"2xxcScX2H3pRYHXw7tj21":{"uri":"/melonJS/docs/melonjs/Rect.html#centerOn"},"S7SE8MdzAOTE9lLDp-P5j":{"uri":"/melonJS/docs/melonjs/Rect.html#clone"},"mi1mKKbyLMDqDAXe9oyz0":{"uri":"/melonJS/docs/melonjs/Rect.html#constructor"},"potzNnMqSovhPY4rKYj2m":{"uri":"/melonJS/docs/melonjs/Rect.html#contains"},"pAAMbTTvkiy5YVuqYbWaD":{"uri":"/melonJS/docs/melonjs/Rect.html#copy"},"9hTzldANTWPf2QfG3xHLR":{"uri":"/melonJS/docs/melonjs/Rect.html#equals"},"VMjKvbsvoAs4oAsTtUfOg":{"uri":"/melonJS/docs/melonjs/Rect.html#getBounds"},"UwKuh70UqM6fGfxjBZWN2":{"uri":"/melonJS/docs/melonjs/Rect.html#getIndices"},"4J6nxmPuLLvK3fov1N7NQ":{"uri":"/melonJS/docs/melonjs/Rect.html#isConvex"},"fpQrWcH4EfbqWrMP089aT":{"uri":"/melonJS/docs/melonjs/Rect.html#isFinite"},"aT4eKWZOt5KGK_37a_Kdm":{"uri":"/melonJS/docs/melonjs/Rect.html#overlaps"},"XVhOTF-8ELzeBAT97uKmG":{"uri":"/melonJS/docs/melonjs/Rect.html#recalc"},"5PB-aZ4qNrIVG1nbFtKjD":{"uri":"/melonJS/docs/melonjs/Rect.html#resize"},"_lw1CP6aoJ-SpjJnOPxA0":{"uri":"/melonJS/docs/melonjs/Rect.html#rotate"},"eUMKvYKwsfGmZontiAz4K":{"uri":"/melonJS/docs/melonjs/Rect.html#scale"},"y5GRyz3Dq4I3vxdz-3r-R":{"uri":"/melonJS/docs/melonjs/Rect.html#scaleV"},"0Tl73wxGcRo5Nbo9j6qBo":{"uri":"/melonJS/docs/melonjs/Rect.html#setShape"},"H0pQ7TfcM6XV66lIKB0cr":{"uri":"/melonJS/docs/melonjs/Rect.html#setVertices"},"FN38qy2R9Y9nLNtftZ20u":{"uri":"/melonJS/docs/melonjs/Rect.html#shift"},"UDQGJWRDUk1bNOgpPdArr":{"uri":"/melonJS/docs/melonjs/Rect.html#to2d"},"gaGW1AjmjPlnC1k0U9oDF":{"uri":"/melonJS/docs/melonjs/Rect.html#toIso"},"kWG--8xkT1CfGhB8tlCwc":{"uri":"/melonJS/docs/melonjs/Rect.html#toPolygon"},"ExXjS-ryBhkTpO5zqzu0e":{"uri":"/melonJS/docs/melonjs/Rect.html#transform"},"Wea1Zkev4wHR0dzvdqcP2":{"uri":"/melonJS/docs/melonjs/Rect.html#translate"},"rlkHY3klmnzkHbJ_29hmJ":{"uri":"/melonJS/docs/melonjs/Rect.html#union"},"5EpucVrhEl7sI7XV3WHJd":{"uri":"/melonJS/docs/melonjs/Rect.html#updateBounds"},"GQRLbG487C_GvPqNJwPkl":{"uri":"/melonJS/docs/melonjs/Renderable.html"},"barLi6KwKE3mXqLLrsfjk":{"uri":"/melonJS/docs/melonjs/Renderable.html#alpha"},"PkLba854_nbfpdAj08d5G":{"uri":"/melonJS/docs/melonjs/Renderable.html#alwaysUpdate"},"a98TRaVScOI-M17WVkt1A":{"uri":"/melonJS/docs/melonjs/Renderable.html#ancestor"},"nSECFoDXnPRdVp4mYZ6w4":{"uri":"/melonJS/docs/melonjs/Renderable.html#anchorPoint"},"EWJqBRxzfM5xRbHTccLF5":{"uri":"/melonJS/docs/melonjs/Renderable.html#autoTransform"},"-TC2bG3ND-OGPH6SGXqD6":{"uri":"/melonJS/docs/melonjs/Renderable.html#blendMode"},"aTGTHEI1julOMlMHiXw-M":{"uri":"/melonJS/docs/melonjs/Renderable.html#body"},"qpnu6qOEAFeHQTS2dU7R6":{"uri":"/melonJS/docs/melonjs/Renderable.html#bottom"},"I3oZR8qXEFzuI0jtTGQOG":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerX"},"5ZnFj_qY4jJhjae04rncN":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerY"},"iIgHHvcoa1uhi6DCTJ_Z-":{"uri":"/melonJS/docs/melonjs/Renderable.html#currentTransform"},"BoqFShiX5Lda3a2HSS5-F":{"uri":"/melonJS/docs/melonjs/Renderable.html#depth"},"H_OLMavlHY4kHm_zdV4Rm":{"uri":"/melonJS/docs/melonjs/Renderable.html#floating"},"-KHCT86OPTyJ6Rn2YL1JB":{"uri":"/melonJS/docs/melonjs/Renderable.html#GUID"},"wJXdzr5WQ0nQiIBOv-o5d":{"uri":"/melonJS/docs/melonjs/Renderable.html#height"},"-7hfN3v0VowFC5_9WUpir":{"uri":"/melonJS/docs/melonjs/Renderable.html#inViewport"},"Dd9G6Ty07WLwtSvMlI-2y":{"uri":"/melonJS/docs/melonjs/Renderable.html#isDirty"},"ImGgOADuYwmDDum7hIfw_":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedX"},"3TnJyQz4UaXDgVthTYpYt":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedY"},"B1ZJX9t3dSpxV19obbqGc":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFloating"},"ZIrseOXzewZM0EIgf6qG1":{"uri":"/melonJS/docs/melonjs/Renderable.html#isKinematic"},"0cYncgZ8HuqyleRiLdB1-":{"uri":"/melonJS/docs/melonjs/Renderable.html#isPersistent"},"Y-XrItK9Ek1ocnY4cJK6z":{"uri":"/melonJS/docs/melonjs/Renderable.html#left"},"w1pjXaMaO7KpxxYpHlSmu":{"uri":"/melonJS/docs/melonjs/Renderable.html#mask"},"1ZhNtWKMw07ZdKx_v5ebW":{"uri":"/melonJS/docs/melonjs/Renderable.html#name"},"KJ5uLXybWPR-Wi9B6w0lo":{"uri":"/melonJS/docs/melonjs/Renderable.html#onVisibilityChange"},"EBXlScUEYIKahpmTzIGbG":{"uri":"/melonJS/docs/melonjs/Renderable.html#parentApp"},"UaiYZT5EY5h15PpWQu7CY":{"uri":"/melonJS/docs/melonjs/Renderable.html#points"},"0ZSvxWrlHRteJd7CxCgHQ":{"uri":"/melonJS/docs/melonjs/Renderable.html#pos"},"nSBui8VbFkjYHKgsNEhy3":{"uri":"/melonJS/docs/melonjs/Renderable.html#right"},"yvRsIsj8FfkX74ojmkkSR":{"uri":"/melonJS/docs/melonjs/Renderable.html#shader"},"pTH4eoo4dCH-v-jVeLf48":{"uri":"/melonJS/docs/melonjs/Renderable.html#tint"},"wdyUUg1peN-BQ89lbhVpe":{"uri":"/melonJS/docs/melonjs/Renderable.html#top"},"ofudoAu2PVxmvuyfktrR4":{"uri":"/melonJS/docs/melonjs/Renderable.html#type"},"FCDwKriyitt_osy3gscFD":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateWhenPaused"},"oBchZDBswjv4TMa8c_BOs":{"uri":"/melonJS/docs/melonjs/Renderable.html#width"},"O3A7nJmhyBZKkSB9SqoeJ":{"uri":"/melonJS/docs/melonjs/Renderable.html#angleTo"},"21VH8IWgs_XTrx3nFZr24":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerOn"},"jv1qDN80jeH1lh1y36L2U":{"uri":"/melonJS/docs/melonjs/Renderable.html#clone"},"GENrxI4IH6SeRUnHUkzY0":{"uri":"/melonJS/docs/melonjs/Renderable.html#constructor"},"SV87XvZU5POOnKapgxxx7":{"uri":"/melonJS/docs/melonjs/Renderable.html#contains"},"l4Tc1rkfdADmnxS3cdYsM":{"uri":"/melonJS/docs/melonjs/Renderable.html#copy"},"wRXxg_ZRMbQL_luRvpOmy":{"uri":"/melonJS/docs/melonjs/Renderable.html#distanceTo"},"7gUDGiPzIRtgGCzESpVw6":{"uri":"/melonJS/docs/melonjs/Renderable.html#draw"},"4IlvkJ2OaC3yfjDDCEAKJ":{"uri":"/melonJS/docs/melonjs/Renderable.html#equals"},"YHAtHN58aEoizrCCi2_3V":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipX"},"ZvYuVuJid67MDgg2Xjl2C":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipY"},"YnnFUs1vaTEb9r0COj5N7":{"uri":"/melonJS/docs/melonjs/Renderable.html#getAbsolutePosition"},"o4fHUIywma4rnLHdJKoQG":{"uri":"/melonJS/docs/melonjs/Renderable.html#getBounds"},"eM76diuVuZOTpffmA7asW":{"uri":"/melonJS/docs/melonjs/Renderable.html#getIndices"},"118Ym8MroPjSy4aDW7zs4":{"uri":"/melonJS/docs/melonjs/Renderable.html#getOpacity"},"8txTl9Xxl8u-w0l1e7fNC":{"uri":"/melonJS/docs/melonjs/Renderable.html#isConvex"},"49s2IP6Q3yxx2RlAiqo33":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFinite"},"YNUgyIVANfkuZk6goPp3f":{"uri":"/melonJS/docs/melonjs/Renderable.html#lookAt"},"1_mB-yptNwN9nlYkrs-MF":{"uri":"/melonJS/docs/melonjs/Renderable.html#onCollision"},"Wy7QwQDHbwgNa1t65M6XZ":{"uri":"/melonJS/docs/melonjs/Renderable.html#onDestroyEvent"},"PgWlQOxRYu4cyT5vl0m-4":{"uri":"/melonJS/docs/melonjs/Renderable.html#overlaps"},"KRTKsQRgIP5SrR4tfBKE4":{"uri":"/melonJS/docs/melonjs/Renderable.html#postDraw"},"K8dPb6YiL9yFoZvcZ3Mrd":{"uri":"/melonJS/docs/melonjs/Renderable.html#preDraw"},"EygR_5FrkND6FyVU1CobM":{"uri":"/melonJS/docs/melonjs/Renderable.html#recalc"},"WY27DADDX01EXeVN874rd":{"uri":"/melonJS/docs/melonjs/Renderable.html#resize"},"77vsu5CwG8BbB3V18bXLq":{"uri":"/melonJS/docs/melonjs/Renderable.html#rotate"},"UvYqLJKPhfcKX0TBvNiS4":{"uri":"/melonJS/docs/melonjs/Renderable.html#scale"},"8LlDFoC2yIN-i0ZU89RhZ":{"uri":"/melonJS/docs/melonjs/Renderable.html#scaleV"},"9GwGE1KshLjE0zde3wst-":{"uri":"/melonJS/docs/melonjs/Renderable.html#setOpacity"},"QU-qs9nAoOEPqbwCvxeLa":{"uri":"/melonJS/docs/melonjs/Renderable.html#setShape"},"0lyYFbJBJzm2ss6AoScot":{"uri":"/melonJS/docs/melonjs/Renderable.html#setVertices"},"XbGvijfDcs5YEpHlgThPR":{"uri":"/melonJS/docs/melonjs/Renderable.html#shift"},"bwibIhTT7WxHPjqDRR6hI":{"uri":"/melonJS/docs/melonjs/Renderable.html#to2d"},"-CgVAH2kUpbNCODMy1yDU":{"uri":"/melonJS/docs/melonjs/Renderable.html#toIso"},"hQTw12jJHci9ktzOpP3lc":{"uri":"/melonJS/docs/melonjs/Renderable.html#toPolygon"},"wmijkYcm5c64xGfav8DUA":{"uri":"/melonJS/docs/melonjs/Renderable.html#transform"},"EmiGp8RrERiZxOrV5OON4":{"uri":"/melonJS/docs/melonjs/Renderable.html#translate"},"WqmU9MZbiFWTBrknAnCf-":{"uri":"/melonJS/docs/melonjs/Renderable.html#union"},"4ANAKIMV-ak9eEfbra942":{"uri":"/melonJS/docs/melonjs/Renderable.html#update"},"sQL83yAHFWqpiTTNH07Xr":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateBounds"},"kmMDLwC21-x4AzF8XbQh6":{"uri":"/melonJS/docs/melonjs/Renderable.html#onAnchorUpdate"},"102TbSVm9NT-U37_ER8Tj":{"uri":"/melonJS/docs/melonjs/Renderer.html"},"dzMrbpfg3LcBJbMN5dxte":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html"},"REfjtH8iNV3vV178-Xgcb":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html#constructor"},"FhD7CHDRR4frqxpGmG9I5":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html"},"b1grM9z02jX6JXI2LbEL_":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html#constructor"},"aF05-t6SExGPV6DHDn6Wl":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html"},"0CjiEgoPyz1xl_cFWVrCh":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html#constructor"},"wu43lPCLhKfOV0DYVCJII":{"uri":"/melonJS/docs/melonjs/Renderer.html#depthTest"},"ZjAdUyLO2RscmJ8wnYHnn":{"uri":"/melonJS/docs/melonjs/Renderer.html#designRatio"},"q6qo8qOpEoDeQG1v2n4Rv":{"uri":"/melonJS/docs/melonjs/Renderer.html#height"},"Dkq6yzNb2DDWRb2FuqFro":{"uri":"/melonJS/docs/melonjs/Renderer.html#isContextValid"},"lshT6Je5rvxawNNJs5iYX":{"uri":"/melonJS/docs/melonjs/Renderer.html#path2D"},"-49YUYLIsW5rZwA5K5dYF":{"uri":"/melonJS/docs/melonjs/Renderer.html#scaleRatio"},"h9meTPr7OxcATBvn5poRt":{"uri":"/melonJS/docs/melonjs/Renderer.html#settings"},"Hsbj2cv__FYK3NtJ0xlcV":{"uri":"/melonJS/docs/melonjs/Renderer.html#type"},"wgpX93jGN3qeqnZnoa7N4":{"uri":"/melonJS/docs/melonjs/Renderer.html#width"},"rySV0Cdu48QZbOiq6Dchw":{"uri":"/melonJS/docs/melonjs/Renderer.html#clear"},"7UnXygJOt3SjV_A2RjBI-":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearMask"},"5-fgRRFxREq6Iks6XJGrX":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearTint"},"h60Okl7LSQRuuYDAJnaMf":{"uri":"/melonJS/docs/melonjs/Renderer.html#constructor"},"JReVFSYy9D98CDN9NQH-E":{"uri":"/melonJS/docs/melonjs/Renderer.html#fill"},"gCY40JrXQhcJyFbC5k6ii":{"uri":"/melonJS/docs/melonjs/Renderer.html#flush"},"_mGpCilnzikNrO2gUp6uw":{"uri":"/melonJS/docs/melonjs/Renderer.html#getBlendMode"},"m9TJGpH6yYSxBQjEnfSjX":{"uri":"/melonJS/docs/melonjs/Renderer.html#getCanvas"},"xo8ams0hewQnLdtoVeE0p":{"uri":"/melonJS/docs/melonjs/Renderer.html#getColor"},"XPX80KrWIBOe93OYaMDNi":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext"},"xkMpmdTbPE7CroiVSvbYU":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext2d"},"P8ckmiEJQWEMh3-1ZpwZj":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenCanvas"},"knylrANs6YPQaTAGt1ekk":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenContext"},"flpPyd_VCv2wIcR_EdYTW":{"uri":"/melonJS/docs/melonjs/Renderer.html#globalAlpha"},"Ul8ScKjVBePfK6J12auxm":{"uri":"/melonJS/docs/melonjs/Renderer.html#overlaps"},"bRI7BrQzsV9yCMB7E48CF":{"uri":"/melonJS/docs/melonjs/Renderer.html#reset"},"Caeha2zsI776YACbQwk8D":{"uri":"/melonJS/docs/melonjs/Renderer.html#resize"},"g6C1Ff7tbtD6SwQDl5RPG":{"uri":"/melonJS/docs/melonjs/Renderer.html#setAntiAlias"},"M_ME83tRSbAqLJzQnQA_8":{"uri":"/melonJS/docs/melonjs/Renderer.html#setMask"},"299pCiNNtbiYUN98pmgBv":{"uri":"/melonJS/docs/melonjs/Renderer.html#setProjection"},"Wppk_cco6yoUCBrVNiifd":{"uri":"/melonJS/docs/melonjs/Renderer.html#setTint"},"PchUZOp7929oiNot0a11K":{"uri":"/melonJS/docs/melonjs/Renderer.html#stroke"},"6SzNCfARGLrHDytjX0rkW":{"uri":"/melonJS/docs/melonjs/Renderer.html#tint"},"t4dzVAm0MyLeiD2nQrbfk":{"uri":"/melonJS/docs/melonjs/Renderer.html#toBlob"},"GrDoedF8nYcL24bmGqJwY":{"uri":"/melonJS/docs/melonjs/Renderer.html#toDataURL"},"EsUFBCmtfNXzK6L6s-Wyu":{"uri":"/melonJS/docs/melonjs/Renderer.html#toImageBitmap"},"xu-3cUaJWmnxzYiiSe5JI":{"uri":"/melonJS/docs/melonjs/ResponseObject.html"},"_Cgc9pTSfQgyhC_hufBRF":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#a"},"56VASVG1BANE6jWCfRtXx":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#aInB"},"v1-0k0-BXhqJJy-oQZKgh":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#b"},"WqHRVBhw8jkI4hh6OezS-":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#bInA"},"eVhxFqXihhIQFwXKNjXqD":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeA"},"-h3-eTXfXlmVMp8US_zPX":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeB"},"knL6hlc9c8duuAYzWghXU":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlap"},"RtJhiAUZlDe5xWzN9Q1fG":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapN"},"JzdKf08PI3AahqoQerGZJ":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapV"},"m5W9VEkq_QaTYZhRI4V85":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#clear"},"w6bhj_y1mxtutlqasedJe":{"uri":"/melonJS/docs/melonjs/RoundRect.html"},"S-lBf4-1FP7ju4IFZB4dr":{"uri":"/melonJS/docs/melonjs/RoundRect.html#bottom"},"4PXkz65rLRncTHoRq2pjk":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerX"},"whPrixm1kv5p5tKtFtk4S":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerY"},"ouxkwd6S2889oyqTH2MN2":{"uri":"/melonJS/docs/melonjs/RoundRect.html#height"},"VLc4Yth3DBhz6I46U1ADA":{"uri":"/melonJS/docs/melonjs/RoundRect.html#left"},"-e1uRg5UcIzxPjd3gF5FQ":{"uri":"/melonJS/docs/melonjs/RoundRect.html#points"},"DA3Vb-J2fzRaIwd6nBsxY":{"uri":"/melonJS/docs/melonjs/RoundRect.html#pos"},"m6gQjXQRLv8Ch1TlHrJot":{"uri":"/melonJS/docs/melonjs/RoundRect.html#radius"},"5vLFhpfHJv7W1i4JtpAu6":{"uri":"/melonJS/docs/melonjs/RoundRect.html#right"},"XGClWmDT73Soa5aIbZs5q":{"uri":"/melonJS/docs/melonjs/RoundRect.html#top"},"QLQ8ipwd28j5qIytiRxtZ":{"uri":"/melonJS/docs/melonjs/RoundRect.html#type"},"xWZFQRj68RWpbR5FhTjXg":{"uri":"/melonJS/docs/melonjs/RoundRect.html#width"},"l9IBO8jAic2n2g4cZdq5Z":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerOn"},"b6oG2sizZsWwegsqab8Vu":{"uri":"/melonJS/docs/melonjs/RoundRect.html#clone"},"L8Uv-BRSpz-lpJzn3kBX9":{"uri":"/melonJS/docs/melonjs/RoundRect.html#constructor"},"mnQlZLV3g1SLGKsDmEFQz":{"uri":"/melonJS/docs/melonjs/RoundRect.html#contains"},"2sDkIzQBUGDF7ajqsoLTa":{"uri":"/melonJS/docs/melonjs/RoundRect.html#copy"},"8gOq_0pPVrfZP8G0gukuR":{"uri":"/melonJS/docs/melonjs/RoundRect.html#equals"},"Zdr5ENmtg4hz7s4G0zXy0":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getBounds"},"WSdLyQeV_aakrxmvd8nZo":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getIndices"},"x46CXQVC89sdhx-E7CsC5":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isConvex"},"ThBRRAYhalzKsYVHbeKbA":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isFinite"},"qBHWw9H1S9rVz_bGCegfC":{"uri":"/melonJS/docs/melonjs/RoundRect.html#overlaps"},"m_nYnTKN479yBwhiARJAk":{"uri":"/melonJS/docs/melonjs/RoundRect.html#recalc"},"IykH_Tm6ekHYWKFIg7AuT":{"uri":"/melonJS/docs/melonjs/RoundRect.html#resize"},"X6JC8Sndfzv4zSvnQxLXT":{"uri":"/melonJS/docs/melonjs/RoundRect.html#rotate"},"ViyfMYx4YxWYPBD6W0tkx":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scale"},"FvqfdwAFf2Bqg6WCy4RDL":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scaleV"},"ss3D1TD7qgx2y8C24FOPb":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setShape"},"0B9cicRCv9YtZpLUimdl0":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setVertices"},"8B0ySIvTCBl0Z6UGerWav":{"uri":"/melonJS/docs/melonjs/RoundRect.html#shift"},"oL8dHHEzWeweOJ4-199at":{"uri":"/melonJS/docs/melonjs/RoundRect.html#to2d"},"WvpEc9HlMOH06ibNz4RPu":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toIso"},"VzFAelZu88VBUX0lyzjOY":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toPolygon"},"4Dpr5U7eTGvkLTEnVgMkw":{"uri":"/melonJS/docs/melonjs/RoundRect.html#transform"},"4nDpYveFK8fvzKBEddOT_":{"uri":"/melonJS/docs/melonjs/RoundRect.html#translate"},"7ip3RT7529v7yh8nI0ZAt":{"uri":"/melonJS/docs/melonjs/RoundRect.html#union"},"aCbDyeECve-Ne4Q8Gu1OG":{"uri":"/melonJS/docs/melonjs/RoundRect.html#updateBounds"},"oZasI-NS2HQ2DKmCvicLs":{"uri":"/melonJS/docs/melonjs/Sprite.html"},"SE-lgl5kVwNYzV2lMni6N":{"uri":"/melonJS/docs/melonjs/Sprite.html#alpha"},"DwYgAVhy4lJXKpQgMhbeQ":{"uri":"/melonJS/docs/melonjs/Sprite.html#alwaysUpdate"},"xOpN-iH-LGn9LfIUdBLOd":{"uri":"/melonJS/docs/melonjs/Sprite.html#ancestor"},"0F3SNzngXk8YloCkYgBQq":{"uri":"/melonJS/docs/melonjs/Sprite.html#anchorPoint"},"xcSvEsaYS1afIXq9y-P8W":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationpause"},"AkCl9L-0s6mY60bMiqDpn":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationspeed"},"y1ZieqPaipefnPLfSWoWy":{"uri":"/melonJS/docs/melonjs/Sprite.html#autoTransform"},"W0wUXnL_qt8m-W0LFqa01":{"uri":"/melonJS/docs/melonjs/Sprite.html#blendMode"},"4GI_Tx4oiDXAkuBb1LK-T":{"uri":"/melonJS/docs/melonjs/Sprite.html#body"},"buJJCbHoqUZDZHBrc7DiQ":{"uri":"/melonJS/docs/melonjs/Sprite.html#bottom"},"6qca53CSinrhzgfrraRIx":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerX"},"-avAYigJf6eN6l2y4Yu3h":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerY"},"9e_2oAm38f8WhudqpoojS":{"uri":"/melonJS/docs/melonjs/Sprite.html#currentTransform"},"wu1TnM8NyYYicfqkj_V4h":{"uri":"/melonJS/docs/melonjs/Sprite.html#depth"},"tbaA7rb3AcruLqjC5KaL5":{"uri":"/melonJS/docs/melonjs/Sprite.html#floating"},"z1RJdZZt7JbffMzcq58zJ":{"uri":"/melonJS/docs/melonjs/Sprite.html#GUID"},"-Tfu79LYdGVbRlZtxA5_w":{"uri":"/melonJS/docs/melonjs/Sprite.html#height"},"XV-CUDhdaPh8N3Fzaf1cC":{"uri":"/melonJS/docs/melonjs/Sprite.html#inViewport"},"1unEmeKmpUltNW5_o7tL1":{"uri":"/melonJS/docs/melonjs/Sprite.html#isDirty"},"Dquhrr37qdtSYQnzIjJmM":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedX"},"ojSOrn82lnEh4lcCCNwDf":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedY"},"2_9SvYRqXbntGLTAtvF7n":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFloating"},"T_SC5sEnXrf_I980da7Kf":{"uri":"/melonJS/docs/melonjs/Sprite.html#isKinematic"},"2I9iSddAWzD93Llx5_L4w":{"uri":"/melonJS/docs/melonjs/Sprite.html#isPersistent"},"uJO3YZKtoSOxA_HEWA0Vr":{"uri":"/melonJS/docs/melonjs/Sprite.html#isVideo"},"5bHu1_NPsfJrQNJG-eFHj":{"uri":"/melonJS/docs/melonjs/Sprite.html#left"},"kiy-g7kdM-ucC692-o08I":{"uri":"/melonJS/docs/melonjs/Sprite.html#mask"},"1TvkcOt8NW-FwypgulPys":{"uri":"/melonJS/docs/melonjs/Sprite.html#name"},"OlUdq8kGiQi1c5505fWAo":{"uri":"/melonJS/docs/melonjs/Sprite.html#offset"},"qXca_x9Br5PWMFwOthk5z":{"uri":"/melonJS/docs/melonjs/Sprite.html#onVisibilityChange"},"i1Ei7vVaP-u0qoUFRitan":{"uri":"/melonJS/docs/melonjs/Sprite.html#parentApp"},"gAriG4v_mK-YxWIURwr5p":{"uri":"/melonJS/docs/melonjs/Sprite.html#points"},"ce5HLe1scKlChu2QH30sj":{"uri":"/melonJS/docs/melonjs/Sprite.html#pos"},"AucAjOGJbsSjl0ZuV1fr-":{"uri":"/melonJS/docs/melonjs/Sprite.html#right"},"F48zxqwLIm4KRVMMuQnuh":{"uri":"/melonJS/docs/melonjs/Sprite.html#shader"},"TpZ8-2uBG2ABy_k0Nld8d":{"uri":"/melonJS/docs/melonjs/Sprite.html#source"},"zj7TW0eA-0FVgiaVcdQMc":{"uri":"/melonJS/docs/melonjs/Sprite.html#tint"},"jhFvoPuS_ZHgz--eB0n4-":{"uri":"/melonJS/docs/melonjs/Sprite.html#top"},"V1E4nYlIdnMcF5Ir9y6sY":{"uri":"/melonJS/docs/melonjs/Sprite.html#type"},"J0IVai2VcZZffo9qSGZ10":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateWhenPaused"},"J_hbak_x4Ba_jWh2UWovo":{"uri":"/melonJS/docs/melonjs/Sprite.html#width"},"UrgB08066ZpSr5t0Uulxw":{"uri":"/melonJS/docs/melonjs/Sprite.html#addAnimation"},"F80c_uCuMBTRQzo23gDG3":{"uri":"/melonJS/docs/melonjs/Sprite.html#angleTo"},"5-tFOcXSdFGRSQnj3e4SR":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerOn"},"i8l_GXHXP073QsHGpVoG5":{"uri":"/melonJS/docs/melonjs/Sprite.html#clone"},"kplfymi8jnRwwxJDWw46n":{"uri":"/melonJS/docs/melonjs/Sprite.html#constructor"},"5dJme0b6haACBmU9PIocC":{"uri":"/melonJS/docs/melonjs/Sprite.html#contains"},"DXyU-NVD087rCcGVoANLi":{"uri":"/melonJS/docs/melonjs/Sprite.html#copy"},"5XoHdneXgU_DG8SH5mr2j":{"uri":"/melonJS/docs/melonjs/Sprite.html#distanceTo"},"GysUHM0S3MX6w-evl0l05":{"uri":"/melonJS/docs/melonjs/Sprite.html#equals"},"LZav6e2lI-E5nLHpO4agL":{"uri":"/melonJS/docs/melonjs/Sprite.html#flicker"},"UrUzNi3RSpV-79eZSuzCK":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipX"},"GDq7209tljMCSwC2-5pE8":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipY"},"NbFHgaCNZJkEb8KAIkoRq":{"uri":"/melonJS/docs/melonjs/Sprite.html#getAbsolutePosition"},"yiDVg3F8-o7JdRzdo-cys":{"uri":"/melonJS/docs/melonjs/Sprite.html#getBounds"},"xnpNHErxPQ4ai_dUtvtmE":{"uri":"/melonJS/docs/melonjs/Sprite.html#getCurrentAnimationFrame"},"OmZxWLAaCraOAKCGn3S18":{"uri":"/melonJS/docs/melonjs/Sprite.html#getIndices"},"Knp83rc0zDQxG3sIjhHsU":{"uri":"/melonJS/docs/melonjs/Sprite.html#getOpacity"},"QrlZdqEkyqRqRPazKfA8O":{"uri":"/melonJS/docs/melonjs/Sprite.html#isConvex"},"-ac8hXm6bpxNTTDhgVGUC":{"uri":"/melonJS/docs/melonjs/Sprite.html#isCurrentAnimation"},"RnOa4iTjSldKsYiWqseKS":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFinite"},"Q_fNUMVNk21DakDjIF3wX":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlickering"},"VK9FbvgmjX2sZytDUP7Oi":{"uri":"/melonJS/docs/melonjs/Sprite.html#lookAt"},"JhTfMLIn6nporjaMlH-s3":{"uri":"/melonJS/docs/melonjs/Sprite.html#onCollision"},"XxNAal11VjogU1VvyzMC6":{"uri":"/melonJS/docs/melonjs/Sprite.html#onDestroyEvent"},"PsrCH-sg32QiVwSmcJeuT":{"uri":"/melonJS/docs/melonjs/Sprite.html#overlaps"},"8kC3LO9qid2HApoPTMvoj":{"uri":"/melonJS/docs/melonjs/Sprite.html#pause"},"eB6cFE_So3tBukE60dABE":{"uri":"/melonJS/docs/melonjs/Sprite.html#play"},"lxn4x5DB5wuaW8N221jrS":{"uri":"/melonJS/docs/melonjs/Sprite.html#postDraw"},"eQ2dNBcWY9DuEHJPuRiad":{"uri":"/melonJS/docs/melonjs/Sprite.html#preDraw"},"Vtzlct_QZnvS84UkMvram":{"uri":"/melonJS/docs/melonjs/Sprite.html#recalc"},"8_D7960-cV5YEu1Qbdayo":{"uri":"/melonJS/docs/melonjs/Sprite.html#resize"},"GkLgOmfQH8JPAg-dOEAN6":{"uri":"/melonJS/docs/melonjs/Sprite.html#reverseAnimation"},"an_vDEw7IAkuCVCGjxa02":{"uri":"/melonJS/docs/melonjs/Sprite.html#rotate"},"468PGEwd_TKdPz3EiOlTd":{"uri":"/melonJS/docs/melonjs/Sprite.html#scale"},"wRnOyubhvmCeqoc7gC7aF":{"uri":"/melonJS/docs/melonjs/Sprite.html#scaleV"},"9jLleT1XPc1Nipvtda2fy":{"uri":"/melonJS/docs/melonjs/Sprite.html#setAnimationFrame"},"bFckYDwHEhgUFLKfoAW4w":{"uri":"/melonJS/docs/melonjs/Sprite.html#setCurrentAnimation"},"jk7mTWP0b6SXB5wfxOc96":{"uri":"/melonJS/docs/melonjs/Sprite.html#setOpacity"},"mQmNXlRI43ZUtGw6CJF1Y":{"uri":"/melonJS/docs/melonjs/Sprite.html#setRegion"},"tafNEE630A2VRXL4smxKn":{"uri":"/melonJS/docs/melonjs/Sprite.html#setShape"},"1kydoqrmEYRg3x6bad3j-":{"uri":"/melonJS/docs/melonjs/Sprite.html#setVertices"},"fYV5_fLzM5pjayMVZ7D2c":{"uri":"/melonJS/docs/melonjs/Sprite.html#shift"},"EiiXIDqhUVl5nrgVaW62i":{"uri":"/melonJS/docs/melonjs/Sprite.html#to2d"},"uHtj-1fY4hJIwQgLnmp2_":{"uri":"/melonJS/docs/melonjs/Sprite.html#toIso"},"lp4Rclkxl4wf4o88htnKC":{"uri":"/melonJS/docs/melonjs/Sprite.html#toPolygon"},"jNKv7y5z8HUuwDvADThyX":{"uri":"/melonJS/docs/melonjs/Sprite.html#transform"},"U_N99QMb9IZjymBZXuAk1":{"uri":"/melonJS/docs/melonjs/Sprite.html#translate"},"0wvy7mRvrTgBSnq_X30MT":{"uri":"/melonJS/docs/melonjs/Sprite.html#union"},"5pWOOHGIx1auNenHoKTpn":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateBounds"},"syJoULQ-_qVXSlnLDcc2J":{"uri":"/melonJS/docs/melonjs/Sprite.html#draw"},"n4DuxiDhmtSflb9O3Vj6k":{"uri":"/melonJS/docs/melonjs/Sprite.html#update"},"5KaWT7vfvs36vyaVNhPqy":{"uri":"/melonJS/docs/melonjs/Sprite.html#onAnchorUpdate"},"2iT-Ox-Im9LYAbuwJDDL7":{"uri":"/melonJS/docs/melonjs/Stage.html"},"8H93miZL6cqGC_CQ4OpxI":{"uri":"/melonJS/docs/melonjs/Stage.html#ambientLight"},"IU3g2ns4oW2prCG-LWXjV":{"uri":"/melonJS/docs/melonjs/Stage.html#cameras"},"1u0v9FIMzo9KpDU3iozbN":{"uri":"/melonJS/docs/melonjs/Stage.html#lights"},"w1fIhdWvtBgopJyQ7lnTx":{"uri":"/melonJS/docs/melonjs/Stage.html#settings"},"HXmjZk3J4LRimbOd8OSr8":{"uri":"/melonJS/docs/melonjs/Stage.html#constructor"},"Tqon9vE3dTrqSBAJ1PUa9":{"uri":"/melonJS/docs/melonjs/Stage.html#onDestroyEvent"},"K1hEp0idaWg_B8344atHn":{"uri":"/melonJS/docs/melonjs/Stage.html#onResetEvent"},"hbXE-EL8SonTg43djqGLK":{"uri":"/melonJS/docs/melonjs/Text.html"},"h52GjTwXl0BmA7STzLs3l":{"uri":"/melonJS/docs/melonjs/Text.html#alpha"},"NmDbRuTOOmyZCNwcWzZzP":{"uri":"/melonJS/docs/melonjs/Text.html#alwaysUpdate"},"o9i5aN8eqrtr5vJN-jyAn":{"uri":"/melonJS/docs/melonjs/Text.html#ancestor"},"xP6LpFsk3L0iXjvHHFCs5":{"uri":"/melonJS/docs/melonjs/Text.html#anchorPoint"},"Ub1vLpFQq63vN7dDK7ZwS":{"uri":"/melonJS/docs/melonjs/Text.html#autoTransform"},"rwlVTTZUG7vQzeVtXcWdo":{"uri":"/melonJS/docs/melonjs/Text.html#blendMode"},"WTu_lVn03z1BfCh09wpNW":{"uri":"/melonJS/docs/melonjs/Text.html#body"},"YZotUExjXZvt4AI759EG_":{"uri":"/melonJS/docs/melonjs/Text.html#bottom"},"9T7ntNPKM00kyw_qjzmv-":{"uri":"/melonJS/docs/melonjs/Text.html#centerX"},"VfNOeikT7Z0gv12WMuTOE":{"uri":"/melonJS/docs/melonjs/Text.html#centerY"},"Hi_os9BHtILXANxulff_U":{"uri":"/melonJS/docs/melonjs/Text.html#currentTransform"},"zqpj0kfP-aBiYK0aetrfr":{"uri":"/melonJS/docs/melonjs/Text.html#depth"},"opfwtZJpdInydWZp7lYbJ":{"uri":"/melonJS/docs/melonjs/Text.html#fillStyle"},"qBOicqNcrO9AXcY6mzmVV":{"uri":"/melonJS/docs/melonjs/Text.html#floating"},"vHUBAhqpVV3bAtaqWIYZ1":{"uri":"/melonJS/docs/melonjs/Text.html#fontSize"},"Ym1esUBScHRCnmbC_FYPA":{"uri":"/melonJS/docs/melonjs/Text.html#GUID"},"6-rdK6lJwxGRQRLMv-vGV":{"uri":"/melonJS/docs/melonjs/Text.html#height"},"dXwHObsuYt447sUzJOYAh":{"uri":"/melonJS/docs/melonjs/Text.html#inViewport"},"9gcvhYWLtpi8ZlFajf0p5":{"uri":"/melonJS/docs/melonjs/Text.html#isDirty"},"wEG5mSZLYUsKaqqELYVIp":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedX"},"PbwaC2pQBFAOkTErflbVr":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedY"},"4OUynV0eeJCJeaViWh9tR":{"uri":"/melonJS/docs/melonjs/Text.html#isFloating"},"_s-ghjtjbJ6jPDfskg6N2":{"uri":"/melonJS/docs/melonjs/Text.html#isKinematic"},"XkvbmgOQGKstYDl9ynjiq":{"uri":"/melonJS/docs/melonjs/Text.html#isPersistent"},"iaPDNyWvCYOicnffHwvZl":{"uri":"/melonJS/docs/melonjs/Text.html#left"},"JXrgLXlJzgJdlsQ1VlPYp":{"uri":"/melonJS/docs/melonjs/Text.html#lineHeight"},"HgGhVIF0qHZorXhdzRbmF":{"uri":"/melonJS/docs/melonjs/Text.html#lineWidth"},"ddCN37ZmZ_Dnt-6PTN7G-":{"uri":"/melonJS/docs/melonjs/Text.html#mask"},"dhxweD7fU2MhzVkdPdusU":{"uri":"/melonJS/docs/melonjs/Text.html#name"},"1WFM6GHjLguM7SJCb0vPG":{"uri":"/melonJS/docs/melonjs/Text.html#onVisibilityChange"},"TWh9yN4rSSShtUsobKoDd":{"uri":"/melonJS/docs/melonjs/Text.html#parentApp"},"Sk-qIEHtH3RaJov6ZKK7x":{"uri":"/melonJS/docs/melonjs/Text.html#points"},"Tyu9HDeRIyTDmYqCHBIfG":{"uri":"/melonJS/docs/melonjs/Text.html#pos"},"yLQu3ixeARkB0h97apzae":{"uri":"/melonJS/docs/melonjs/Text.html#right"},"ARbE60Tyq7yfQ15TpON_i":{"uri":"/melonJS/docs/melonjs/Text.html#shader"},"pchkKP3N4Gwfp_B5VKlaH":{"uri":"/melonJS/docs/melonjs/Text.html#strokeStyle"},"9MRap2Q-PS0nFbox3lCES":{"uri":"/melonJS/docs/melonjs/Text.html#textAlign"},"XwjUbG1bO3eRWpj-ieno3":{"uri":"/melonJS/docs/melonjs/Text.html#textBaseline"},"rwYqoipDFRy6JLrj6ou9R":{"uri":"/melonJS/docs/melonjs/Text.html#tint"},"FY__4fEvBStcfahVcYE1n":{"uri":"/melonJS/docs/melonjs/Text.html#top"},"nps8X2Wn9nxIt9cT6lMSV":{"uri":"/melonJS/docs/melonjs/Text.html#type"},"wfzXJ-yUOebryTElCpOoo":{"uri":"/melonJS/docs/melonjs/Text.html#updateWhenPaused"},"i1AfKDyEv8xg7ENUiEFVc":{"uri":"/melonJS/docs/melonjs/Text.html#width"},"X52F2rj23U1np9S97hdGE":{"uri":"/melonJS/docs/melonjs/Text.html#wordWrapWidth"},"D1J4oEnmnN8e6pNqLiItI":{"uri":"/melonJS/docs/melonjs/Text.html#_text"},"YvA341M_4KktAcJ0Oagvc":{"uri":"/melonJS/docs/melonjs/Text.html#angleTo"},"7FUXnlBc2hP7i3w6uQqiX":{"uri":"/melonJS/docs/melonjs/Text.html#bold"},"IlhLbvIxcnnmYwPTVjuOl":{"uri":"/melonJS/docs/melonjs/Text.html#centerOn"},"WqZwYTGENF2WiogB4QOX8":{"uri":"/melonJS/docs/melonjs/Text.html#clone"},"RlyyhUwzDMOKm-JzT4XKC":{"uri":"/melonJS/docs/melonjs/Text.html#constructor"},"ZWiifXfe81Q2c9TlOScUF":{"uri":"/melonJS/docs/melonjs/Text.html#contains"},"I6AIii3QHUitZimL9dsbh":{"uri":"/melonJS/docs/melonjs/Text.html#copy"},"3ULL8hk9NIkMSOfEqm_W1":{"uri":"/melonJS/docs/melonjs/Text.html#distanceTo"},"LRh0GmJI2SPXh4Ots5Z88":{"uri":"/melonJS/docs/melonjs/Text.html#draw"},"nm2XXC3tHWTJdUmZV64sP":{"uri":"/melonJS/docs/melonjs/Text.html#drawStroke"},"BZ0qkc19mNNALBAtfXVAV":{"uri":"/melonJS/docs/melonjs/Text.html#equals"},"cXLRHXZ0bnPLJSNBCUrqV":{"uri":"/melonJS/docs/melonjs/Text.html#flipX"},"lU-L7KLrCMvka7kVVGaFP":{"uri":"/melonJS/docs/melonjs/Text.html#flipY"},"ShyzJlp_ppQT_VW_Jx_pI":{"uri":"/melonJS/docs/melonjs/Text.html#getAbsolutePosition"},"gXcjO46vxixoCnIcpBzeI":{"uri":"/melonJS/docs/melonjs/Text.html#getBounds"},"D6ecp1fRNs397bTPduLXy":{"uri":"/melonJS/docs/melonjs/Text.html#getIndices"},"Jx8V02sfG_O1iG4S3cERy":{"uri":"/melonJS/docs/melonjs/Text.html#getOpacity"},"4iT6QrnwhZ9DSLS3HaD2z":{"uri":"/melonJS/docs/melonjs/Text.html#isConvex"},"U8dmAR8srz7djIrMrysSF":{"uri":"/melonJS/docs/melonjs/Text.html#isFinite"},"JMDaWWhDfG2fuLWLxXZdD":{"uri":"/melonJS/docs/melonjs/Text.html#italic"},"Y8z4cOfYpYZwytmeeANVn":{"uri":"/melonJS/docs/melonjs/Text.html#lookAt"},"g5JRQpbJpQDvtUe02LNHE":{"uri":"/melonJS/docs/melonjs/Text.html#measureText"},"TBnZrztxUaa77v2Qc7pZm":{"uri":"/melonJS/docs/melonjs/Text.html#onCollision"},"0mSLUOstSciExkHk0dt1l":{"uri":"/melonJS/docs/melonjs/Text.html#onDestroyEvent"},"nA22WNh75S_V7VVPiCZpe":{"uri":"/melonJS/docs/melonjs/Text.html#overlaps"},"H5ZhI7l4-E0EWTGubnIfL":{"uri":"/melonJS/docs/melonjs/Text.html#postDraw"},"u1scPk2ZSDV65SXsM68Sq":{"uri":"/melonJS/docs/melonjs/Text.html#preDraw"},"gq1kcmCyIVUOTGL0usvpX":{"uri":"/melonJS/docs/melonjs/Text.html#recalc"},"DiUrJaNEN8JW8_VFa-wD9":{"uri":"/melonJS/docs/melonjs/Text.html#resize"},"Xr8DRVx_fToDM0eWVqB8_":{"uri":"/melonJS/docs/melonjs/Text.html#rotate"},"b9Jt4HKhES-uxR3TOhbod":{"uri":"/melonJS/docs/melonjs/Text.html#scale"},"wDGsRSLPbDUiPsAqjMMnS":{"uri":"/melonJS/docs/melonjs/Text.html#scaleV"},"eN7bV2cbgD2sx2LU4pMcj":{"uri":"/melonJS/docs/melonjs/Text.html#setFont"},"opdtY2Jv7qrVELnEhPTrD":{"uri":"/melonJS/docs/melonjs/Text.html#setOpacity"},"W8_Yar4tf8oaPJBuu6Z1l":{"uri":"/melonJS/docs/melonjs/Text.html#setShape"},"n08VWMkDNbKDIxh7XUi68":{"uri":"/melonJS/docs/melonjs/Text.html#setText"},"MSt9c5muDNBfaZkcwUuGv":{"uri":"/melonJS/docs/melonjs/Text.html#setVertices"},"sB0LjnlMibs1nPqVQV8jm":{"uri":"/melonJS/docs/melonjs/Text.html#shift"},"3nb-DvsXr9hlD-v1wZY6w":{"uri":"/melonJS/docs/melonjs/Text.html#to2d"},"8Bt-WHOPA4-wldJl-nEZ-":{"uri":"/melonJS/docs/melonjs/Text.html#toIso"},"0pU6cVUZ56-2pZpdIqEfG":{"uri":"/melonJS/docs/melonjs/Text.html#toPolygon"},"dg-Cu0KgNgs_vO9KCVGx5":{"uri":"/melonJS/docs/melonjs/Text.html#transform"},"q5SEONamQZ_gzzobCX-hk":{"uri":"/melonJS/docs/melonjs/Text.html#translate"},"54aZ6F6m7awjtqTEG7uRg":{"uri":"/melonJS/docs/melonjs/Text.html#union"},"XPFV7pP4rLzNff6KegmPs":{"uri":"/melonJS/docs/melonjs/Text.html#update"},"X6_T0rCS4cOXGWdfov6oa":{"uri":"/melonJS/docs/melonjs/Text.html#updateBounds"},"gWiJ18gJZoKIzR6gWxF1F":{"uri":"/melonJS/docs/melonjs/Text.html#onAnchorUpdate"},"r_Nemp_27VOMwfvzphP0u":{"uri":"/melonJS/docs/melonjs/TextMetrics.html"},"ZiP3ibI6GoCJ3w0kAu4fV":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#ancestor"},"eSd0WkPPh6V138Ld3cDEI":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#bottom"},"FeepkA6Uj08EXgKxICtcG":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#center"},"1fa6IB0grnWt90F9qX0eP":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerX"},"-HEtnbD-zZeQuFMvgMV8x":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerY"},"KiPtXNJOsZAIWWshWzYMR":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#height"},"5MzQZCwnNBrbiy3WcFWXk":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#left"},"LalZ_RXvRJC3RJXCbpPyH":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#right"},"j1AFxW3whu1G7WqZG3kCU":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#top"},"p8FhJnUHSgrsJcVF3Uhhf":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#type"},"HWlDzYuUMD7W53WJxWF3t":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#width"},"KyXRKU0I-p-IM5iCdDWB4":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#x"},"C53P5HophTUiwdu50zyEG":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#y"},"Nley3Z3Hgzzjj_JSImjM2":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#add"},"Nl94tPMBkC0yMc8iLh6Pl":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addBounds"},"Ajm23xuxOaq9AXnUouMsJ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addFrame"},"MOjnWXRm4fSFH86s2tGKr":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addPoint"},"7oGe2EmkiVeZPt7Z4-Nwp":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerOn"},"Q_TzK2DZYvvTFd10qwA20":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clear"},"goor4bA038aW9TQ3Mcyoc":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clone"},"Ovb9Q8pCqx78-0qbqZt51":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#constructor"},"NtL3NhReO54KOw-ia5SuK":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#contains"},"8SWqS--A5W666sf1WsTGl":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#isFinite"},"rWFVVOEgHgW3LAgBw4v11":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineHeight"},"Rou6Wk67SDHkIrs_7a-of":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineWidth"},"s_n3yR-rUeK1QpwnDHSJz":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#measureText"},"Wl1SG5FpBzKcGwzu4o8nW":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#overlaps"},"Vo1GLn57TbFfGevFYZiF5":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#setMinMax"},"-maNc76AC1UQAkigumv25":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#shift"},"bP1FWy6CG6Nrnvw5TB-sJ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#toPolygon"},"2_rABw1KWk8HW2tG266-X":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#translate"},"e5ZboH1W5FdQEnLUGtE9k":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#update"},"IRhgjNgSyvgQG6SWag6Mr":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#wordWrap"},"ynxgxK6CkBlzbllJlLXBg":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html"},"cKlx_a1p8fyNetWi9W1aw":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addRegion"},"K4p7I8ahhKjZ2HXNXQicV":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addUVs"},"EKhQgxQhQkmwvOFpxi2uV":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#constructor"},"YGllRY1JOLLmsPICGeuBF":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createAnimationFromName"},"Qx4ecfH9W08I3r2G_BhU3":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createSpriteFromName"},"croPOaWgVywu5TluCQLC0":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getAtlas"},"ubzW1ax-kCOB0ISZ_gDOX":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getFormat"},"_fJKHAz1i1tjJEpIh0jOn":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getRegion"},"zze1NUGVl9VQ_spt8XUqU":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getTexture"},"NGjrz7nPVarIojvvfkViD":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getUVs"},"rATX-G7J6K7uRWxMQAU9I":{"uri":"/melonJS/docs/melonjs/Tile.html"},"o-yepnCSPbPevSiz-3mdG":{"uri":"/melonJS/docs/melonjs/Tile.html#bottom"},"IkvizAulzsf8twvJbdRZV":{"uri":"/melonJS/docs/melonjs/Tile.html#center"},"I-KGjKspDRvfvKFLBqYtp":{"uri":"/melonJS/docs/melonjs/Tile.html#centerX"},"vsY9yjI_SozX96prcRrPG":{"uri":"/melonJS/docs/melonjs/Tile.html#centerY"},"KXOFxyK3FsvERc2hCLFqJ":{"uri":"/melonJS/docs/melonjs/Tile.html#flipped"},"d1Gqj7EdS14tmuCWRpRTp":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedAD"},"RfTExfDYXlNgoupQn3WKj":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedX"},"xkC24-pKEoeCsGz6E8X4l":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedY"},"SX6AJpeiC335xdWxYbsPu":{"uri":"/melonJS/docs/melonjs/Tile.html#height"},"azVq3IS8Exl1WgklH423B":{"uri":"/melonJS/docs/melonjs/Tile.html#left"},"vrRFtXN-KtP-GaPsXC8XW":{"uri":"/melonJS/docs/melonjs/Tile.html#right"},"mOPX5hzkK9dvzxHXOnUS9":{"uri":"/melonJS/docs/melonjs/Tile.html#tileId"},"O8-4e8L3DyeGEs4v20pRr":{"uri":"/melonJS/docs/melonjs/Tile.html#tileset"},"o9SXs5aIIqX85AYuLsfGy":{"uri":"/melonJS/docs/melonjs/Tile.html#top"},"tLfbkEnVTlNygfqegvRo5":{"uri":"/melonJS/docs/melonjs/Tile.html#type"},"Zc2TdjuEUlLv-iQoQ-h49":{"uri":"/melonJS/docs/melonjs/Tile.html#width"},"FNMFUGLnQBQMpb5Cs3XyX":{"uri":"/melonJS/docs/melonjs/Tile.html#x"},"Djmyhp0j_pvRDWhKIvjh9":{"uri":"/melonJS/docs/melonjs/Tile.html#y"},"aJALtIl7jagbAVJOkhf5T":{"uri":"/melonJS/docs/melonjs/Tile.html#add"},"EC8YCYXoawngMJaIufV_N":{"uri":"/melonJS/docs/melonjs/Tile.html#addBounds"},"-QP16vNusn4CwfHAzg6HZ":{"uri":"/melonJS/docs/melonjs/Tile.html#addFrame"},"3wdOfWeYOil3EvR60doie":{"uri":"/melonJS/docs/melonjs/Tile.html#addPoint"},"Uuw913DJLfrsVvkResGaa":{"uri":"/melonJS/docs/melonjs/Tile.html#centerOn"},"PSp00MDTxXx7chcwLMiHl":{"uri":"/melonJS/docs/melonjs/Tile.html#clear"},"E8a4XdqPbZa-TMXvNjmFI":{"uri":"/melonJS/docs/melonjs/Tile.html#clone"},"9hZhcnt72tqoO56OK8aa1":{"uri":"/melonJS/docs/melonjs/Tile.html#constructor"},"QdV3gAmqYx3iN1IA4et4U":{"uri":"/melonJS/docs/melonjs/Tile.html#contains"},"lNzYraLyOpF7wm2peju9l":{"uri":"/melonJS/docs/melonjs/Tile.html#getRenderable"},"JUB4BUTn-KEUpr9td2xI1":{"uri":"/melonJS/docs/melonjs/Tile.html#isFinite"},"Rldj5uuxNN-sz7j9GXzMF":{"uri":"/melonJS/docs/melonjs/Tile.html#overlaps"},"K1mPYU1dtd9k3Iru6Ep7i":{"uri":"/melonJS/docs/melonjs/Tile.html#setMinMax"},"A_edmteaHpvInCmTcbhft":{"uri":"/melonJS/docs/melonjs/Tile.html#shift"},"U1y0q9kY9qfMsNP0iXFkf":{"uri":"/melonJS/docs/melonjs/Tile.html#toPolygon"},"jgzrTmBI5BszMRObU5U-U":{"uri":"/melonJS/docs/melonjs/Tile.html#translate"},"7ym0nAWgZw3fYacpf-EvB":{"uri":"/melonJS/docs/melonjs/Tile.html#update"},"WjpWB7AijFcy8o3mTp7tj":{"uri":"/melonJS/docs/melonjs/Timer_.html"},"_VNk-CNtL_B89KtE4vtPm":{"uri":"/melonJS/docs/melonjs/Timer_.html#fps"},"-CX2qTOWcgv_qvztnrHk-":{"uri":"/melonJS/docs/melonjs/Timer_.html#interpolation"},"ttYyOkM5XjZwifVBECIbn":{"uri":"/melonJS/docs/melonjs/Timer_.html#maxfps"},"maYf1Bwaz-lD0PN-Jvj0Q":{"uri":"/melonJS/docs/melonjs/Timer_.html#tick"},"Mj7L1QwI9_nQRpssdhygN":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearInterval"},"m1Fgsp5hu0e7AF0P28hfG":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearTimeout"},"VkvCcenTs12F4EA7dlVcy":{"uri":"/melonJS/docs/melonjs/Timer_.html#getDelta"},"-e3Y6NW7QF9tIpeupZgWh":{"uri":"/melonJS/docs/melonjs/Timer_.html#getTime"},"G3Fs90S0bM5LEfHzSk8aj":{"uri":"/melonJS/docs/melonjs/Timer_.html#setInterval"},"KoYd2f4eFNqZMC4Lt8y4_":{"uri":"/melonJS/docs/melonjs/Timer_.html#setTimeout"},"228GbfMGrYzGhm1ydr6DI":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html"},"c-1VyrwoGFOs6teVNaD6W":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#canRender"},"1QjG3_VUYc4wQNoNjznt5":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#constructor"},"9yZDvEwfFpQcT09HzfDMM":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTile"},"m5CmyK4YwDaxtuuq4Dp9y":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTileLayer"},"6kiXKgRTZGs-UFzoMVnf7":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#getBounds"},"aVyAsfbUfFuxA-Y0XTXSX":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#pixelToTileCoords"},"VFEJq6vW9NyImbUDcT7kL":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#tileToPixelCoords"},"lA0LEhIqPPVBEL-kqZZQ4":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html"},"aAQ9fqlGo88Ztro4niqPk":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#canRender"},"YbC2dlGGnoWZ8CGa4R_Xk":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#constructor"},"SOqlGj5F7GQ5nfWe49oGP":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTile"},"3l5nlfua17Y5G-PzQK1Bi":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTileLayer"},"2NVyXpQEoHJ_x_xoThAJL":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#getBounds"},"dKhc31nRx_ogMvhUyaQE5":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#pixelToTileCoords"},"8C1bhYXI3Ybu9nLt66MQT":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#tileToPixelCoords"},"Dbuivm1bvXJCIuNDetlSe":{"uri":"/melonJS/docs/melonjs/TMXLayer.html"},"ZCk1bL3xHuJqnaYKn1BWM":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alpha"},"GWwmRop0uSzrEENFmHVm_":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alwaysUpdate"},"yDRAJvJVZPEdRi8gQwaSh":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#ancestor"},"2LP0BzoInra2XGJpOT25d":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#anchorPoint"},"dn4fJv_uLNeJIK0jpcxZw":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#animatedTilesets"},"qdTyD1QCoFJ5Ycg5QTtk1":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#autoTransform"},"NNbBLAyeioWzIdotbAAg-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#blendMode"},"QS66o7AnCcVN56RUAANWQ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#body"},"LoOuq2cOKtQN4L2Uz0rzv":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#bottom"},"pIQlsSnBUOYDlWMXAT3_Q":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerX"},"opTQHz3arLwOnXarx0x8C":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerY"},"oPvJcWbh1eF1KYpd2m0J1":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#class"},"Pb33Z2bNyCxXz-QN0MrDP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#currentTransform"},"mvzzR0nqvadAzsgUcgHz9":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#depth"},"XCIrn7kYdaCJeojLhLqdk":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#floating"},"46nK7GE06HjqgZKdgNkNV":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#GUID"},"wtnJLxxgndV8GoLQXijlA":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#height"},"VqZqVptJUQlzt30UPlXlm":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#inViewport"},"QBhRxcElJltT8MU8H5RCI":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isAnimated"},"YakphWxaiCKtjYn4eMCBM":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isDirty"},"_mnZk71VcT-HfRAAJoC4b":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedX"},"gL4WvRywIghhIaCUmlLi1":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedY"},"x1cRQmvirdSZCQfQemV1G":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFloating"},"7ptFDgEqaTPUh5EoaR1dS":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isKinematic"},"K-gqfNVpxIoobQXSkJX3t":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isPersistent"},"etmMJ2ZnPTpM2OJDIn5xp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#left"},"gAazrFBGhYbPGatxWlseo":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#mask"},"8wskHnHtPOosoK4iuFj4d":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#name"},"NIsZim_ES6aGRndaM7Vm4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onVisibilityChange"},"1X8tU4sXvgFT_PWS92_-S":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#parentApp"},"94Qqmx11fXy8B0PcUq6O8":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#points"},"Pg2vPPwBRwrJJX2-SQfRy":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#pos"},"9Wt43tyGuR5eIxtEwDOIC":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#renderorder"},"5xObOPU4H6Ac5kDx-3Hsq":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#right"},"DnWpW0ygPvrfYbqUTmrcF":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shader"},"oV67AabynLpeEsBDP8jx4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tilesets"},"4laT2wgrxH18ZqcGv0cnM":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tint"},"YFjkvL-cSPbzureHAyt_K":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#top"},"hy-zfO_iMj-w1I8PTKxs4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#type"},"60S1hJcSJWGDZmzAv-W0h":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateWhenPaused"},"0bnJtYDGvVFkYirmfnGsJ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#width"},"0avXZvPBNTagiXJaFVvvw":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#x"},"NU_9yYiQn6LTR3wDtzhJc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#y"},"GimHYfEuIFNRAYeNVFDDU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#angleTo"},"n2mF5KW4YEuqxATamhngA":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#cellAt"},"opEGLmobLIdFeCTB42jDf":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerOn"},"wqB08pEIhbij-9p5BMpRs":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clearTile"},"8S11ud97hni52js4mrY9C":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clone"},"lDiRmHo2avtpisqlCLVX1":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#constructor"},"OdYNU9nmS2GoekapIwuwI":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#contains"},"PfnPU_gJErY0K0eGjcTLb":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#copy"},"R169UXd0Cwnpn6ejK3BG2":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#distanceTo"},"NHlF8JWg7-qqasg5Tksq8":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#draw"},"8e4v7fRpWQZOjpAoSOgmc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#equals"},"lahjEpRcxNAWyrJ23ctzz":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipX"},"hoqzgHRebFonWTaHRf4ih":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipY"},"olqEmo-CxZ1CMNgOPq5to":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getAbsolutePosition"},"SOvaZRMj-zY5H21qlhLWv":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getBounds"},"GyInd6--AqjvYR91M2FdF":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getIndices"},"I1zc6JgBxFl85FUYb3Qka":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getOpacity"},"9UO-NJ52Q-YMNKSI6VQGu":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getRenderer"},"Pw1mf0xdcm7HZk0s4d76N":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTile"},"gj8qBCjR0p-2bVCpS5_AD":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileById"},"X0nqgngFzam2Ks3oO9eVN":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileId"},"rfaD-BhvqClJDw46fS2Rv":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isConvex"},"cOmice9PBkOMRoD4riyH1":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFinite"},"JdQ1w1Ed_FLtqh-Yslurt":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#lookAt"},"H6FmyjjZOUlrxGuzq_BKZ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onCollision"},"qPPG8uxShlukqb2IHQGC8":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onDestroyEvent"},"BQ5PcUlCnANmUM51v8P7j":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#overlaps"},"IUkTrOv2pTw9yeEvoD38-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#postDraw"},"8V8qXik2WsleiZ6j681RN":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#preDraw"},"tNw5oFjnduN86_v4xyGyv":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#recalc"},"iZ5KHdbyf5iGVKz-x-86M":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#resize"},"3PQRseIFpnipP8gew0lFD":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#rotate"},"7bNH_Gwtc6ZRumYukn10-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scale"},"rYcq6fZPbs4yl9MlHQYKM":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scaleV"},"b7Bj0zZmp99UmlmZa0yHL":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setOpacity"},"2UJQiIvPxGgltk9eolzWX":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setRenderer"},"6KY3Dg6RDGHvu_XLc6xyf":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setShape"},"RnuI_q9-42HMhU3uY1MnU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setTile"},"iZmj2MeZ3hGBDr02pdhgs":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setVertices"},"u60p4zSMOZlMimU9o4iXI":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shift"},"NYxKvQX2oU8ObTRzQm6uP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#to2d"},"Bveylho2T0UX2gkluZyw3":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toIso"},"NNZxaQvPC0kXYPNIbw4p4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toPolygon"},"TYykM2J5v6OM0Nlw9LqCm":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#transform"},"OWHpmwvk8FFHtafcR6GTO":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#translate"},"XqFvUNz_bt702jeY4cOKc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#union"},"J2OOhXqcerMS94C-lJQ1R":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#update"},"F6D4-Q-sFlEBlNGffT32z":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateBounds"},"KpbP7aif0oyUoQ6yjBQxo":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onAnchorUpdate"},"nbJAVLGESh7aNzTdYgpRm":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html"},"c_Ij-USh2hQVdQfu_cGLw":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#canRender"},"G7lHNReqFJ9hGFwt8m1HC":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#constructor"},"KryFTRcGsll-dXWZw8A5K":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTile"},"xbGTDKqyVPOPgtvgsF8YZ":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTileLayer"},"LqiNYeIWAcYp833Fw6eJ8":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#getBounds"},"1bGlPWr-Ru9Nn9UeClgvq":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#pixelToTileCoords"},"amGXYFWcoOjDxRMQSixcM":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#tileToPixelCoords"},"t55hnsTyZHiJAjypBtg6T":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html"},"shC_CyuZw-KZhDIYxotOO":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#canRender"},"CdD3gpJa0GI8i1i1m7d0o":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#constructor"},"E8BXsMuj7CPF68AHoV4QU":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTile"},"frMVdku7SErw3QIThAi_A":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTileLayer"},"uIAoyqyELJvJwzz8K-ULG":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#getBounds"},"fALaHVpkQW_Owspr3ZyVg":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#pixelToTileCoords"},"CxbKjR1JiL1K2b4MECcGc":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#tileToPixelCoords"},"cJcwvXknNgWVxfdoQFNCD":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html"},"uMLoLzX7OK7lyffsjC-JZ":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#canRender"},"ylRyZjb98LGmTTMHqpVeb":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#constructor"},"dQXM8tcJV3gPK0tsDCNYw":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTile"},"o5PJt6GXG4nD3KWI5Rs4q":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTileLayer"},"ijP8TH-AhJz7yO9wYBBC1":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#getBounds"},"NhzY75Te-U2uhPDRThy0X":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#pixelToTileCoords"},"klp6oM4JHBzu68At1KV88":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#tileToPixelCoords"},"KGtL_JMWjQqqMBjkFu4Xq":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html"},"Tm5rzNG_H60ZNvxbAOU3H":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#class"},"U_TL1oZm7H5KMI6IQoYvF":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#cols"},"BHACvwuD9OORP8JVBfbqS":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#infinite"},"id09RH0CJxmqtPx5WS9-t":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#name"},"dFw0Qx4kz63w6O4M8MoJS":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#orientation"},"yi0r2ZzOZ7EwQ_SOOdCJm":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#renderorder"},"yVRvc_5s-84ihShaGl6Uk":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#rows"},"qH6tj_58j4Zu8QFckrI1r":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tiledversion"},"TOBeAAS2TdnnPWsDpwhw9":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tileheight"},"zepQLt5-dpPjWOq6DSPDw":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tilewidth"},"PxjUnU6AS9wUcjg5AgFsN":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#version"},"XtbRwyq0yWVJvOBSy04br":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#addTo"},"mGX_T_L9tayO8KztS9mHQ":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#constructor"},"fvCM5p14JyI8VGFcsYgY2":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#destroy"},"IG_UPfcWja5Qf5MhJQcjq":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getBounds"},"mSS0vq53bUNsr0JMWv4sz":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getLayers"},"bzywexmX_LQkDpgfO1ADJ":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getObjects"},"sBOMrdC0mqzX4041vCq20":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getRenderer"},"kgSoWKpoVec9NVtr1iwFr":{"uri":"/melonJS/docs/melonjs/TMXTileset.html"},"8liw1fqHUa3sd7pG9JJ44":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#class"},"hyyWqp9YzQ0sfsshlBZhn":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isAnimated"},"LdgJBVqaiyilka8GuAPfR":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isCollection"},"16AjW1hVa5c8l6RZp08En":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#_lastUpdate"},"mI38XmK7slGi5iVJI6km4":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#animations"},"4YJGIcd0QoVLBPFF0OA1h":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#constructor"},"U_5h9m0_81TeRSjMelXo9":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#contains"},"se_xnT-z5NXAcYTrW72Tb":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileImage"},"c4aWLn_I-qgjjhQBI-uai":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileProperties"},"_Hn53wj3KaJ1CxETrz9DK":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getViewTileId"},"ehhvJHeknOokmQnzFBDXw":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html"},"ftEcqGJ8f8QBmfHWFpwXi":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#add"},"9plU2gd6tW-71h5VQKQH4":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByGid"},"P0fbxoAR4HkSJPtAE3nxl":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByIndex"},"GG8O9Njr1I6JK5QTx6BCT":{"uri":"/melonJS/docs/melonjs/Trigger.html"},"spiaBtpSCHLdArzWAWk9s":{"uri":"/melonJS/docs/melonjs/Trigger.html#alpha"},"xjzBst-_1hnKbI5R2HEj0":{"uri":"/melonJS/docs/melonjs/Trigger.html#alwaysUpdate"},"brRBSy1wzJPLUg-EhgjUv":{"uri":"/melonJS/docs/melonjs/Trigger.html#ancestor"},"4g8SNArWQF7iLY_w6Bz31":{"uri":"/melonJS/docs/melonjs/Trigger.html#anchorPoint"},"QXGMvgQCnG6XEkMl5KDlZ":{"uri":"/melonJS/docs/melonjs/Trigger.html#autoTransform"},"k8lWznAuYRHh_4MQfjwvB":{"uri":"/melonJS/docs/melonjs/Trigger.html#blendMode"},"eS4NIAkzchUybUcftctYw":{"uri":"/melonJS/docs/melonjs/Trigger.html#body"},"r5Ks3NOChXIQAUp16muDm":{"uri":"/melonJS/docs/melonjs/Trigger.html#bottom"},"nUW7wjF1HrUQG0ub3U6tB":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerX"},"_xVRMVoPLSwvPhIKBUUGT":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerY"},"zpJo4bxZitO9kDb09Rakj":{"uri":"/melonJS/docs/melonjs/Trigger.html#currentTransform"},"tSN2iyENeST2l9yTOt6SM":{"uri":"/melonJS/docs/melonjs/Trigger.html#depth"},"ZZXkY1eaYFkf3A4PMObEr":{"uri":"/melonJS/docs/melonjs/Trigger.html#floating"},"zO3PiEsXmunJM0DVuPOOR":{"uri":"/melonJS/docs/melonjs/Trigger.html#GUID"},"NdbVn1pG8zPBPM4Warn9r":{"uri":"/melonJS/docs/melonjs/Trigger.html#height"},"Fvbn5afsPkKBI4vwgQLBX":{"uri":"/melonJS/docs/melonjs/Trigger.html#inViewport"},"-i9tnZ9SpWOR7oxZ-HFVj":{"uri":"/melonJS/docs/melonjs/Trigger.html#isDirty"},"sEvEQ0FWjAM-7JmQ3C2AA":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedX"},"c0QXlnDFsxzCqHmC3XXGc":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedY"},"cl53hZLZ8CKOKc2QjCKcq":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFloating"},"Dfu8K7AAaCd6rUZyEPg-c":{"uri":"/melonJS/docs/melonjs/Trigger.html#isKinematic"},"lrbzFXDjx_-AGulxbAYsT":{"uri":"/melonJS/docs/melonjs/Trigger.html#isPersistent"},"sXaNH4MGBk_psoyMmGyk9":{"uri":"/melonJS/docs/melonjs/Trigger.html#left"},"2ygRI6aFCsW2gMGpoUr3V":{"uri":"/melonJS/docs/melonjs/Trigger.html#mask"},"LG56WG1XhHY21GuE1b92j":{"uri":"/melonJS/docs/melonjs/Trigger.html#name"},"6-jP8gdYtCcC9oPHFFGsv":{"uri":"/melonJS/docs/melonjs/Trigger.html#onVisibilityChange"},"zY2CPYzbqNnutY4frEPgq":{"uri":"/melonJS/docs/melonjs/Trigger.html#parentApp"},"IXHZkJ3_gLjvOWmObL8Pq":{"uri":"/melonJS/docs/melonjs/Trigger.html#points"},"Q2jxURYRXD6rtKCXHi0tW":{"uri":"/melonJS/docs/melonjs/Trigger.html#pos"},"idYqJhIIPC6gVK7tLH1yL":{"uri":"/melonJS/docs/melonjs/Trigger.html#right"},"QBawFezpl3NotH_GQ71Fr":{"uri":"/melonJS/docs/melonjs/Trigger.html#shader"},"Jod_Ra29QcxNh30ma-5j6":{"uri":"/melonJS/docs/melonjs/Trigger.html#tint"},"eNrJvySs0kNRyUi8Y8thP":{"uri":"/melonJS/docs/melonjs/Trigger.html#top"},"Mn8Vm_hllzHk1IZOnyFUm":{"uri":"/melonJS/docs/melonjs/Trigger.html#type"},"USUPwA6aIpS76uMUIVqe3":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateWhenPaused"},"gV_uF1KwikdJpOhXZrtrT":{"uri":"/melonJS/docs/melonjs/Trigger.html#width"},"lE-1KZdqsiANjyjFLyksN":{"uri":"/melonJS/docs/melonjs/Trigger.html#angleTo"},"cX-3Dv418866autK1HxmL":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerOn"},"lFejBSCYOTTXRKd9qjIoh":{"uri":"/melonJS/docs/melonjs/Trigger.html#clone"},"23uJrKDttGDB7jRNtqdxb":{"uri":"/melonJS/docs/melonjs/Trigger.html#constructor"},"5M0JA6GByUVxSpMWIIAv1":{"uri":"/melonJS/docs/melonjs/Trigger.html#contains"},"QCvxPhoUTBiJojrI-Wxvf":{"uri":"/melonJS/docs/melonjs/Trigger.html#copy"},"QbK75bZ65tk6XJk8k4ACe":{"uri":"/melonJS/docs/melonjs/Trigger.html#distanceTo"},"Sl3vmpfBRuoQZH646lPSm":{"uri":"/melonJS/docs/melonjs/Trigger.html#draw"},"rO9rNxv56vzeGCBlo5q1Q":{"uri":"/melonJS/docs/melonjs/Trigger.html#equals"},"biGM-y39d9tWMZxm7GD_A":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipX"},"lo9Gfd_frrN9W1q1EuFhO":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipY"},"2BVuwHyelPBOZ7WfqomfX":{"uri":"/melonJS/docs/melonjs/Trigger.html#getAbsolutePosition"},"fZwUUylAJ1ipiUcJF0Ibg":{"uri":"/melonJS/docs/melonjs/Trigger.html#getBounds"},"8NJQkyA0t0vds5XIT9bXe":{"uri":"/melonJS/docs/melonjs/Trigger.html#getIndices"},"o0_ptsPw5MuXfaV8p9GQK":{"uri":"/melonJS/docs/melonjs/Trigger.html#getOpacity"},"FjLr_bOD9MM7_jM9FRHa1":{"uri":"/melonJS/docs/melonjs/Trigger.html#isConvex"},"gsXqAGKI5aZ-DEGzSjI1c":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFinite"},"2_P5SrpR4zYTm-pG3Y3qF":{"uri":"/melonJS/docs/melonjs/Trigger.html#lookAt"},"41q63iq1fqczkE71_L4lZ":{"uri":"/melonJS/docs/melonjs/Trigger.html#onCollision"},"qPjsNdflm2fq4ivElPfSM":{"uri":"/melonJS/docs/melonjs/Trigger.html#onDestroyEvent"},"nbH65T9YYH31pAxpyYzHH":{"uri":"/melonJS/docs/melonjs/Trigger.html#overlaps"},"OKN-EIR9zMtZ7eD8hCYbt":{"uri":"/melonJS/docs/melonjs/Trigger.html#postDraw"},"ju6Vj9JsfosctkNwmCtnZ":{"uri":"/melonJS/docs/melonjs/Trigger.html#preDraw"},"ra21Z5ybBcUcIi7tAM0xp":{"uri":"/melonJS/docs/melonjs/Trigger.html#recalc"},"prKGaTPSFktUCIRRzR-u0":{"uri":"/melonJS/docs/melonjs/Trigger.html#resize"},"G7FLQWI1HxHX5oFOGlVEz":{"uri":"/melonJS/docs/melonjs/Trigger.html#rotate"},"OsD_tapoz36PjH0mboXUJ":{"uri":"/melonJS/docs/melonjs/Trigger.html#scale"},"lb-fNdq1iVl0NSEfQr42v":{"uri":"/melonJS/docs/melonjs/Trigger.html#scaleV"},"4doOps7n2_NHvvQWyK1R5":{"uri":"/melonJS/docs/melonjs/Trigger.html#setOpacity"},"t1qBAQXGrnO1M2FldnFGP":{"uri":"/melonJS/docs/melonjs/Trigger.html#setShape"},"N1i9j7BskjecBsX1ta_2M":{"uri":"/melonJS/docs/melonjs/Trigger.html#setVertices"},"kCIvWwZT2bbwLIPRrMgr1":{"uri":"/melonJS/docs/melonjs/Trigger.html#shift"},"XiCLSYIZHswCgj4IfSg26":{"uri":"/melonJS/docs/melonjs/Trigger.html#to2d"},"qjQnqluMNg53ifuTW86iZ":{"uri":"/melonJS/docs/melonjs/Trigger.html#toIso"},"1LXrhbKv9e6ZJHWKIn3lg":{"uri":"/melonJS/docs/melonjs/Trigger.html#toPolygon"},"G1z3v6qwAf2-HHAomILT_":{"uri":"/melonJS/docs/melonjs/Trigger.html#transform"},"wJerqnHiMaFT-gU_IognX":{"uri":"/melonJS/docs/melonjs/Trigger.html#translate"},"gN70hrs-Bf505BTe1yDYR":{"uri":"/melonJS/docs/melonjs/Trigger.html#union"},"VBAbe4Cxq4SEKwne1LEiy":{"uri":"/melonJS/docs/melonjs/Trigger.html#update"},"I4c92K4gEsjgy75OWJLVR":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateBounds"},"ds0zE6rAsfXjICWfX7Kt8":{"uri":"/melonJS/docs/melonjs/Trigger.html#triggerEvent"},"6LXdr7z_dZt78EFhYLeVr":{"uri":"/melonJS/docs/melonjs/Trigger.html#onAnchorUpdate"},"vlnVazGzT9SsWX6fmxeuc":{"uri":"/melonJS/docs/melonjs/Tween.html"},"urlYAitmtSD9SJieWRicL":{"uri":"/melonJS/docs/melonjs/Tween/Easing.html"},"oVVB2tVBBn_ySYYbXxjKx":{"uri":"/melonJS/docs/melonjs/Tween/Interpolation.html"},"TTku4Eq4Gz-jzllYHU4VP":{"uri":"/melonJS/docs/melonjs/Tween.html#chain"},"KPVDbnkYpu7fnUJNhShfH":{"uri":"/melonJS/docs/melonjs/Tween.html#constructor"},"Uu4-kSmLJ07RwFbNOlwK6":{"uri":"/melonJS/docs/melonjs/Tween.html#delay"},"Im9Y-N46ZPn0DVsYaE1W7":{"uri":"/melonJS/docs/melonjs/Tween.html#easing"},"Ue7Pv7Tg8U7KoejiVJlO9":{"uri":"/melonJS/docs/melonjs/Tween.html#interpolation"},"FwfevooJx0R-o6V_0ksLW":{"uri":"/melonJS/docs/melonjs/Tween.html#onComplete"},"IOMcDG3fWalmAmj4ymynN":{"uri":"/melonJS/docs/melonjs/Tween.html#onStart"},"6PnDKyyCWfPzCrC2f2xgd":{"uri":"/melonJS/docs/melonjs/Tween.html#onUpdate"},"OVko2s_xTS6tUR_yrCotG":{"uri":"/melonJS/docs/melonjs/Tween.html#repeat"},"l6n1NUr64yt_ecyz_9MpV":{"uri":"/melonJS/docs/melonjs/Tween.html#start"},"QlkV0bSeuI-EvV8Dwscdk":{"uri":"/melonJS/docs/melonjs/Tween.html#stop"},"F4-6iNES0A2COwn4IqCKr":{"uri":"/melonJS/docs/melonjs/Tween.html#to"},"5Uft9BUpdCNINNheztDr1":{"uri":"/melonJS/docs/melonjs/Tween.html#yoyo"},"5rIUWUorq-YVzmk-tzJeH":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html"},"dpHRIH2MSD89zQR5k0a8L":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alpha"},"qqyuTj5bGSahM5c-Pa77e":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alwaysUpdate"},"yPTi89xf-8VWAVITI1H6l":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#ancestor"},"2Y96gQ2HodbL4eArE1z8W":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#anchorPoint"},"0SjWLAprV4bZkUp4cxrq-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoDepth"},"6jvm4N6ZXGAZL1DPTV1Ov":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoSort"},"k_m0TV5Jweb6lxTIdYjQv":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoTransform"},"yTvjfyd0xSMA6VBq7c9h1":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#backgroundColor"},"nKIJJ-7nsaV1tXIX9JS49":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#blendMode"},"INEdrOEK1ACDegxbOPZ4S":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#body"},"iFVWOKIlFDDiREpkXwtGW":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#bottom"},"sZVRa1cW32S7q24cdk0Du":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerX"},"t4w2VSL2Pn4kDdbUfeQDU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerY"},"9YZ5yoveZxLNU7ktT9K_3":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clipping"},"zlTgPwOqFPCSKhp77ZHjk":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#currentTransform"},"wvGTCwn1tp1hl4l_TeLJI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#depth"},"hoy7iulYZaIBgyTeuu71-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#enableChildBoundsUpdate"},"4HW5nDKsP8_NCh59fRU2k":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#floating"},"TgKn8dZjFteSFjP-g1NjQ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#GUID"},"tcqy9gjNIxbw34FE0I_J1":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#height"},"NPB1nv9QRRLvcdTxebQDr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#holdThreshold"},"0lct07Pmztl0lkiumAtf2":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hover"},"PalyyaOZwliKC1lScCA7X":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#inViewport"},"IscRcCSgFR5qoZbNd5u2A":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isClickable"},"f4RpEsNjCsSPbnp0ymjK3":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDirty"},"ZAk-iKVXo4D6oFSECIZ7t":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDraggable"},"8FYWOJzhwd6g7UN7B87A0":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedX"},"Pk-q2dX0pVzHwYSDejsU7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedY"},"P_O_I3YwzwA4z1dqaEVE4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFloating"},"QvZpKLEcx4onLwCf6CtYV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isHoldable"},"HrEdg4FmjBWZiUToVHsIJ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isKinematic"},"7cgDEE5pPXkwATkDWDlEE":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isPersistent"},"vsJrhLa4Bflv4iNuJLNBf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#left"},"FySFgBq-cN7_GWGjvhEOG":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#mask"},"uAoyLWcDhQkqx7XeX7FJi":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#name"},"FTkjUGxFdPmWyL4o52pay":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onVisibilityChange"},"BGWAw24Uy3N4MSNs1_mhL":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#parentApp"},"yYQlgNzXUCYjI6TgBC8YT":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#points"},"RM8iKCn5o_JgQY2DEGqs_":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#pos"},"XyBXzGXkJQFN8Hmf_LybX":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#released"},"7xaT2EOBp06z3YjPOSPVx":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#right"},"nu-G1_g-xYq2BlBjogZpC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#root"},"-9RzVqEog4_-9YB6sv6tR":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shader"},"J8OHPmjejA_tg44Y-JkFY":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sortOn"},"E4FGQbxHNODropddpbSco":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#tint"},"1PZR4yp5XJEuipu2cUZCb":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#top"},"Axc5BaKhmOtKTo45qitdc":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#type"},"I4Cumi4ZVlRQheL3qz-fA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateWhenPaused"},"pjT6o7Hbob7KHc-K8GlJ2":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#width"},"6sDJ2BsXhNA0IXEk_r5ly":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChild"},"-qvhCagJo9VvHcr99CN_Y":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChildAt"},"Gz5FsJ2ItvZC3WL8gfn3D":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#angleTo"},"FgbyUs9222RqCMqw60H0l":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerOn"},"DK-hz4sjha_yc9OvcnTXr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clone"},"qEpIwxZVtfEDtdvggBSAm":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#constructor"},"m6GieZ4x7DOT8-R4dzoMU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#contains"},"cTcrRHdPLfFqbmn1MyI0h":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#copy"},"TBZLVZVKOJld8MzYUUGz-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#distanceTo"},"2wJLXWqOBMt8x-ym11t6Q":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#equals"},"NDy89T-4bT4aKqVVbgnho":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipX"},"GhS3OZIg5es_tUGhUhTJa":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipY"},"VkcNZpx9VmjQEjX0hygdU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#forEach"},"F1Ix72HO39PqZom2PKBiq":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getAbsolutePosition"},"I6daXwBVW4ZEYtnibDHR4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getBounds"},"X2Z9Xdl4Mh4CWijwK0ZkZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildAt"},"wbUEdknnidHJPEq3r_Ad7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByGUID"},"e8ZlRoUCRPTDR6bKFlB_t":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByName"},"-oqhCcFXT0X3OJHOiR4PI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByProp"},"QuwASOu_j89Nb3WdoF0uE":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByType"},"n1ANz1PMKJcPiwGmq1_z6":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildIndex"},"cyYQCLd-zrJIKtrWvFeUo":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildren"},"9dXtUCwrIqGV-zrrRih6F":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getIndices"},"00wbQvDH4VVdxMZ5dsvi6":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getNextChild"},"HOr0Oem7hZRx1VMG47i7M":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getOpacity"},"0GCdBNtsh7piEma8D1OWy":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getRootAncestor"},"WDQeRxw_p0Y09xZvESA3P":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hasChild"},"Ne3KgaW4N14pPpbDGe-OS":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isAttachedToRoot"},"sLHJmp3PoyQVop-jW138Q":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isConvex"},"S0n3b_pwIrc-PMhP7W0Ps":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFinite"},"c9HaR1GVylCl-ATdAfszv":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#lookAt"},"B4c6Qczui0LJjnZzujAc5":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveDown"},"C2pKBi8fxsVCm9FfrM3PZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToBottom"},"EtTZYo00KhMMS9eY2ET4r":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToTop"},"Xr4XkEYGc6s4i1cEP3_GH":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveUp"},"Un1FdXDAvbM8jgdvql-ov":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onChildChange"},"UOv5SZsFkMqo3WRYgD6Rh":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onClick"},"o5ogj1mJxiVTbeVtaxz6j":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onCollision"},"9YrwSVmiv3xYckI2E437C":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onDestroyEvent"},"vIxnBqS5ns7A7vPEGC9Xy":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onHold"},"udAqcBU905BlNI8vOQTsi":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onMove"},"y4RE4iu0XZGuirvSSnm6n":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOut"},"uLwBh-UZfg1MC_xU0XYjZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOver"},"VWWXgRkJaIYIxTfonG7CC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onRelease"},"2DhKk3TOagV2Lh3-BjxWM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#overlaps"},"8glPP1rxzbLPbdiCvilwa":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#postDraw"},"uxoDiGygiap3J9f8iVdkr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#preDraw"},"6kL5KiNNWN1KuCXJeCBpj":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#recalc"},"LGDqzjVbu70GfZaySaiWO":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChild"},"1-13JgjmurrXLGNi-cftm":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChildNow"},"TANTF50ENBvXWBhCTwv1k":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#reset"},"XJdYw4OqUtJ88ztXa8ckD":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#resize"},"CdL_qM4IK_UUNJeM2gJ5w":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#rotate"},"nbu8pM3ldbPLwUKPGbZSw":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scale"},"KEv5zcIRix-4fhwfcgAdM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scaleV"},"dji9pa9AsVtUn6rGasfVk":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setChildsProperty"},"Hay6bXpje1ApJlK7HCFWT":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setOpacity"},"kKZ_pYTNCYpgtvkh8LkBI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setShape"},"rACzKwro_laIWvGh5QMc3":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setVertices"},"CMQgcvtnMAHbcSQaa9mZg":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shift"},"QqGymOjfY8N4xOvMnZxYN":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sort"},"Y7gPpLVHjI849oFx3Wlp-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#swapChildren"},"huZujo3I8_DZE7P2Ld0Bn":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#to2d"},"SyQq1lGMYoY9UwwRsxzlf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toIso"},"dFLyM_PojcmFz0HrSO2jC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toPolygon"},"7LuFlzRaNXUH5u3FknnLR":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#transform"},"A8sDExuPr58_v9GNHajUd":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#translate"},"5h_5YQHJbtodYh6wAbK28":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#union"},"8hC0mjgwP4z6FZW_pGDSE":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateBounds"},"FrqGm8lTgJJuO8wm6kW2i":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#draw"},"1os5wa4NRmQJ6ZXGjrhy-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#update"},"hCmVa509AL_oGMiT_SEJk":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onAnchorUpdate"},"YLAX7khvdP5P2TafF0jjq":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html"},"9Q7ChgNaGG27k4Jdo6sTP":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alpha"},"jCUcwMmHiQ3zhTtzBSchu":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alwaysUpdate"},"RZ7puVYfhaM8a6QhqJkF8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#ancestor"},"76cupgvbFvDmfqBFJj3RR":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#anchorPoint"},"K2vb3N2fENQnQqoy-qYgE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationpause"},"VApfQYJotn0o8EsvJBXXw":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationspeed"},"C3H1eTZaN56FCDuyAqEDS":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#autoTransform"},"BzQ_Ul3lT6VYCe7k3vjR9":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#blendMode"},"qikuK5j9gYyVqFc-iZMgP":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#body"},"tqsjn-4vTP3dmlBXGjK62":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#bottom"},"vKBNrUMIUGSNGZEZq8Xfi":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerX"},"XCWx9aLO-MhnGvKZxS2uZ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerY"},"7WZ6AYmTJgL3N1ORvJmPx":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#currentTransform"},"wv69FLslu_wxQCPkcnNuG":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#depth"},"qGJZaq0HsnhcfH94-Mx1q":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#floating"},"GM5wih0hWnMZwIgZ6U10G":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#GUID"},"hT36vJiMZ1fQctQ9YBFp5":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#height"},"BEIVEBD8eVWtpbUCyzYiZ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#holdThreshold"},"w5IpviihosQ8vU2h-iWNO":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#hover"},"a4p4l8xNwgRWX6dLBvm1B":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#inViewport"},"Ckwgk_F-GMpvjfsNwi-s9":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isClickable"},"JwpLLTkFX86M_lz4oMAoj":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isDirty"},"utYdTikf2S-i0iZvsycru":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedX"},"Ic52SMpDDa44PCyTjCSmL":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedY"},"s4GEodnkaAtGJ4FbCm2i_":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFloating"},"XjRJhYXrJ-13oQN9bmKvW":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isHoldable"},"gBy2QA-kUWcipJNg5nFWD":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isKinematic"},"loQOUIdlUODWKgp7ydu-x":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isPersistent"},"pijfTycZpbYNYOacY5iL8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isVideo"},"mQ3omwfKdWsxrb8gVozhW":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#left"},"BXxw5Sphmf2dUtkdkbVzE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#mask"},"LjAaqaPoZ2Z3w7ZcuJk5L":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#name"},"GsHEqNpkE078d3jMVn7X9":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#offset"},"LlqKAuqtcGrJNULyOdPja":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onVisibilityChange"},"Wurdk5pGdSo4gx4gDH0XK":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#parentApp"},"dOJrLolL3u_DPEYdrulBk":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#points"},"1cDFWeMsy34_X4uS0LbzN":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#pos"},"ihHq3E7Tb1xj8AOEqHwxX":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#right"},"C5v15n89SRlK_jKmAXDOi":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shader"},"H0CfTZ3Ja1yK8xwkg5Dzv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#source"},"LH5JmWzu5CHRQHeFzXiMt":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#tint"},"BAWQo6Ja-csHHg18ZsFzp":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#top"},"2cCiMwQjXaz68Nb67QXFx":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#type"},"6uQn-tt8zP8yOAe_e9Vh8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateWhenPaused"},"bhfuRkE4cnEG3vXEoU7ka":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#width"},"gCTo2RGIKJjUv_Odii83f":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#addAnimation"},"4Xi-nFP6uqvOWMOD1DkLS":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#angleTo"},"_Ry6zP8_19A7aLi9iSldf":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerOn"},"9DzVDtGkHhgt2298bgTOE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#clone"},"7ILga3pUHTg5WjvXmso54":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#constructor"},"IjDbxTZakZMEjX06wWPoc":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#contains"},"R3chRrLc4EBHK5nNDKJcR":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#copy"},"73h2NZob4svzbLwv_MJte":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#distanceTo"},"moAieApT60A5WTZhiLQf6":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#equals"},"FdyoicyVC7VhlMsUQYml-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flicker"},"_noFvbVZyoBruTdfnbqqG":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipX"},"4PJGBkEd0d89mMBgN9WZE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipY"},"DsakWggRzI-7LRVPq2hC4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getAbsolutePosition"},"d0xFVRvXMkEq6JnAxfiSh":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getBounds"},"rjgVpV0QZ1b0PzoxJ8HqL":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getCurrentAnimationFrame"},"MhKeFsCB__SveENCw8BhS":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getIndices"},"zfGLTdw2It_fh6kw9PSsi":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getOpacity"},"dG__zVndUjL-Bo0APY8Ul":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isConvex"},"tURmKHkVvLD-EXI-bOZCx":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isCurrentAnimation"},"4HksPCtP6XpW9NmqTsqJD":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFinite"},"oxOvEfmgB9EpumxiWB4eE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlickering"},"FaSKzuBBimMhepKRJJ2dy":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#lookAt"},"LmGWsDDi12rabwsKtuHtx":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onClick"},"qKhTqrf1_dKciPlci42mE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onCollision"},"K44v4DgRAtOQ1joYPtjmf":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onDestroyEvent"},"faE2XKAgbFMw6D14d-KUR":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onHold"},"zTl3gQIYM1iK5oZzXiZUC":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOut"},"TnlIctoaTRDtVr-nT6kIZ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOver"},"vL_y93jhT1S7Lo_xSISFQ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onRelease"},"J0feIEMI2QToLZs1QrfzM":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#overlaps"},"itqfM5wsZdTxOrUZbOdGa":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#pause"},"zx2U1on1pZTwkyIXejwyZ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#play"},"-ouG4ClU_FjTrnyGnYEpI":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#postDraw"},"SLoOz3sGzBs5z2HWuokEW":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#preDraw"},"SVbA9FR5gpTfOgGuO8Bcn":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#recalc"},"XBXtD4mgfCe1rdMMAScmw":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#resize"},"j4QGilwr3ybQ3gEDpugBY":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#reverseAnimation"},"AqbCopyTwQJC_QhLmTuXN":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#rotate"},"yd_fAizz64DaoMqtpeweB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scale"},"6965uX0d6NzLbAQ4dPHs5":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scaleV"},"T7rEaLw6NrCQ17-bpf15I":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setAnimationFrame"},"vx5rU1x52dkNUcnC9Ck22":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setCurrentAnimation"},"s6yrS5RwJCzzXuzgWEIl8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setOpacity"},"G140sdZ-DMMxf-H88a7Vh":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setRegion"},"a02vNJtqAuhZZnajDzlAj":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setShape"},"D8e55BKdt0Kkf7mqD32Nw":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setVertices"},"zMvcKhSdVazoBnrMviJe0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shift"},"vxxm92QUdyD2N21r1LfL4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#to2d"},"d1fV9Hnz9lLUujmFW-bA4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toIso"},"raktJDPRmtmnmSLdyva17":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toPolygon"},"Sn69xAQJ2PYHI-hD3fpQw":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#transform"},"Hzbion4Sr6OEaAJ-9mFIO":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#translate"},"LfAsR-NGGL1b_RYXttg1_":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#union"},"Be0bmKESwLLgWKXowhKqo":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateBounds"},"L-D6OcBkH5GaY0WpdB7rt":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#draw"},"VRsSf82mfW0FDhx9S3v7b":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#update"},"blJOgkjknywFVRs2QGS04":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onAnchorUpdate"},"g7mHOanVmCgnRgcRFVf_F":{"uri":"/melonJS/docs/melonjs/UITextButton.html"},"WqnGR_ByM3Y4Uf1eLsRl5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alpha"},"-WasFQWd4kfp6mFIXO_NK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alwaysUpdate"},"2hkNZppedRnIMnqTA0Ty7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#ancestor"},"G41btlZrO5bFWn036aBA8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#anchorPoint"},"mjMxIoAuUHuH2S_BHEM9V":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoDepth"},"2R20jyAIi__LI7cPd50YQ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoSort"},"THm3RuWSIt_FRNlMr9uO5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoTransform"},"nhoMv208dfc0FhfegPMSS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#backgroundColor"},"rSa1vFtD74DViWnncqQi6":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bindKey"},"Q2QzANniDVqurRu-vOKkq":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bitmapText"},"zTbcbCIxWwDanvFKnwvH-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#blendMode"},"tJ6l8k3wC7AuHTq-SL5BN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#body"},"9gd4TvnFcfHxtSFFMoGv0":{"uri":"/melonJS/docs/melonjs/UITextButton.html#borderStrokeColor"},"XDfwhvq3QZTyDwPhsJRLM":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bottom"},"U6dxbyXAWIeDzvodr4STj":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerX"},"NX_fLEaxpH2GU-34bJhlk":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerY"},"r1Ald9w5uy5XFgWUDs16g":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clipping"},"2BzD3VqG-8au_DCRNwTUH":{"uri":"/melonJS/docs/melonjs/UITextButton.html#currentTransform"},"wIjejs_304gAN0ysbV1OV":{"uri":"/melonJS/docs/melonjs/UITextButton.html#depth"},"viwZpTwwSXc1r6NqMdtPa":{"uri":"/melonJS/docs/melonjs/UITextButton.html#enableChildBoundsUpdate"},"d6tVDJoPAIUHBqvX-s2vh":{"uri":"/melonJS/docs/melonjs/UITextButton.html#floating"},"0vAv5hNCtDMDaTXBG6aNT":{"uri":"/melonJS/docs/melonjs/UITextButton.html#GUID"},"7bU6BnqR1REsSBomGlw2M":{"uri":"/melonJS/docs/melonjs/UITextButton.html#height"},"4v_oA4HCTG2XFgz_-peBM":{"uri":"/melonJS/docs/melonjs/UITextButton.html#holdThreshold"},"HB_tjXlxX0PxqHPrLKfHO":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hover"},"s5P3-ey5DU-pM3sDFP2IW":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hoverOffColor"},"w_NVcdOjgUUlULbJXPSr4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hoverOnColor"},"warOcRXiAdIxq9OlWkgt-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#inViewport"},"AOmYbIVDEfWOiTHADQIBY":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isClickable"},"aD8qUZB6eKJEXxIclU22i":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDirty"},"gn8r-lDr3mVwWZEqiIrFZ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDraggable"},"ln6dQZmLuwrnOhrjH1Ldk":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedX"},"MP7DAvZE8KyC-BU6X66f4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedY"},"e1JXBNR0SkXmvuCTpPLD5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFloating"},"WoWWb6HIcqgkzy6q5eMLc":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isHoldable"},"C6oaBpyY_y52-ckIKNZ88":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isKinematic"},"HCqxtQUtBn6Eh8uZGi_vD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isPersistent"},"QA8XaWNScHMGepHjyQmi-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#left"},"xld8OXX60vPBsJv4Ko1Kc":{"uri":"/melonJS/docs/melonjs/UITextButton.html#mask"},"5-9ACJe4yzPDadrazdgPy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#name"},"gbxxhnQoeaZrFi7mTG-7E":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onVisibilityChange"},"JAXsR8wEl95VOcGRKl9a8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#parentApp"},"N-YTYnhSVOV1tVqDDhD_S":{"uri":"/melonJS/docs/melonjs/UITextButton.html#points"},"E608T4Wsf1tXWZN3riPEU":{"uri":"/melonJS/docs/melonjs/UITextButton.html#pos"},"NxztdsGiBvaLStrSOZy9K":{"uri":"/melonJS/docs/melonjs/UITextButton.html#released"},"4jrGXsyoQ7_saVlsviViT":{"uri":"/melonJS/docs/melonjs/UITextButton.html#right"},"7rfQX0OW7tDCOBN1i_v8u":{"uri":"/melonJS/docs/melonjs/UITextButton.html#root"},"zp9qob1VHpa8jLtJP7ByZ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shader"},"A-0Ica0S_U11wly1gmXb7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sortOn"},"EPCVXj6MmZEpcrglicVw7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textAlign"},"5RjWNtuDTjsCgIkFF4Idt":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textBaseline"},"yL-NIb6ljraEESqzDgWa-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#tint"},"ggj_XazF14kMudI3w0nkS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#top"},"JdGUlp-Y2NI4WYRzXw1IY":{"uri":"/melonJS/docs/melonjs/UITextButton.html#type"},"Ghoi2viS38AJ4KwdbknP8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateWhenPaused"},"m1EZFa6luwGcoba421Lvb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#width"},"7bt8njt4kqvMa3NvQwzIO":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChild"},"6_JBhbvL_F2EPwCciJY7k":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChildAt"},"H1pNYp4XAarRzYa5zVOc6":{"uri":"/melonJS/docs/melonjs/UITextButton.html#angleTo"},"arishjmqnM26G9qA13MrJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerOn"},"_ZHVhtCwir4WetGb_jFSI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clone"},"xV132Y3_E3xorjNlMRLYA":{"uri":"/melonJS/docs/melonjs/UITextButton.html#constructor"},"gg9MfkM6qGHWGuq-y5pXa":{"uri":"/melonJS/docs/melonjs/UITextButton.html#contains"},"k2NWn-WQfLwEFp1x5X1E6":{"uri":"/melonJS/docs/melonjs/UITextButton.html#copy"},"JsDG7pednjYyU0W89PAIr":{"uri":"/melonJS/docs/melonjs/UITextButton.html#distanceTo"},"3cSULqizlgwQnTI5-QUtD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#equals"},"e57X0lzIou267g5rFP8Al":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipX"},"dot67h4Z5-ZFjWDsmf4j7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipY"},"F0eHxbCunOGmmDR6-3D7q":{"uri":"/melonJS/docs/melonjs/UITextButton.html#forEach"},"kd4G3fHJph9Bagz0J57qS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getAbsolutePosition"},"HlRIOcmNJzh3DhxEsv-s8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getBounds"},"cklgCiv93LIOKvixWMWFm":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildAt"},"FKUX2en_MVSAezYE-2pAt":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByGUID"},"Bu7mhljy8RiPAN4YPEOHE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByName"},"Bkgx5JUkhhgBaznorPrrl":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByProp"},"oUs6fTFRrv_DDZU2CimFI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByType"},"bJo27Qj4Ey7mU0CDuxVl-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildIndex"},"7tbHp3R1cyP0sHegRl_se":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildren"},"MnYqzEPAqyCAUOVpDoYpE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getIndices"},"3thN5AB4msHj4p4GApAWK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getNextChild"},"3w-VffT9gIHbNARa3c_68":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getOpacity"},"x2GECmcU1_x2E2NPQwmNA":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getRootAncestor"},"OlIiV5PBqNXP9bZMYvjRQ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hasChild"},"F7Zco8f9yz_EI_NRSSnuk":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isAttachedToRoot"},"IyOLs7JgRmRhwiwSwVq1H":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isConvex"},"j-yBxJslrVuQSZSv39tQN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFinite"},"EMbSBVsgNYu26-6eiKFqy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#lookAt"},"3m70QJW3KyoxMD56TnguT":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveDown"},"w30IhvBOJYAnqmHg1n4_i":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToBottom"},"xePEEVUIQ_3kxof0bU_mK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToTop"},"qVM_UB8wdxruvO8W14WL1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveUp"},"AYN-yUk3KLyc8nrgeN6cO":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onChildChange"},"m5JK_bF0GPcNCzqKxHjYb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onClick"},"VO4MASPLNAzvwJd4XwtE3":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onCollision"},"oEBNbqUMN5aa_h4e7Yg7z":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onDestroyEvent"},"ozlKZq3o5_oDiZj9OmVrQ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onHold"},"Pvp6hjZX4Tox8YBSE-hed":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onMove"},"RF1rrWfrOIcyFe-T1MZJ7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOut"},"61755GKfBZM7-qupHcIKo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOver"},"qZEmaZ_vcJUzR1j77hlyf":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onRelease"},"EEo_XcjN3n1G0AxtTMlck":{"uri":"/melonJS/docs/melonjs/UITextButton.html#overlaps"},"0-YfTmCRiOGD4XfUVS7-p":{"uri":"/melonJS/docs/melonjs/UITextButton.html#postDraw"},"YRPhnb7-_C-arcp7tJ1NJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#preDraw"},"uHj39N1CkdBthze1_DoWZ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#recalc"},"ovoO69bBADzGzMmIr_esp":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChild"},"98xSiLDjaCDFwerU8764W":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChildNow"},"l5SDL0mf6kKrFxgBgVdt2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#reset"},"qzj-VsjyRsCHYGBiFkRpg":{"uri":"/melonJS/docs/melonjs/UITextButton.html#resize"},"yqcX0Gn_TS9C-dZHaLd0d":{"uri":"/melonJS/docs/melonjs/UITextButton.html#rotate"},"5_fsg6qouNA6EF5FDhjrU":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scale"},"9-XxrPGu9bOYxua5cAmtb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scaleV"},"YzSVCZ0-9TN4mBr_2RqPA":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setChildsProperty"},"OSeRdWR-6VSwzhZFUPCUy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setOpacity"},"Y973wQ9S2U2hwvi6nUAij":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setShape"},"HK6VRiNIYBFCi1Pjh96si":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setVertices"},"uqJR6Yzw21Or5sALlBf3H":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shift"},"XMLN9cidekOhGXlLInxGw":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sort"},"leGwAMe1vjNZVOnK23Yse":{"uri":"/melonJS/docs/melonjs/UITextButton.html#swapChildren"},"MJXKA5374eyoOh3DiF7fK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#to2d"},"SGjcw3Ojr0Cd0TaQDKeWu":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toIso"},"tKLsqJHjyqPD7i4Onn70s":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toPolygon"},"sJzJGD0CBsULlP198SD8k":{"uri":"/melonJS/docs/melonjs/UITextButton.html#transform"},"TlBypHIhr0EtnzWJkXYSm":{"uri":"/melonJS/docs/melonjs/UITextButton.html#translate"},"6GeSs1wDvDlTmikwsTaur":{"uri":"/melonJS/docs/melonjs/UITextButton.html#union"},"jTRfxnZrQJL6gdl0OEPi9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateBounds"},"YcP7ezCQQNi1xTY9nxUKI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#draw"},"q68B0rZcoeCplX7eKLSkB":{"uri":"/melonJS/docs/melonjs/UITextButton.html#update"},"Wl7524pEC-3Snm6he01h1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onAnchorUpdate"},"mX1n9KpWf1HMzYwjqyqpv":{"uri":"/melonJS/docs/melonjs/Vector2d.html"},"UwM9PdDPKIaX8sQ9CU9S9":{"uri":"/melonJS/docs/melonjs/Vector2d.html#x"},"ikzIOxUL49lO77MMp7xjl":{"uri":"/melonJS/docs/melonjs/Vector2d.html#y"},"tyu1kw7ZruU-g2CJogVAc":{"uri":"/melonJS/docs/melonjs/Vector2d.html#abs"},"HSVF0Lr1qpTQfPseyorJA":{"uri":"/melonJS/docs/melonjs/Vector2d.html#add"},"5-s7P3VVbtkCPLDoI0b7x":{"uri":"/melonJS/docs/melonjs/Vector2d.html#angle"},"DvGHp_4C1f4IFdzJ8X9xI":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceil"},"5gz2YLjUsyILW1EwVMunb":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceilSelf"},"cUlV-BJxjzrshYKFDP2w-":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clamp"},"KUgwYQJ5MCTaaikLGE1UB":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clampSelf"},"8F6IbWniHIaK_0d0HNG2u":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clone"},"fswb6he8E29Eoqhwsgjld":{"uri":"/melonJS/docs/melonjs/Vector2d.html#constructor"},"mUsNi63WXDbxoovUR0W9j":{"uri":"/melonJS/docs/melonjs/Vector2d.html#copy"},"SkjM_4T9Y6Jfp4sqnicT1":{"uri":"/melonJS/docs/melonjs/Vector2d.html#cross"},"2wlyLXD62iBDmi5kdOm4K":{"uri":"/melonJS/docs/melonjs/Vector2d.html#distance"},"IFKj5hA7gmqO2pG7VjLze":{"uri":"/melonJS/docs/melonjs/Vector2d.html#div"},"FQZto1Clz72fwSyqkxh99":{"uri":"/melonJS/docs/melonjs/Vector2d.html#dot"},"bQzf3OtoIWqZVxFxkFPjv":{"uri":"/melonJS/docs/melonjs/Vector2d.html#equals"},"qgAGVxsrB53My0Jpx_UZf":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floor"},"sfh-xYys6J1bxyX-nWMNz":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floorSelf"},"BpFR451s7jEL-Nz9dZ6NF":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length"},"sL-KlLQgrlQFgj2lgr9if":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length2"},"QBzv0g3xcDQEPla-l3YC2":{"uri":"/melonJS/docs/melonjs/Vector2d.html#lerp"},"iFIaB-SFETX8nQhbEPj_B":{"uri":"/melonJS/docs/melonjs/Vector2d.html#maxV"},"jPuqymbSc3GeFhVsffcRq":{"uri":"/melonJS/docs/melonjs/Vector2d.html#minV"},"M922Z5iOHe12TeutrPNy5":{"uri":"/melonJS/docs/melonjs/Vector2d.html#moveTowards"},"iUkU776eoO-3unQ-NvwnN":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negate"},"DFWINjnOCa0EyQ-L6O6XR":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negateSelf"},"1wIZ8QeGhPfAeZOBWto6m":{"uri":"/melonJS/docs/melonjs/Vector2d.html#normalize"},"DcBehYLFTAEOTEu1Fl2d5":{"uri":"/melonJS/docs/melonjs/Vector2d.html#perp"},"ogrmqTb9LupaZ93okeAsF":{"uri":"/melonJS/docs/melonjs/Vector2d.html#project"},"HKHxvPrj4ZohWjoLi7-wo":{"uri":"/melonJS/docs/melonjs/Vector2d.html#projectN"},"E0krbq0ew9QI61QRRHAhK":{"uri":"/melonJS/docs/melonjs/Vector2d.html#rotate"},"KoAzox1dWWmxcUXPFiZnu":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scale"},"KQiomgq9moRPlUYmU314I":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scaleV"},"hl6bgZxssj0PgaMgEwn-N":{"uri":"/melonJS/docs/melonjs/Vector2d.html#set"},"BZTfd6w7blxawp-WeTgE9":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setV"},"EXah28uzKguXa5jm4gJAH":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setZero"},"xM-xsCRownqOA9EVNTUGw":{"uri":"/melonJS/docs/melonjs/Vector2d.html#sub"},"ju5Pltl6d9cWcjbIVNbzj":{"uri":"/melonJS/docs/melonjs/Vector2d.html#to2d"},"iopoeEWCxk5Zeo0YUrCj7":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toIso"},"to-GGGpJ8Agq5uWfFN83d":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toString"},"WwY8oNyb0re3X1upvbS12":{"uri":"/melonJS/docs/melonjs/Vector3d.html"},"f4m-Wm3OBtd5nT3CvJuND":{"uri":"/melonJS/docs/melonjs/Vector3d.html#x"},"lFQ-dGFGbIf9X_dByAhwS":{"uri":"/melonJS/docs/melonjs/Vector3d.html#y"},"Fp7CHPckC-mSaqfR3zQqU":{"uri":"/melonJS/docs/melonjs/Vector3d.html#z"},"mcKcjJzjg5lJoTuDRklYK":{"uri":"/melonJS/docs/melonjs/Vector3d.html#abs"},"bT3Oqe21k4htSv9WfYkmh":{"uri":"/melonJS/docs/melonjs/Vector3d.html#add"},"k2HK4QWPqFx92BHYgvykV":{"uri":"/melonJS/docs/melonjs/Vector3d.html#angle"},"I5T8MqXIOCwJUN65rwhrp":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceil"},"PV5SI3YxbjBZnbo64fYL4":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceilSelf"},"x-NbwDBSXdima3-FvkT4G":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clamp"},"KlE21pyjUu-760Gfr0UtQ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clampSelf"},"CC5e7qxH9BrVz-mGmWXOV":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clone"},"YSYfnWrqxehaGJBB1HzlO":{"uri":"/melonJS/docs/melonjs/Vector3d.html#constructor"},"LRMD5psI9IuuUxyR4DIwp":{"uri":"/melonJS/docs/melonjs/Vector3d.html#copy"},"bwsNYxtMfmW7O7gdRMEvw":{"uri":"/melonJS/docs/melonjs/Vector3d.html#cross"},"RjHnFUO87Z-uKGcuKmoT-":{"uri":"/melonJS/docs/melonjs/Vector3d.html#distance"},"BNQutxKR7GHzr5kWjb4HY":{"uri":"/melonJS/docs/melonjs/Vector3d.html#div"},"FAa7TpSzgpFF1YFOQYBGU":{"uri":"/melonJS/docs/melonjs/Vector3d.html#dot"},"TzwXnsO_DpZNdI3UsZYpZ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#equals"},"TufSk3Y2QSXVHMAM7jZrC":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floor"},"mElb7qs57MnrznY2woYIJ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floorSelf"},"oaQQWxUmfOAg7qEWC8Hyf":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length"},"cvGx7S6ShwvOe3_2J5RMu":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length2"},"6kLC0U-3km44NNIKIFcwK":{"uri":"/melonJS/docs/melonjs/Vector3d.html#lerp"},"68FcnVRi-0GIH3Q-LLfpB":{"uri":"/melonJS/docs/melonjs/Vector3d.html#maxV"},"NVVNRNu8Sy2_R3nyYSaAW":{"uri":"/melonJS/docs/melonjs/Vector3d.html#minV"},"ikI6t6KwKTzLCP9CZ0B6U":{"uri":"/melonJS/docs/melonjs/Vector3d.html#moveTowards"},"_cc3Mfwu1jE0rmOI_b5f7":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negate"},"wjRKdtDYOn1LTYPDGQq0R":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negateSelf"},"LXXbNQ6T7ScfftGtg9T4u":{"uri":"/melonJS/docs/melonjs/Vector3d.html#normalize"},"4phjI1keKvbMzydoVWjiA":{"uri":"/melonJS/docs/melonjs/Vector3d.html#perp"},"yTslU_GiaqxmluDGCulEo":{"uri":"/melonJS/docs/melonjs/Vector3d.html#project"},"dHS16LT2gZBUP3WT5v6oN":{"uri":"/melonJS/docs/melonjs/Vector3d.html#projectN"},"eKMGLJXuBH05RypamSDfv":{"uri":"/melonJS/docs/melonjs/Vector3d.html#rotate"},"5kE8ATLki7U4wVWIQNuOQ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scale"},"qwjpSGkSQzsJF1gsTp5w_":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scaleV"},"SFpNPZcPYHcHMVOhc4EMS":{"uri":"/melonJS/docs/melonjs/Vector3d.html#set"},"ODkEsyqM3ibTuBa5c7Zxz":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setV"},"W6n78WwhG5p5KM-pJsV8z":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setZero"},"dn1R_-iS2kyL0T6nmTbX8":{"uri":"/melonJS/docs/melonjs/Vector3d.html#sub"},"4YYSrjiESpi0apnM0_vTc":{"uri":"/melonJS/docs/melonjs/Vector3d.html#to2d"},"wQ6QRudBYt2XC-zCKP1Gv":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toIso"},"TsBNSSTtwp8gdPEeaK8Rr":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toString"},"rUPpOriCAYTnCePL0g--0":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html"},"gG4UxtHsZasUQaKDUBK73":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#compositors"},"DmUnCPVk952bTyjUzvvzb":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentCompositor"},"dFdZm9a1dXnzaufrKUVqq":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentProgram"},"o84ISVZiux-g6MTBuYsRj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentTransform"},"VgC-RrWCPY6yxsLGL7keS":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#depthTest"},"pwUT512M_osmCb4eZLwn2":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#designRatio"},"oz8PJVgKGaKshJsdSqYQq":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#gl"},"wOvCshQEs57m1hedM5J7X":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPURenderer"},"nvsRgVISc8tnai5rjR33x":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPUVendor"},"5wv3f_QDoB_197NpQzdGU":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#height"},"3jS0Smf8axAeNmJNKLnJU":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#isContextValid"},"uk7Ssvzf7geHYRKSht1bV":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#maxTextures"},"FmAsmc8v58gp3mQQB3yob":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#path2D"},"mKM30mR-WsqT-94vUGspr":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scaleRatio"},"5v89bRth_etUBQZzqxLp4":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#settings"},"CK6nLyRc72pLMNOBa1UYm":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#type"},"YLwvvTOkRMYx_ewQg-Fc0":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#vertexBuffer"},"01so1xtUv7sZzXi568TnH":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#WebGLVersion"},"sK_9VBKbyFddzBEI1IczV":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#width"},"dQ-V0zftZcdWFgEilMO1b":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#addCompositor"},"OmGORQggYar_rbra0Rbd-":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#beginPath"},"pFYmQFKrumguVJpVM345b":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clear"},"GuAO8pd_oqUDIGw8EZ8LE":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearColor"},"8QThz6wrXsABPerSL0IU0":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearMask"},"uEt8ycdQ7raf0od6-b4Qv":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearRect"},"HRoe9FIw5EXWp-Gks6WWo":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearTint"},"YIc2NqJUUAS6JbLU7NRv8":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clipRect"},"TIRwtcziH3tEcqNUawNiZ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#closePath"},"N2QoTNIqmm1tJqBkXH8jW":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#constructor"},"SZp2rezcjEaD2td2fJMPr":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#createPattern"},"dt35WvjDLbqraw9Q72qI4":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawImage"},"LWnkGHO-0ih6YFK05-yYa":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawPattern"},"2D1mwTXdpua83ChbGHqEC":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fill"},"nfZApaqFkCwGXOVXz6zjA":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillArc"},"KmySJBDD0utHOuOuzC1Jm":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillEllipse"},"bOYs752NMtzc7KEj1oudL":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillLine"},"qU0GAfA73iq8XIhodrgyc":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPoint"},"QOXT2C7uRnj8VDylubA5A":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPolygon"},"T1gJVgOQMD-yZ6Xfilyqb":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRect"},"ZR-wMW2o4aig7d5BdZ4jm":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRoundRect"},"-SrCdaOrAWVpSZIH1YrbM":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#flush"},"h-mPYZt3qINLEOYWtcSWt":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getBlendMode"},"yG7lXwRsG8BLYqShWwfM7":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getCanvas"},"776JdV1WZaEcI6aoNY92w":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getColor"},"7UMwfNsrzQIr_41PeCEfn":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext"},"YV4LtkBwpEMwdA0GbI50n":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext2d"},"DzjHzGqL7YPjCU9C-D2Fx":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContextGL"},"DeTGkWEaZBjVVAEgXuGxN":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getGlobalAlpha"},"6AH7-zOnLxF6sdOXF1o7k":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenCanvas"},"0eo_p7bQHpuhlj7f1Om7K":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenContext"},"y-Jr-FrPD2AJL4tmALXzj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#globalAlpha"},"QrngU_AJ-RYkObStzUpZU":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#lineTo"},"g1xbbN0tRw4Wdw86_fDMj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#moveTo"},"6TmppzdiCPZiBediSY9J3":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#overlaps"},"NxiEsqK0JrQeALLxLllg8":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rect"},"6Cw-hNwvrS2JEeI63Nsgu":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#reset"},"YNkhKaQ23wTPHn0tqjAs-":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resetTransform"},"SHSLPfcZHUai_kV10BB5M":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resize"},"7k8jN4ZcxFiWWl5IPUVDU":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#restore"},"seld7tfwbMMvrDQf1q749":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rotate"},"_xPuH91-CgtgC5c78wSdl":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#roundRect"},"qp7bO0T6wA4KpuBNO45TT":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#save"},"Im0FnVygb5uy-07aKB7Um":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scale"},"k47exPFv7XSCskdEXyqxi":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setAntiAlias"},"2h3XRw-cYjX-Bmx8iDXE8":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setBlendMode"},"ar-TAoc1OeBDdWZoYByjh":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setColor"},"ZBKdzyCNtQudBxJXM_9vo":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setCompositor"},"IQ8ogTxQNeyfmNZ2LE_Gi":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setGlobalAlpha"},"jz-ruseYeMO6ZeaPcWKJp":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setLineWidth"},"-mfGkdcOFAY0KXSlumg24":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setMask"},"pUqPY_J1hW0g83yS1wnVt":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setProjection"},"yEP9eel-3nyxglH1Naumj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTint"},"qJgigmDuI4cUO35Cxke2i":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTransform"},"0e6I726kRegmByjljKOX_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setViewport"},"tT2LGhnEYrYEa-9uOsrBz":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#stroke"},"4wMkQAvCK0M7qOZXd18go":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeArc"},"rG5XTeCArE5HemKucVPar":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeEllipse"},"_HSK-VXJ5S_1TpzMxq8AY":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeLine"},"KMkb_WpoRmm7hBBZe7PHw":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePoint"},"kJmfjOu1nhCnKehbswMzX":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePolygon"},"lOJwYNCP8IL-CDIG7UK49":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRect"},"__VB8nC6yLyAvtuuC1Mhg":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRoundRect"},"90SadzDSLOAoV2yg-lC5p":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#tint"},"aO9jo8UNYVS7hFkheOkfb":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toBlob"},"nFwk-mmo4U1QTLP5MeVhK":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toDataURL"},"KIskpdCmj8cjYRwZhh4YD":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toImageBitmap"},"jsMH_AKZitl2rwS5H4yaI":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#transform"},"Mw2tbozecT7v4YxSB9-PS":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#translate"},"ZTKiAMTfnZKlTX_688jYA":{"uri":"/melonJS/docs/melonjs/World.html"},"muZZpmCyZGUw91URJ7APx":{"uri":"/melonJS/docs/melonjs/World.html#alpha"},"g1BSd4qFtBtC2GXu1Nav4":{"uri":"/melonJS/docs/melonjs/World.html#alwaysUpdate"},"zqI_u9G6F7GlYzJQjhKw8":{"uri":"/melonJS/docs/melonjs/World.html#ancestor"},"8vCVpSXfl8xFpJwCKjT96":{"uri":"/melonJS/docs/melonjs/World.html#anchorPoint"},"iJnp4-aCAg7HbqJnA7gXt":{"uri":"/melonJS/docs/melonjs/World.html#app"},"HmAyPhfSqPu97RFRwKMLs":{"uri":"/melonJS/docs/melonjs/World.html#autoDepth"},"UVGVsh4MUcOp8lxEiZcQX":{"uri":"/melonJS/docs/melonjs/World.html#autoSort"},"hNPbAA8EahkyGjK9hugg5":{"uri":"/melonJS/docs/melonjs/World.html#autoTransform"},"e3t2lwIHU7hnSidFHnxWU":{"uri":"/melonJS/docs/melonjs/World.html#backgroundColor"},"Mw5v3VbBskXXeCsD87-GX":{"uri":"/melonJS/docs/melonjs/World.html#blendMode"},"AQA6rc1X0FVi9RpmbS9iy":{"uri":"/melonJS/docs/melonjs/World.html#bodies"},"dIOFVOt-xdMpA-iIJlQtf":{"uri":"/melonJS/docs/melonjs/World.html#body"},"fFgVEAkmUhGYV-5yYYWAT":{"uri":"/melonJS/docs/melonjs/World.html#bottom"},"Hn4JHx79T0K3qd9SfY6Kp":{"uri":"/melonJS/docs/melonjs/World.html#broadphase"},"qd71f7ATcvpXFGc8kaKtz":{"uri":"/melonJS/docs/melonjs/World.html#centerX"},"tnKkocWtEk4pw0K8hZNYg":{"uri":"/melonJS/docs/melonjs/World.html#centerY"},"GPxRettowWtw8yeEf3aE0":{"uri":"/melonJS/docs/melonjs/World.html#clipping"},"vH1xhEjslMUiSwAC4Sk68":{"uri":"/melonJS/docs/melonjs/World.html#currentTransform"},"tRn60MmqY_hwOKM9dGVoR":{"uri":"/melonJS/docs/melonjs/World.html#depth"},"1Uf06Js3QRm46ioSCmmVQ":{"uri":"/melonJS/docs/melonjs/World.html#detector"},"e-qSFRo8WAnIpt0hNx8nM":{"uri":"/melonJS/docs/melonjs/World.html#enableChildBoundsUpdate"},"GlkMZu-Pa2uDDTfJNJOVt":{"uri":"/melonJS/docs/melonjs/World.html#floating"},"Q2IZxUbndLw2WvG5C7t1j":{"uri":"/melonJS/docs/melonjs/World.html#fps"},"9aoi57uN7Z9An1id6ckkk":{"uri":"/melonJS/docs/melonjs/World.html#gravity"},"3aANwdn17nGIxkfW610Lr":{"uri":"/melonJS/docs/melonjs/World.html#GUID"},"4o-qj_4ZHfPh7gQGGHL2q":{"uri":"/melonJS/docs/melonjs/World.html#height"},"ZTIQb5oiSN7qUHjYgQjuY":{"uri":"/melonJS/docs/melonjs/World.html#inViewport"},"z2h_-RoU_qv3vzf-UN4RE":{"uri":"/melonJS/docs/melonjs/World.html#isDirty"},"-b0KxaOH7uqOOvY4VlNdx":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedX"},"VcRgfZELCWYPx2rh6xAnc":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedY"},"OecI42xzVGUavp5o2462x":{"uri":"/melonJS/docs/melonjs/World.html#isFloating"},"njtw3H2C4Rz12gdzINdje":{"uri":"/melonJS/docs/melonjs/World.html#isKinematic"},"XcmfpmMUULf0-nZP1t9Ph":{"uri":"/melonJS/docs/melonjs/World.html#isPersistent"},"10Hl_bfkzg79dHmFZu1wa":{"uri":"/melonJS/docs/melonjs/World.html#left"},"pKvoecGbb6GVT26wncmgU":{"uri":"/melonJS/docs/melonjs/World.html#mask"},"O0PQgBStgPUFfKHLn0wbC":{"uri":"/melonJS/docs/melonjs/World.html#name"},"Bu-f7KuVLDhv8M7Ffh1Sq":{"uri":"/melonJS/docs/melonjs/World.html#onVisibilityChange"},"PzoAYLtpzXF3Zj_EVzgIu":{"uri":"/melonJS/docs/melonjs/World.html#parentApp"},"SZhdeLwmfYLjbROW91TaZ":{"uri":"/melonJS/docs/melonjs/World.html#physic"},"DYtEWfu_jtOD17cwE97Kb":{"uri":"/melonJS/docs/melonjs/World.html#points"},"6ldP6iPH_fTK9T98-563w":{"uri":"/melonJS/docs/melonjs/World.html#pos"},"xbu5O8I4zi5plBZ3dIrZ9":{"uri":"/melonJS/docs/melonjs/World.html#preRender"},"YMlo5QQfgNXPIg-_TL-We":{"uri":"/melonJS/docs/melonjs/World.html#right"},"Y3UDdoNqHzo7JUe2d2PGW":{"uri":"/melonJS/docs/melonjs/World.html#root"},"wb_5JdZZiUf-i_bckC71L":{"uri":"/melonJS/docs/melonjs/World.html#shader"},"cQEhhl3NWZNVkf_y-6JU1":{"uri":"/melonJS/docs/melonjs/World.html#sortOn"},"TC65FDlvEkcKvyV4Xog6C":{"uri":"/melonJS/docs/melonjs/World.html#tint"},"T2tlVqfsso3h_ZyBNAPEz":{"uri":"/melonJS/docs/melonjs/World.html#top"},"sVXVAeaEeVzPROfhcS4KO":{"uri":"/melonJS/docs/melonjs/World.html#type"},"nbM5olwcXp_h1FElQiKL5":{"uri":"/melonJS/docs/melonjs/World.html#updateWhenPaused"},"x6fe4U902w1RjUCyb9Lux":{"uri":"/melonJS/docs/melonjs/World.html#width"},"dLNKC41Dif1upJ1OKkzFM":{"uri":"/melonJS/docs/melonjs/World.html#addBody"},"wuvfcibiJlY2QBGH2_V4Z":{"uri":"/melonJS/docs/melonjs/World.html#addChild"},"OoUgnRWLjQjQLDAJ02XN9":{"uri":"/melonJS/docs/melonjs/World.html#addChildAt"},"Mwt1b9_dNY8_7v0ISX5gP":{"uri":"/melonJS/docs/melonjs/World.html#angleTo"},"DdmEQkXCxG362xQgLn3RG":{"uri":"/melonJS/docs/melonjs/World.html#centerOn"},"rJ3pks820X1DvCWUMRNqI":{"uri":"/melonJS/docs/melonjs/World.html#clone"},"4DlV_31T7W6Imc-GRF-XX":{"uri":"/melonJS/docs/melonjs/World.html#constructor"},"v-8BRPQZjdayXTHLYz_ht":{"uri":"/melonJS/docs/melonjs/World.html#contains"},"8i95OyzEScNIboHDqVSAN":{"uri":"/melonJS/docs/melonjs/World.html#copy"},"7J5fh4V_IUs57y220GTaC":{"uri":"/melonJS/docs/melonjs/World.html#distanceTo"},"hGnTLIuzXqzQdmp6ohmio":{"uri":"/melonJS/docs/melonjs/World.html#equals"},"j6xgu2Wk9R0nUGt4LEHz1":{"uri":"/melonJS/docs/melonjs/World.html#flipX"},"YfOm_eFxyC6CHelh_fX2q":{"uri":"/melonJS/docs/melonjs/World.html#flipY"},"yU9GNtYPauEJfrmk-3y1A":{"uri":"/melonJS/docs/melonjs/World.html#forEach"},"gq-pkrqdcLvROueE-gJ7j":{"uri":"/melonJS/docs/melonjs/World.html#getAbsolutePosition"},"XNBya7k42gUU_j8L8fIu9":{"uri":"/melonJS/docs/melonjs/World.html#getBounds"},"BGRqdcezQ8VEtRIamywgF":{"uri":"/melonJS/docs/melonjs/World.html#getChildAt"},"_chmXmh9RjnmcDIfn79rX":{"uri":"/melonJS/docs/melonjs/World.html#getChildByGUID"},"THj7VT_aaPY3o54D1PrqX":{"uri":"/melonJS/docs/melonjs/World.html#getChildByName"},"IjgrjicHBu1RozV5lg-a3":{"uri":"/melonJS/docs/melonjs/World.html#getChildByProp"},"Qur3oILBC7kpbXmdJydYB":{"uri":"/melonJS/docs/melonjs/World.html#getChildByType"},"n9U_2ZEchTYmkEcKFnHXs":{"uri":"/melonJS/docs/melonjs/World.html#getChildIndex"},"fBBLuZEqCa4solb5UzZFx":{"uri":"/melonJS/docs/melonjs/World.html#getChildren"},"EAl12ZySanENPv97w4K1A":{"uri":"/melonJS/docs/melonjs/World.html#getIndices"},"qt2_tZ91qjAAv7LFPMrV1":{"uri":"/melonJS/docs/melonjs/World.html#getNextChild"},"2axqnBz3ngVlLfQTHVXUK":{"uri":"/melonJS/docs/melonjs/World.html#getOpacity"},"l9P33cpGxM0YpfASOlSBh":{"uri":"/melonJS/docs/melonjs/World.html#getRootAncestor"},"cNG2ViUHmyPur3wPdd5Dl":{"uri":"/melonJS/docs/melonjs/World.html#hasChild"},"1DWHU7-kgmim5SiDS1jOW":{"uri":"/melonJS/docs/melonjs/World.html#isAttachedToRoot"},"ta5pciD_MGEjfXdlGcMDX":{"uri":"/melonJS/docs/melonjs/World.html#isConvex"},"0vR3e_kxKsX5fZk6LCpvA":{"uri":"/melonJS/docs/melonjs/World.html#isFinite"},"eRf9cO6zfhTob62Zo2fTT":{"uri":"/melonJS/docs/melonjs/World.html#lookAt"},"nVSuYN_WR5PDwT4BOSUAl":{"uri":"/melonJS/docs/melonjs/World.html#moveDown"},"qDSZfiJbJQtQBqVLnwXSI":{"uri":"/melonJS/docs/melonjs/World.html#moveToBottom"},"b7fUCfMHV2PCm7BBn1C4t":{"uri":"/melonJS/docs/melonjs/World.html#moveToTop"},"47fFsT9SypCERNzhuXSQH":{"uri":"/melonJS/docs/melonjs/World.html#moveUp"},"JKxN2JjnR4YVcbuJmNGsC":{"uri":"/melonJS/docs/melonjs/World.html#onChildChange"},"Gz7jcnO7KdakjAdkDLG84":{"uri":"/melonJS/docs/melonjs/World.html#onCollision"},"CISbZNjFmvl4VenLbBzhT":{"uri":"/melonJS/docs/melonjs/World.html#onDestroyEvent"},"CDNRCilOYjNxZXCXhLt0r":{"uri":"/melonJS/docs/melonjs/World.html#overlaps"},"iNBWABTb9MGjqh22_OVxF":{"uri":"/melonJS/docs/melonjs/World.html#postDraw"},"SmfYyZN8_OBrFBr-5OMOJ":{"uri":"/melonJS/docs/melonjs/World.html#preDraw"},"kCiNOe1ZbiEN9yuRuonyb":{"uri":"/melonJS/docs/melonjs/World.html#recalc"},"soH-T-KK-KsaI_q4sNTg9":{"uri":"/melonJS/docs/melonjs/World.html#removeBody"},"B2yvOaAL_h-lDMP7T67HK":{"uri":"/melonJS/docs/melonjs/World.html#removeChild"},"kkLKWDjR69qAVw0csBCxD":{"uri":"/melonJS/docs/melonjs/World.html#removeChildNow"},"BmotH6YZseicIHsqAA6xZ":{"uri":"/melonJS/docs/melonjs/World.html#reset"},"y_Z0j4Dkvlryo33-LI7nk":{"uri":"/melonJS/docs/melonjs/World.html#resize"},"HsHDUjDtT9xCcXhlMoIop":{"uri":"/melonJS/docs/melonjs/World.html#rotate"},"SSgqGTYhRpTVgMBvhSMiL":{"uri":"/melonJS/docs/melonjs/World.html#scale"},"BNlJfgEJdo1vJvqwozpw_":{"uri":"/melonJS/docs/melonjs/World.html#scaleV"},"kTSAc-qUYzOFkUqdZlFig":{"uri":"/melonJS/docs/melonjs/World.html#setChildsProperty"},"MJlNUtE1fTZyG3x7oqtLp":{"uri":"/melonJS/docs/melonjs/World.html#setOpacity"},"Psh81KqrIUFQ8lDMbbOZQ":{"uri":"/melonJS/docs/melonjs/World.html#setShape"},"lFRL8nwIp0tw-fdaYHsb8":{"uri":"/melonJS/docs/melonjs/World.html#setVertices"},"wd8-SxgOkr_Y4tZMnhGtP":{"uri":"/melonJS/docs/melonjs/World.html#shift"},"i5YYLJRTiGaV4Zhr7qR-s":{"uri":"/melonJS/docs/melonjs/World.html#sort"},"ZNa5Kf0oEOFAYFhr8p6Sv":{"uri":"/melonJS/docs/melonjs/World.html#step"},"rg2n-REb1Fv125D8UKKeQ":{"uri":"/melonJS/docs/melonjs/World.html#swapChildren"},"v8aoOAsoLp1MC6As5lR-E":{"uri":"/melonJS/docs/melonjs/World.html#to2d"},"q-yLZXh9hfW2zdyCf4JXy":{"uri":"/melonJS/docs/melonjs/World.html#toIso"},"HjLYc1je2ak0yWKJ-Dw0v":{"uri":"/melonJS/docs/melonjs/World.html#toPolygon"},"LYMguiqCAV86T1v0Q518-":{"uri":"/melonJS/docs/melonjs/World.html#transform"},"DwUTVXH12IDciXX2kOPL5":{"uri":"/melonJS/docs/melonjs/World.html#translate"},"LF7cXtfnpdqlPwrxG9U9e":{"uri":"/melonJS/docs/melonjs/World.html#union"},"QAmog5ODSUQU210_F3OpL":{"uri":"/melonJS/docs/melonjs/World.html#update"},"XQu7ieD__hxkPR3DXiQFm":{"uri":"/melonJS/docs/melonjs/World.html#updateBounds"},"tqqdWB_TDkQCzfJ8r33or":{"uri":"/melonJS/docs/melonjs/World.html#draw"},"GGduFAqDvmuYqsI4mAfJS":{"uri":"/melonJS/docs/melonjs/World.html#bodyApplyGravity"},"JuntWETlCS5204t4Kixvl":{"uri":"/melonJS/docs/melonjs/World.html#onAnchorUpdate"},"orrTR5LFPhQaHTX6jfZ6-":{"uri":"global.html#AUTO"},"gWhrG8w4H9eNncApFTj8Q":{"uri":"global.html#CANVAS"},"STgZOkgTD56suUWD1_yAI":{"uri":"global.html#version"},"w4IzXpgKu9RuoGxjNrGqy":{"uri":"global.html#WEBGL"},"zo4PFeuXbeHhPnK0NFuDy":{"uri":"global.html#failureLoadedAssets"},"7YMu-c_jPA-jys-6DtpDT":{"uri":"global.html#imgList"},"FIAFXp0Mkd1k3O2HjgMXg":{"uri":"global.html#initialized"},"ooVTB9u_gQQDwRYrS1eR5":{"uri":"global.html#parserInitialized"},"2kCgpBRjAHOPBDmEkwdNB":{"uri":"global.html#parsers"},"O25_ilEUOVonPlZYBp0GH":{"uri":"global.html#skipAutoInit"},"BTO4K0iWNEpCVoPHTJMBW":{"uri":"/melonJS/docs/melonjs/boot.html"},"kX69_da1xCrxrw8Nizftm":{"uri":"/melonJS/docs/melonjs/consoleHeader.html"},"DICbjfGSd79QqZ9hPMqx5":{"uri":"/melonJS/docs/melonjs/fetchData.html"},"OigXv-95l_9RpTVoswxh5":{"uri":"/melonJS/docs/melonjs/hasVideoFormat.html"},"RMBfsgun5Pz6akFWElvkm":{"uri":"/melonJS/docs/melonjs/pow.html"},"zfY0snVtF7Jeo6XwfYVOg":{"uri":"/melonJS/docs/melonjs/warning.html"},"2WCdkS7eDMfAU89ui6r-o":{"uri":"/melonJS/docs/melonjs/onresize.html"},"mGczkE87P0EJN14SYJESF":{"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-htm-B3rwqQpk61LEH_QnJ","name":"","type":"RootDoc","members":[{"id":"VBnZQZMRRCe16uH2cqoqW","name":"audio","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"HmaX17lvdT5EjKc1YY7mH","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":"ml4RXpIA_htK4BKxDJg5T","name":"disable","brief":"","scope":"static","type":"FunctionDoc","description":"

                disable audio output

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H8DgqzcIOgcPzBcHkJH2i","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":"wqIKq-o9uX9F2UkjAf6e6","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":"xAvALYyt-l9FO6ZrAuL0h","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":"cHYU5KCcSB92fXawyAM0X","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":"dOOOwYCQgwUlmK_WWUIsZ","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":"fh8ABOVvyygBr-C8F1lzB","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":"U6FR_l_lKvALmRAcw2vmA","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":"X9jVXmJ-yjCY_0Z48pFYg","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":"F6sHWYChb05uMsMwhMxqa","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":"FWWsZq6ejS3odSrbSjxNz","name":"muteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

                mute all audio

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gP6ht5l6l4KS7jAVBPVQ5","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":"xpyXl6A17XQ6mtYR9Hg39","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":"mXOdAGQHVmOvgocHXp9ym","name":"pauseTrack","brief":"","examples":[{"caption":"","code":"me.audio.pauseTrack();"}],"scope":"static","type":"FunctionDoc","description":"

                pause the current audio track

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"szWRBdkkgwhaAbGFjKY9J","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":"0lma2DCG5SnnJjzmB91aF","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":"F9FXAptnjN1Ndc1mVaRt2","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":"ZGu2RTxIMfZ1Arns_zWbm","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":"rEpQqNK59b05DJgRduQym","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":"IQE7ZmD5YepEv7KQiTbU_","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":"DT4_Eb-QmRkGyPMf4prhs","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":"JVEhkTHJyKOqCUzLdLp44","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":"vpuSlYE2wqx4JDthuynyV","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":"_1WQ_DbkB9FftA3wcvL6q","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":"0xDQhc5lpZsTCqWcpLNyC","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":"74I2rzBKRpK_UXL84ee77","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":"umw4WeL2wiWP2KhSmVHUO","name":"unmuteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

                unmute all audio

                ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"NQL9RWIPZOhHjwfupmTl_","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":"tyqDGr2e-Fq-QgdIWYiL3","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":"6Qm7fy5bE_a6MPpX5biTU","name":"ACTION_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                e.g. doors

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

                all of the above (including user-defined types)

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

                collectable objects

                "},{"id":"32lRWmZPLMKqngUN8EtZa","name":"ENEMY_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                enemies objects

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

                to disable collision check

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

                to disable collision check

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

                non playable characters

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

                playbable characters

                "},{"id":"pDKM-4XfSpSqiznIepYgD","name":"PROJECTILE_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                e.g. missiles

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

                user-defined collision types (see example)

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

                e.g. walls; for map collision shapes

                "}]},{"id":"WX8z2_750YSJZLJgmCBT-","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":"YcXTsS0mEzCf6Bcf66feU","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":"QRD28aBJ_iE7UBwlAlZwx","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":"H8WlYa_gL--b9Uq09mKrN","name":"device","brief":"","defaultValue":"false","type":"NSDoc","description":"

                device type and capabilities

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

                The device platform type

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

                true if the device is an Android platform

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

                true if the device is an Android 2.x platform

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

                true if the device is a BlackBerry platform

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

                true if the device is running on ChromeOS.

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

                true if running under Ejecta

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

                true if the device is an iOS platform

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

                true if a mobile device

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

                true if running under Wechat

                "},{"id":"hI8kGOr_P0h4-6d48LchA","name":"Kindle","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is a Kindle platform

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

                true if the device is a Linux platform

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

                true if running under node.js

                "},{"id":"_q1aKS8d9BzJPhsfDC0z7","name":"ua","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                the user agent string for the current device

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

                true if the device is a Windows Phone platform

                "}]},{"id":"x-2GR0MEHj7I4-k-ySJfm","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":"H3W8_a9xw8qVSyGOtjdDZ","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":"ZNKPGP_ivtEYxt6wu6Idg","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":"MlAnD2OPChPa_35ng96c2","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":"w_kr4mrYBNjdEP5cxr_og","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":"WSoppfdCdubRmTISE4Dvt","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":"G4snGA3JnjvDfOVLhHg44","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":"64p6lhD-XYviOMjbwBHGy","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":"1T2ICI1zRrsDPiqtZHvDt","name":"hasAccelerometer","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

                Browser accelerometer capabilities

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

                Browser device orientation

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

                Browser full screen support

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

                Device HTML5Audio Support

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

                Browser pointerlock api support

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

                Device Video Support

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

                Device WebAudio Support

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JWb97Hn9JrdsvbyY4GL1-","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":"oUxdTdzmsUgQSBGpZyXro","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":"XrewUR_s5iQADc9B3Eiwq","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":"3Xw68uaIpZYMJWE84eo4_","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":"b0Xpqn7zYjs-3QxYu1fsq","name":"nativeBase64","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Browser Base64 decoding capability

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

                equals to true if the device browser supports OffScreenCanvas.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FWYugQ3ccYQANbJ0Hz5K4","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":"qZyWQxOmKoA-v4UrnMHMG","name":"platform","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                the device platform type

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

                True if the browser supports Pointer Events

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"whbrQQQUpjY4vghfYPOdG","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":"hArxuRWHCeObGZ3xfia0M","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":"YpQFMYGpmqEiCON3ckppO","name":"sound","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Returns true if the browser/device has audio capabilities.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OdhKQPwxNB8i-c_BEu1Bj","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":"EEo8cLz1GwJwe9XsFGtob","name":"touch","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Touch capabilities (support either Touch or Pointer events)

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

                True if the browser supports Touch Events

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

                W3C standard wheel events

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rGWYf0AuayalaD2M1vD9Z","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":"rjMCxaLC6A-4wOcqurrKP","name":"exitFullscreen","brief":"","access":"public","type":"FunctionDoc","description":"

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

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pjTVXELzN_G4KLsyupLpC","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":"4g_e63cy0xcYmMqv809di","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":"tgKTU4D2neLZfs86hjLpp","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":"KwVimHGt0bFNWP2WZMldJ","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":"wQWYM5zG81CQ_zZczxwp6","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":"Knu0Z1oc6F79d98pk_Ovx","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":"RXpJ9FtrwxzmUs6CHqUcX","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":"6pvlB9aMnnhC2woet5rZA","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":"lDoJZaMX86opCYfDqL-rn","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":"bVwntAZ7EMooKv-kcfpiF","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":"hsQ3ycKBaNBm4wOr_cuST","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":"mhqdEl1nFN8-4knQ4MUWo","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":"GUXI0oHWPF_6kQ7tx1YW7","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":"cRI8W_5-5y8DoO61TfZGY","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":"jMnZU_bRAEM_exho8maR7","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":"6Z3OQzUh_3TCaVkEjtkxh","name":"unwatchAccelerometer","brief":"","access":"public","type":"FunctionDoc","description":"

                unwatch Accelerometor event

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

                unwatch Device orientation event

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3O-ZWiB1B5p87-SgDrUjw","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":"BOSILm0T412rH3_ycIoy-","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":"EA5HY_P-Ov_dMYvOD4HYj","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":"-VJwOGIJQCcS8QJVublNn","name":"event","brief":"","type":"NSDoc","description":"

                an event system based on nodeJS EventEmitter interface

                ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"RkFw4tPC3BSmzZgQIUP_0","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":"tf2vBEEpOylQuDYzO0-IX","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":"tnm1qyEtwX10KZOI-I4uo","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":"XefML6DkGPInQSH3gTzHB","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":"_jggVSVBis4EopllibDFY","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":"EhMzMaUQCniPPsGSa6gT_","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":"08fj6F2sPTzblRS3-jVI4","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":"S8uUpVPMP349SX3z56mmk","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":"QzHPe1x7nrVsFtpwPRvW2","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":"FzkTaKYFRIh8hWCRjvfMb","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":"76GbDsQ8PqpCHBrqGu064","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":"1GLKEewMyBvNB7jVtnbM0","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":"lK4dmNEsolNUs4kYKNAqA","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":"hpU8KDk-VPartI3cq2lyV","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":"pX-LfFc0BAygnvBGiRJPk","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":"UFX2gysJKKVDAwbvOqeb4","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":"I4PvkVjxmg_tQsIhuL_FM","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":"7BBb6yV2hs3xXrEHcxHKv","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":"vbPvAv_WIU-T9YaN886gx","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":"PT-vYlRrRRpuionrmrfc-","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":"TVExXU0sV7ZInRVcPhuXg","name":"LOADER_ERROR","brief":"","access":"public","defaultValue":"\"me.loader.onError\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when an error occur during preloading
                \nData passed : {Resource} resource object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QI-PMS0fFwJTohP1-zf41","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":"oCu4ZlMV3WAZOi8893jkf","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":"VuYymC9f2yddq54L-SRvG","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":"Unm6J9bNUjk5sU-RrnJFv","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":"ca3IIHl8An_l75UszlXnw","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":"-kr7huXI7pKCOt2ORWuB7","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":"x-yiyrQQODtX40KvoX8XD","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":"23amkesSdW9FBVGXNZmKB","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":"1Yv4lseAAZLlA3Y77Q3EU","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":"U42F7p3MxgrMUb42veR0P","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":"6nUcsNTjRezsz-FcmSbgB","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":"MLgaBiSisoZlDZ7g2bI0I","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":"CgRSFetubyhKA_MadWkeG","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":"p0mKsAQtA7PGz7vRYzEEc","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":"w4MpGRRwSM43-2iQNZYyx","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":"bAXHHFLhbDFajjx0Qr8z7","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":"ns9Q93GdafevRkTHRcrdY","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":"NDFyFnIV8gR2hLTvYIi89","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":"r16NQeuaoqioQSZ65iOHH","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":"S25YdkaGQ7-qiJHbaoLlz","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":"az5dfGKjIhDMLgbTOGpCs","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":"P33nHUy2_KfK4X7gdc9qD","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":"dRsZ54ileFe0z2q-H9-1i","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":"xSjj79JbvDyu0mnNTLL1H","name":"input","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"ZJ5sAqelVVcowZzX_zT6m","name":"GAMEPAD","brief":"","access":"public","type":"NSDoc","description":"

                Namespace for standard gamepad mapping constants

                ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"YXaLCDJXAd1j_z0SHLYEX","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":"FN8ITYZtEOb3rau6lmW3V","name":"A","brief":"","defaultValue":"65","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fwh5bRnh2cdjk9exf7022","name":"ADD","brief":"","defaultValue":"107","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bZByKiRk3aMYpQDtJe9oq","name":"ALT","brief":"","defaultValue":"18","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d8-9bmdA-4HEHjprkoNRQ","name":"B","brief":"","defaultValue":"66","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kEcNh5Dk5AbeZB4Zu5VaR","name":"BACK_SLASH","brief":"","defaultValue":"220","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wHpJU3lHH_uxcik0-D7Nf","name":"C","brief":"","defaultValue":"67","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ahTJJdCIKfkEhAp58glse","name":"CAPS_LOCK","brief":"","defaultValue":"20","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8PLTMQWExKzonCGXBcNzn","name":"CLOSE_BRACKET","brief":"","defaultValue":"221","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mtv0yPZ6tl4Np8jWyXcI5","name":"COMMA","brief":"","defaultValue":"188","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zAkwOCEQwT51n_ykGuwa2","name":"CTRL","brief":"","defaultValue":"17","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KoeiPINAS2k3BSmFWBOuY","name":"D","brief":"","defaultValue":"68","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JR81RH0plqITIPP2XzXKK","name":"DECIMAL","brief":"","defaultValue":"110","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-5Clx-6nryKRYFmhnDIkS","name":"DELETE","brief":"","defaultValue":"46","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fH-89EMbhePasK2kEQ41u","name":"DIVIDE","brief":"","defaultValue":"111","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iSJjtvbElneSR6TXjkTev","name":"DOWN","brief":"","defaultValue":"40","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HSLbMfmWoOVyYTKx7HXcg","name":"E","brief":"","defaultValue":"69","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qaKkJxv3JzLVyyIATrxLz","name":"END","brief":"","defaultValue":"35","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DqWgpP7JSKpeLit3WR0T5","name":"ENTER","brief":"","defaultValue":"13","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pqcf4pKhlyypHMVDd3kdK","name":"ESC","brief":"","defaultValue":"27","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RsXc0-pZGfHaMvN3tkyot","name":"F","brief":"","defaultValue":"70","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j4kveeUp6vb8qSocB2nXk","name":"F1","brief":"","defaultValue":"112","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5Ptq4Aw8jPwb9lJMPCENi","name":"F10","brief":"","defaultValue":"121","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T4BIl3XrAIN-E3wHhM4GM","name":"F11","brief":"","defaultValue":"122","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vo-pmXruxon3ijBKjP-p4","name":"F12","brief":"","defaultValue":"123","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YZ2WYCRNIXLzvbRc-1X_x","name":"F2","brief":"","defaultValue":"113","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9Z4h1Poj9jgGJCAwRqVzH","name":"F3","brief":"","defaultValue":"114","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iQnlj3a5bUaGAIoxmCbAN","name":"F4","brief":"","defaultValue":"115","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"By-AscH8hXCHdTyTyF3eY","name":"F5","brief":"","defaultValue":"116","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TCbSIs3PRUffx6YXsDyXE","name":"F6","brief":"","defaultValue":"117","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v7ZAQ9HXkqvecPVdvoeuf","name":"F7","brief":"","defaultValue":"118","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eTuv8-dhqnEeToivfuFKe","name":"F8","brief":"","defaultValue":"119","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UCQ47ybTKLLjnEUol8Ixp","name":"F9","brief":"","defaultValue":"120","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hbB5yhjEdP34bV7vFN2cH","name":"FORWAND_SLASH","brief":"","defaultValue":"191","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5BY0UCV2CIdeqkwPAK87n","name":"G","brief":"","defaultValue":"71","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ctznyz7JYIW6CHPHt-TjZ","name":"GRAVE_ACCENT","brief":"","defaultValue":"192","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YxFkYr-sAQrShTOsL8W8r","name":"H","brief":"","defaultValue":"72","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"anyb6euwTtJSginvtNVEw","name":"HOME","brief":"","defaultValue":"36","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CelZugpD8fZU_rpwF5akk","name":"I","brief":"","defaultValue":"73","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DzZuzHdkjukpBnqxMUcEB","name":"INSERT","brief":"","defaultValue":"45","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y1OO64MY9llIfY49qybU_","name":"J","brief":"","defaultValue":"74","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o-Y4FT497-mMmi8GefV-C","name":"K","brief":"","defaultValue":"75","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NoLJbm8hr5gqHk-C8ouhf","name":"L","brief":"","defaultValue":"76","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AlICsdFYyLxWFyxhyV8aI","name":"LEFT","brief":"","defaultValue":"37","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wz5TJS19eYU00Y1bgdujA","name":"M","brief":"","defaultValue":"77","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H6PtL8lGeYbtEBsC-X488","name":"MINUS","brief":"","defaultValue":"189","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fnGImCwcxUxv6B0_fzSWp","name":"MULTIPLY","brief":"","defaultValue":"106","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V_DtHlRhQLvuKlBmxXPB3","name":"N","brief":"","defaultValue":"78","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dtEQODbN632BQNTTMocVg","name":"NUM_LOCK","brief":"","defaultValue":"144","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WnfHEmKU259cI9O6BkB5Z","name":"NUM0","brief":"","defaultValue":"48","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3p9SCXLy7rZ-4-uOj13Aw","name":"NUM1","brief":"","defaultValue":"49","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wwoQwZhWy4HTyP-G9VR63","name":"NUM2","brief":"","defaultValue":"50","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bDFcIVUxdVqRa6Of_qzNx","name":"NUM3","brief":"","defaultValue":"51","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_z3H6cj58zpuyiNhvW7Yi","name":"NUM4","brief":"","defaultValue":"52","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7BIlNDD5s2rz0WUPVu1u4","name":"NUM5","brief":"","defaultValue":"53","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ERJt2Vve2e_fEjdYev2WW","name":"NUM6","brief":"","defaultValue":"54","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FXLSs5Q2aJFNAXFcGO7kn","name":"NUM7","brief":"","defaultValue":"55","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_T7CiVZ4aH4-pIMB5blk2","name":"NUM8","brief":"","defaultValue":"56","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J7iOsAuOVeilSE06LVqzY","name":"NUM9","brief":"","defaultValue":"57","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zvSzUdphKqfFAKhsBCMkd","name":"NUMPAD0","brief":"","defaultValue":"96","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cRDFI8hjUwEpRTq2TFyHf","name":"NUMPAD1","brief":"","defaultValue":"97","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bWa5l3s-kXGt2D5JyQLLD","name":"NUMPAD2","brief":"","defaultValue":"98","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XdUEUNVBfSaO42v1KvnqB","name":"NUMPAD3","brief":"","defaultValue":"99","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BY7zuu5gKdqpk5q7y06UM","name":"NUMPAD4","brief":"","defaultValue":"100","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4osXXUPX_9xq5c8_dvpQO","name":"NUMPAD5","brief":"","defaultValue":"101","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aCuWRlp8OzuC0YyDMGHvK","name":"NUMPAD6","brief":"","defaultValue":"102","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yrvceBHM_lE3rhuKrHiV3","name":"NUMPAD7","brief":"","defaultValue":"103","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ovq0NX4Z1SWxDYJZrB0k6","name":"NUMPAD8","brief":"","defaultValue":"104","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZPOw1gKNV-sFvaVBI__Ix","name":"NUMPAD9","brief":"","defaultValue":"105","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ztjo00WByxPZT3fVak3oJ","name":"O","brief":"","defaultValue":"79","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8BOv6JldpQndk69oqtWVX","name":"OPEN_BRACKET","brief":"","defaultValue":"219","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gkeiA00cMBlTSAG9UKSkS","name":"P","brief":"","defaultValue":"80","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GkiRv7-wTTEAaDbZpPueH","name":"PAGE_DOWN","brief":"","defaultValue":"34","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ReMZ0zKgwUiNy6pI6ecW-","name":"PAGE_UP","brief":"","defaultValue":"33","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u3lqPSllRdGajuqhppdJE","name":"PAUSE","brief":"","defaultValue":"19","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m6ALN8GKcJooTToxXo-TL","name":"PERIOD","brief":"","defaultValue":"190","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hyiVTJ2TacaLP33FLdpdV","name":"PLUS","brief":"","defaultValue":"187","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UnOFnkPtNVnW1af2onfUx","name":"PRINT_SCREEN","brief":"","defaultValue":"42","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4N30c14Kpu9xsxhDuu2DS","name":"Q","brief":"","defaultValue":"81","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"az_S4g2R9sCgAJmtpXChz","name":"R","brief":"","defaultValue":"82","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fMH3ffs2vNZbU7rtEhU4Q","name":"RIGHT","brief":"","defaultValue":"39","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6xiBnHAVzVy13VLFMRfIg","name":"S","brief":"","defaultValue":"83","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7ladjbyD4DGpH5maRiO55","name":"SCROLL_LOCK","brief":"","defaultValue":"145","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8wuVUE0mEJBNHW3m6MBM3","name":"SEMICOLON","brief":"","defaultValue":"186","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pBnRan1Und8KbApK0Lv56","name":"SHIFT","brief":"","defaultValue":"16","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z6nhfGQeX5grv0l2lxmgD","name":"SINGLE_QUOTE","brief":"","defaultValue":"222","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dB4ZOaPE0xzarOe_HOEzN","name":"SPACE","brief":"","defaultValue":"32","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4RN_pYYJG6UwccFJRJCLk","name":"SUBSTRACT","brief":"","defaultValue":"109","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BGmFfYr1t4blhFfvf2Dom","name":"T","brief":"","defaultValue":"84","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4Wwpy_TYOxztT-0hhPOcp","name":"TAB","brief":"","defaultValue":"9","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4Btlb67zoGaDJajiZsnPl","name":"TILDE","brief":"","defaultValue":"126","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Yk3GtwuI9O9_W7MlUaw1R","name":"U","brief":"","defaultValue":"85","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cv4dS2ZRJUi4L8D7MHuei","name":"UP","brief":"","defaultValue":"38","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wFK14W9BiE5zIqcKAmBLn","name":"V","brief":"","defaultValue":"86","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yxENAnkL7olh2txcecs3X","name":"W","brief":"","defaultValue":"87","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PxMtZgarCgzZmYFhqjMxM","name":"WINDOW_KEY","brief":"","defaultValue":"91","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_xC85o7rLMxe_--QmjfJ9","name":"X","brief":"","defaultValue":"88","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xBrN8aQ-TVMjYRGSQjhQV","name":"Y","brief":"","defaultValue":"89","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9pv66Ze2U0V5mwuD_65sj","name":"Z","brief":"","defaultValue":"90","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"vKZqvWhleYV69uXcA-BHX","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":"-0sjJcIozIWegc9tF9vv2","name":"locked","brief":"","access":"public","defaultValue":"false","type":"PropertyDoc","description":"

                    indicates if the pointer is currently locked

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

                    Pointer information (current position and size)

                    ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rPxZycbvp7Wv_dEIH0T8O","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":"nqAIpulQh9TJQDLyFzWWy","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":"T_WdPZIUaI7OjI6R_l7LU","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":"YyX_KVnHZnjxMdotR6IUy","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":"0YDJ9Ge8kLMYc5_UN4YSd","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":"_eHk4UrWT9F9THBB2qRr8","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":"MnFNlm2y-FL8S8-2wQKB0","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":"DHWYORwv0jnP1nbNkCrGr","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":"WXiw_Fbca6IOBE1NXZhkp","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":"efoJLTaMxbMhzEbFvJ1-y","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":"6UhDjMG09hKSs4GOE6udq","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":"OV4Fzvkhc95IuoqY5zK_6","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":"tjJ33ZLu2QRAkZvNbyQJT","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":"ZFkV8PpdRa4U5MetTLxlH","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":"b1Y8_-3AjrvnV4Veu4Jl3","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":"OLSB9hgRLJDJltzNIR1db","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":"SDE1hGgcKGV5fsHx9Eceb","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":"rQ5iMWgVo8zKHUTIh4FWs","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":"mLXR9tLOb67v7kc0FY25z","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":"w4DizTvnJUkZsC8Xz38k3","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":"aL2adq1gyrr20V8mthrrr","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":"kE6IKUdK8MLRbNL-H-aCH","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":"woZ7cfUmalqacIcLMnLY4","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":"dmMPf382tLeJ93yld905C","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":"ts7nryyHZIqdUw9ioE3v1","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":"bIFxaEYYa_T4JSURqzsV0","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":"x4jG4KDoBg6EaYqwLanlx","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":"GX11bJx4sMJWLz4sHTr7L","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":"PwuUyw0tQGnwc-M6ThvPY","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":"Im0Gk7CwTs7zQ-R_zT2qK","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":"tYO5-wqdiiF9HTxMl08nl","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":"k8aaikoice2X_ZlaJfhdi","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":"MIBNtQwqnZcS0QpUlvUZH","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":"ilq4a53Sc6znyaTQ7d4fO","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":"MpyRkKExSHO4WEsHJaYx4","name":"loader","brief":"","type":"NSDoc","description":"

                      a small class to manage loading of stuff and manage resources

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"uVhCEbzXkX9Xmml_vrISo","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')\" }\n// video resources\n{name: \"intro\", type: \"video\", src: \"data/video/\"}"}],"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":"4g3LBMPDhjF1mFUcl6Osv","name":"autoplay","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      Set to true to automatically start playing audio or video when loaded or added to a scene (using autoplay might require us..."},{"id":"VJzGPNyAVkYYhuuLnOpvX","name":"data","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                      TMX data if not provided through a src url

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

                      Set to true to automatically loop the audio or video when playing

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

                      name of the asset

                      "},{"id":"smcHsZe1ar_bL-XRoJP7B","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":"ouVkKOTB0ELxz9SVVxooJ","name":"stream","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      Set to true to not to wait for large audio or video file to be downloaded before playing.

                      "},{"id":"vMmibaSgi_vTU4xR-L9WW","name":"type","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                      the type of the asset ("audio"|"binary"|"image"|"json"|"js"|"tmx&qu..."}]},{"id":"JG7H4TOdkjRNiAM-tlNm6","name":"crossOrigin","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":" // allow for cross-origin texture loading\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 and Video data element.\nBy default (that is, when the attri...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b0mghflpacivJClAkH1oW","name":"onError","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// set a callback for error notification\nme.loader.onError = this.loaderError.bind(this);"}],"type":"PropertyDoc","description":"

                      onError callback
                      \neach time a resource loading is failed, the loader will fire the specified function giving the actual...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_8OyeMa8MMsXlfP3wZ1-l","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":"ovFCTIfjf3te2eLiuKHPb","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":"XJkY4gA2dzYrfE0BzLLam","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":"kTb8wjFPWoI2NAHjSMTZH","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":"sItLexmvUmI3rOI7TQwGR","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":"l679hKDvlYZVDSFnfQ4Tr","name":"getJSON","brief":"","type":"FunctionDoc","description":"

                      return the specified JSON Object

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

                      name of the json file

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"JSON","kind":"canonical"},{"value":"JSON","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uk7Byc8200RB_rfmt546T","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":"84i3I7eQTKZVIQ9TcSCi-","name":"getVideo","brief":"","type":"FunctionDoc","description":"

                      return the specified Video Object

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

                      name of the video file

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UGDEyeapFgJRUdoc_Tf1U","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 // load a base64 video asset\n me.loader.load({\n name: \"avatar\",\n type:\"video\",\n src: \"data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZ..\"\n };\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":"QNqc5_GcZEMVJUFWCmWEE","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 // video resources\n {name: \"intro\", type: \"video\", src: \"data/video/\"},\n // base64 encoded video asset\n me.loader.load({name: \"avatar\", type:\"video\", src: \"data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZ...\"};\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":"dzaGqqqFV3qYSBsYF02Ct","name":"reload","brief":"","examples":[{"caption":"","code":"event.on(\n event.LOADER_ERROR,\n (res) => {\n // custom function\n showErrorNotification({\n text: `Error during loading content: ${res.name}`,\n done: loader.reload(res.src);\n })\n }\n);"}],"type":"FunctionDoc","description":"

                      retry loading assets after a loading failure

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

                      src of asset to reload

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"SavyoYI5C5F2mySzS9HhP","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", "video", "binary", "image", "json", "js&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":"Dkx65ww2QYjfnOcXK8UJI","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":"PRCezJSThskSowrfxUGIR","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":"eMf1c_691uqX-TWv2QYvp","name":"unloadAll","brief":"","examples":[{"caption":"","code":"me.loader.unloadAll();"}],"type":"FunctionDoc","description":"

                      unload all resources to free memory

                      ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"o8UQl8hht_NLwJWoOKyRz","name":"Math","brief":"","type":"NSDoc","description":"

                      a collection of math utility functions

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

                      constant to convert from degrees to radians

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ga147w15rxZzC8g2dLTsE","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":"zRlFmd8RJOzOM803mGf_P","name":"ETA","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                      constant equals to half pi

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

                      constant to convert from radians to degrees

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

                      constant equals to 2 times pi

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GYsg9htir7Kd4PCirD_n5","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":"0TfanRfwGK9HhxIk7MSVP","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":"ZFL69QEgmI1YISYbDGRCI","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":"fsuRFwGB5IPvDAJ6_x2Fv","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":"bsXEfC_h6ehKeXK64kjGl","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":"hrGFKLqrsvMh6M7EVg094","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":"wpALHu9w8BOlBOhOlLQIT","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":"wPVxsDSWKyxB6FcUMxidI","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":"YqLK-VSq-yBaaoA7mSAFN","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":"AMtqnbti1cH-EV9NOqd3B","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":"eWpdM0DrQ6fGXdmmhJ3He","name":"ParticleEmitterSettings","brief":"","readonly":true,"see":["ParticleEmitter"],"type":"NSDoc","description":"

                      ParticleEmitterSettings contains the default settings for ParticleEmitter

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"OQMH9NFRI7O1IBcGZIfMb","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":"AVXr3lYpxURERxL787z1u","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":"Cd8-ZdTYTErrzqkBqH9zK","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":"fMkhbI8-sJTtRSoqn1Z5s","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":"Qs98PHEFg1uZDa8Ccvmc0","name":"floating","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      Render particles in screen space.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kxn1FTJIz0GQefM9VKVrl","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":"u6VHAR0fvgVGDLb9GIM9U","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":"Ciq_NVeX-HL9USagK8gLY","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":"t_H1dnbA7gspZ6GxmGzZ7","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":"-NrFwCuyg4y9D0kBBJOG8","name":"height","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

                      Height of the particle spawn area

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NfdlKRRnuYSbnIgCkwcGU","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":"wOs8vDvgxGy8hL4KJN4eZ","name":"maxEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Maximum end scale ratio for particles

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"enB59lNcGZjwCiaIKJW2N","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":"Vql0lsEyjAfJVCZEodHX8","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":"6U92ft82V3AK6X4-Yg-8F","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":"z1rnaHKSWoQ1Zq_iMKr-H","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":"5F8M6hIJEbvzjNVZHSaUa","name":"minEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Minimum end scale ratio for particles

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7HOhyeWSCts2HqbC1X6Mn","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":"kKyXFmoBD6dUdfRZu-Jjw","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":"XCSeN5nuxHciDByfYJPvt","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":"_afoYzW-bGbbF-emrWuW2","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":"yKDFgjmKxDjRkWbv581xq","name":"speed","brief":"","access":"public","defaultValue":"2","scope":"static","type":"PropertyDoc","description":"

                      Start speed of particles.

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

                      letiation in the start speed of particles

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y6morlrM0krPlBZhSkIR1","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":"AOsh7-z2ZKVrW9IyiQLvL","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":"hzT_tAbsv6Ymyo9Pq4pGA","name":"tint","brief":"","access":"public","defaultValue":"\"#fff\"","scope":"static","type":"PropertyDoc","description":"

                      tint to be applied to particles

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

                      Total number of particles in the emitter

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

                      Width of the particle spawn area.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RsWAgD74FCvIdwS6ZJZeq","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":"JNIZvJxtKuItuOCWVplQw","name":"plugin","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"5AZXzwRTILL_uAWinDu6f","name":"Base","brief":"","deprecated":"since 15.1.6, see {@link plugin.BasePlugin}","type":"ClassDoc","params":[],"returns":[],"extends":["plugin.BasePlugin"],"implements":[],"members":[{"id":"JbF-RXd-2lcotaMSYCHyf","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                      a reference to the app/game that registered this plugin

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g7g2kxqFXTYVbCVqqD_95","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":"bxvMTDlRjglR0wwYa1js5","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":"O8QYiZgbJS8Gfq2-2IJrF","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                      a reference to the app/game that registered this plugin

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EJnT0dntjazGK0_62gavM","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":"GWzlqZS-GttWPSfJNZi9M","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":"7r7sm93Vd3Cbhsu0eeX91","name":"cache","brief":"","type":"PropertyDoc","description":"

                      Contains all registered plugins.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Tc32n5F3jzT1EneGV7BLT","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":"8OeEEq4GM2TiOYmPDVR60","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":"fbIavmlUpqilNmKOy4chn","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":"EajM2dztQ7n4ncEoicTZb","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":"H-5iTk47qSwG3MLzXizxc","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":"SLk8v7-lmglcbVO0ocerh","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":"Vfai5BfSxLH68ZLp3HRC-","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":"88LAp3sHL-hN0eKn0x-Pu","name":"state","brief":"","type":"NSDoc","description":"

                      a State Manager (state machine)

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

                      default state ID for Credits Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OhhiaHJhzeSp9rSkWznDL","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":"HwjygjJNJXj3KJK-d6xIV","name":"GAME_END","brief":"","defaultValue":"5","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Game End Stage

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

                      default state ID for Game Over Stage

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

                      default state ID for Loading Stage

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

                      default state ID for Menu Stage

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

                      default state ID for Play Stage

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

                      default state ID for "Ready" Stage

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

                      default state ID for High Score Stage

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

                      default state ID for Settings Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SmPC9VIcIare4Peq26yAH","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":"eKZbk-bFTyDuZ15fjXpbU","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":"D22Wkd4iiOXpXgKYFD42H","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":"IJzd31OqgVwT_Ibwf2y6O","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":"vjlta5TMJy0EaiwAabPWV","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":"rxtY7WRBZe9gJkPYGaZHm","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":"zHiQ2QD0A9SdLO8y4W6JZ","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":"Z_xQd10KGNu2pw2i7H1Gv","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":"uMd-38JvBJTmOMMXT-cb4","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":"_v--Kg3rwfbyBJ669Jdvi","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":"mvcz68NilZmr205jdddAA","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":"NIo0QJ31SQacmtPQrOvRw","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":"diTUjP2vu_ZXGiZL9Pebg","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":"WSEiTA6CJ9_twf26e8loU","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":"BSXXNlfvd0oyXKyUUQ3Px","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":"zg1KeseAEJm8Tk1pk8FGs","name":"TMXUtils","brief":"","type":"NSDoc","description":"

                      a collection of utility functions for parsing TMX maps

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"m_hjhDAqvSGbi2e2RvZNA","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":"jMSrceAA9Ixk2K58PoSo3","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":"NmMZGc6D3gRvO_KTm7w0I","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":"RJsRXtjiumpFUMEW9RwTk","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":"gM24-oKO1ggLMwznJJuPO","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":"WexIdz6pKs94cPsUDBfqO","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":"hPu9j5cExcYv-qM21_itg","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":"5K9xz1fD0OJO4SR-9F8wO","name":"utils","brief":"","defaultValue":"\"\"","type":"NSDoc","description":"

                      a collection of utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"QjuNcUXmKX2Ce3PKmF4sq","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":"osCz0RdafTrhebUL4mGT5","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":"qzzvbQ6W5w7P4_k2Z8KTH","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":"9XaNvyP6LHqgTRcxAVdoY","name":"array","brief":"","scope":"static","type":"NSDoc","description":"

                      a collection of array utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"sr-hsF52N0GWidAAWKUp7","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":"gaS30a6lDYDgl8MvRr7uW","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":"A4RuYMgKi5U5B0Nm7L3Oq","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":"eWitSCqQFIglpD5SzbSnZ","name":"file","brief":"","defaultValue":"undefined","readonly":true,"scope":"static","type":"NSDoc","description":"

                      a collection of file utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"5_oLPC9Fjv0Xcga4vsqs_","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":"S62p1r5RA-QBU-qXqBKan","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":"YMi0zSkxqkN1fEvZ8Q8Bh","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":"51WyFUF2Za444dTdBN6KK","name":"function","brief":"","scope":"static","type":"NSDoc","description":"

                      a collection of utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"aGQ_Nm-GqXJzin2hOCnTz","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":"1wWBYGPQ2iLsFPGgwpnrD","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":"_r36YYZpBlsSi_7U3UMNY","name":"string","brief":"","scope":"static","type":"NSDoc","description":"

                      a collection of string utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"8Gz01KfMJY-xPsgiG_EYC","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":"As0kHb7jOPZRo1U151hcX","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":"MDGhq61SgpOb7mshiQv62","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":"xQWOtaRPD11O14wYurv4Y","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":"AMWkrmbMAvzXZ_H9zX6EU","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":"9I-xYfxN1UXuJ67SNCWUw","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":"v1","optional":false,"description":"

                      First version string to compare

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

                      second version string to compare

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

                      Return 0 if v1 == v2, or 1 if v1 is greater, or -1 if v2 is greater

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9wRRXH72oa1AtP1UHaQNZ","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":"NN6HDfPJp5NgpJjSk5obB","name":"debug","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      display the debug panel (if preloaded)

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

                      show/hide the debug panel (if preloaded)

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

                      draw the hitbox in the debug panel (if enabled)

                      "},{"id":"2ik-RCvE_Ae-qOyZQmI93","name":"quadtree","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      draw the quadtree in the debug panel (if enabled)

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

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

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

                      force the renderer to WebGL

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

                      A reference to the active Canvas or WebGL active renderer renderer

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zX-x8RZ1E4UMiBluFDfQS","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":"Nb-S4osRkSmSdzjC47Eog","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":"o2s5GYV-HRkrjL7USzpgq","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":"cZ2EzSsRNL-QWGPZXRqnB","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":"ou7AMXtuRimXy-cEGPjRc","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":"Ko41KttTaov9nGZf67TkM","name":"antiAlias","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      whether to enable or not video scaling interpolation

                      "},{"id":"EXneXB803OwmqTxXpaS84","name":"canvas","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                      an existing canvas element to use as the renderer target (by default melonJS will create its own canvas based on given par..."},{"id":"m9e58JECEEX7eBCJDhCgY","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":"QBv4NAZMby_Apstzqxl3o","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":"qGP6etSkN7kbAD-6mrQgI","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":"9whgP2YdYXBkIEo6w6Obn","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":"22rYub4UI-5s4TxVM5MRv","name":"preferWebGL1","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      if true the renderer will only use WebGL 1

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

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

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

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

                      "},{"id":"7XqXxm9p6SQtxfNcnIcTr","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":"ytofo0CEmTTlA2lsbRbEm","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":"YXMY6wz-KSMli630r228D","name":"transparent","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

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

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

                        true when this app instance has been initialized

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g3pglv-L3RMIdIFjq-eMO","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":"4ev9fys6r8OmshhvRG_2i","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":"dyC_hFVXbfMG5HxkcES45","name":"parentElement","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the parent HTML element holding the main canvas of this application

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HC7Vs48TbRmRXVCCzSFG7","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":"U00rzGdbzxr8WdtMcS3lw","name":"renderer","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        a reference to the active Canvas or WebGL active renderer renderer

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LtxFOZJ47wbCtN-5DyRLL","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":"de0mAdwUIT6Hl4fya_8mf","name":"settings","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the given settings used when creating this application

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3Kd_N5aFbBgIzPQZTX9zc","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":"c5HMVUEUHJe03R1Vu3XG8","name":"stopOnBlur","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Specify whether to stop this app when losing focus

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

                        the active stage "default" camera

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L0j_AFmOW5F1v314dQUv9","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":"MJd6MHo8sa3t62JFb-Fw7","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":"rzNvVlLYktOCG9ku61S0D","name":"draw","brief":"

                        draw the active scene/stage associated to this game

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iL2YLbj_nW9eanXGwVV7t","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":"A0MryoV85EtdTK18kfrfq","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":"MbvXa2jfIZRfkdkR1PNIV","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":"XlZgZVa1xt-TtYGcQspr5","name":"repaint","brief":"

                        force the redraw (not update) of all objects

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xi1nifBwyI7ETOJFIWUeM","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

                        reset the game Object manager\ndestroy all current objects

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SelmxlmHqG6v3CFUWf7Lq","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":"cVX5U-2c9XguyPVGFH8Q2","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":"m8Yhy0ABF6W3zXRYhXVkY","name":"BitmapText","brief":"","type":"ClassDoc","description":"

                        a bitmap font object

                        ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"tYWZSfWHnCpnMUcF2YfHo","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":"abk6jZdJcSh5dxkc8NKOZ","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":"KcnXhDNMRRQo3g0qmEmpb","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":"u1JR4fcd69JyOq8mHML93","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":"0kv5TFA94hx-vEO8vhFAe","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":"LTkOh4tVZw9PzHaHtDYze","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":"CT32DNc5jFPdHPJXlscq1","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":"d73i7HC_UYPHFHi8adfFX","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        bottom coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ExcdD-XYkiWzrq5MHzxTQ","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        absolute center of this rectangle on the horizontal axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ixYw-QF0qq3haNMeuPHzY","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        absolute center of this rectangle on the vertical axis

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

                        the renderable default transformation matrix

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

                        the depth of this renderable on the z axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MZQPfxUdGtPq_i7AYdE8b","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":"v1uW5r_feId6B0YQI3rYS","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":"n6OgQ-OEXs3FduvgdzRap","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":"wuYw_yd8OPYoDLUE5sZN9","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        height of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"28o7HJHmHxlG_O0BGoPAz","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":"zjm5sfIO-9wPR4fHL36Nb","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":"NtYpyzYaTH3p-00tU6GKF","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":"M-znKYKMwn4ybRWvRVDCX","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":"WPps1ZuBIX1olURiwkruO","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":"Igr35ewzCyIPM6wBatiKO","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":"--BZFId_ucDaiRAa9nZUK","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        make the renderable object persistent over level changes

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

                        left coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1xWTBxb8bnPIz4JSvF2-E","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":"3gHNLiRQQUM8QjalfNExN","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":"f2kBNXMEX1uBr3HIk6Mrj","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                        The name of the renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0nouidFHpPyGG4FKdiCQ2","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":"4kGSoCQN0SA5ciR6gbzuv","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        returns the parent application (or game) to which this renderable is attached to

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

                        the parent application or undefined if not attached to any container/app

                        ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rYrYflF6o8R9glD7uj2rs","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":"dgoIi2KfIR3T8JdUZ44SE","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        Position of the Renderable relative to its parent container

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QcGvG-m0xpaVjhMZ0s5zN","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        right coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pjRSMVrDYCPOH3tbpaJ-2","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":"847X24cPsek06Dwv7RW-7","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":"UZbW3IBwxfngRBTF98ptK","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":"kqxwF0_dOamskkSXH_LJ7","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":"Wpe2hvklywMG8EzliBXfW","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        top coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ufua45u1GafFTG69TQMsG","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                        the shape type (used internally)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"me_NffGMVPQSBj3IEeTJd","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":"lH3jQ6dupFC5-jbS5TQ56","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        width of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"siM1W6sInwuys7hOLt6tu","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":"A00MhA5U3wAa8cYku7jXe","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        the text to be displayed

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h2yxGgD6pulnBqORr9DNI","name":"fontData","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        font data

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PXsdupqgUzl1QP-RxsJN2","name":"fontImage","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        font image

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9sDn9Ke9zA0VFDoMaTOyc","name":"fontScale","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        scaled font size

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6xEe2w8X7We4_lc6sHkLc","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":"Gwvg5Bxj7BTqpaXIXyQKO","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":"FfDpebzT0VlpxEC5z-x01","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":"vpIWZHZoTOJKZRrw-wdDO","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":"-nxt4sEnh09c8gK4uQKyK","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":"v8AvYd9Bh-LxT9AP-10-U","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":"iGBK5--WSv_hON03j7t9g","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":"4ImTwisT9elfOWOzIJsat","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":"4AsgjUVzPn-yngtieCR-1","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":"VB3nt2qlZZaQneckFfnuS","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":"7hEVBgGPNYhpcVCj8RlDv","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":"Q-l528kqJFigndiQaIdFu","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":"t9f-DvGrNLqS4wYqkdJ_h","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":"gYCpwEfRY5U48x4CVrWmu","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":"1gCB4JM9JiEE6HC4hEPu4","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":"mnsX-JKg1Kc2em2bz4TRM","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":"JJOH30hWfGp7wJ8UZlPPv","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":"g6u98BHD8t6paaU9u99bc","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":"W-r7yNSDpwj8OdlJ_Cc1Q","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":"E6xCDB9LSXg32aw715d-M","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":"MwKMfzf6wqquDDEi2E6qI","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                        OnDestroy Notification function
                        \nCalled by engine before deleting the object

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9tMl5q7vTnM6obd4pONeO","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":"rprYRrfbTPC-vJlWJzgPw","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":"1msX6VhbLm53nI1iWALVs","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":"OiWRODFshOooVYPt9DNrl","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":"ioI32vpqcnjMkdH2_v3JV","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":"JCw3na1oi60QxctmCSqXA","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":"fIUyszkp2u63KZDxBEdeT","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":"xvET0ZKxWZm-fY1jcez3n","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":"t1CEk3udOTfQh1tzRXrRr","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":"P4RFG2GIdVnQryBLMGK7r","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":"vwmPX3sT-s6iPGXrsvyl2","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":"UpjlFowgNjAdmEYTF5zw7","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":"2YP3soaNoXQICci1ZTOb2","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":"NP4S1plKTBveRomXO5vlu","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":"qttgP_nT5ldX3A9RTcFDS","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":"ERBuGOhBnlPBufC-_ZtwD","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":"xd_LpE-SV9tcLe1jPX5C3","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":"IUUVxUInrp126KZKzjhQq","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":"jFFgZnT6VE9GBVV-DgBS6","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":"UmDMf6uqmWCYwM_l202fv","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":"jct7Nid31LA3Wl1mtYDAc","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":"x5H2QerJgdSipjukA340x","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":"Irpr4JfAPNrrk5PeQSwTj","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":"FXgTBWAUwQh2DFTP4E1pm","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":"TkSP-CM01P_AsDffZN4Bx","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":"cKPG-KsTbAiv0HFDcjkDm","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":"KKPQ2o-48XpZPHaQprkrK","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        The AABB bounds box reprensenting this body

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w1GLbwAgdUAfpUKXJsrKY","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":"7C-RFUxPExo5VyJOvfaKe","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":"Go01edv35uNWrXiCUewCO","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":"NlDno0nCff87t5H2CQGve","name":"friction","brief":"","access":"public","defaultValue":"<0,0>","scope":"instance","type":"PropertyDoc","description":"

                        body friction

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rUfqPtFnWIihnRTCLUdd6","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":"n2ujQ87z1yAlF_A2bt1-c","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":"dQ-FP9uaL0OFlCVHiSPCk","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":"edovBnRG7eGkj3GkFlnmn","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":"RNddblzLJOEYqkbL0cmu2","name":"mass","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

                        the body mass

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0IKmLU96NnqFZC-J9nGvK","name":"maxVel","brief":"","access":"public","defaultValue":"<490,490>","scope":"instance","type":"PropertyDoc","description":"

                        max velocity (to limit body velocity)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G5gSJGWHggdrGvu8wGFXC","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":"bKpG6R7yLKa8Iaur-FKdj","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":"ywGWGnMT5YoryLQn5kMsf","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":"oboSfu9YeUmVsq77nFWrB","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":"m-pAGdgq3ymW1IbPVRJkO","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","optional":false,"variadic":true,"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":"V7665lOj5Kvl5p3ats2P6","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":"lh0nUeKErqwsRDyDgOviC","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":"va8XYDOkNggBqeIN35k5X","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":"skAs1HQ9pGj_IBTfm_q0i","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":"qZbZFooKVIzNXDiq8NpZB","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":"_EdWVdswbactAu3vD1K37","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":"qn9vSmx3mUhdTx718X0EN","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":"fAF9D4cKBi4mzOZZRkSxH","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":"FxKVibzYmEh7_GTKmEjO4","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":"4K4zNz-h0p2TH0gu8Un5H","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":"xTvJJggbSTenbJrhp3o-1","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":"BrPOrv9n17JhAMUpMjsPC","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":"InfNqv0W0LuutKdi5gZU1","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":"s4r8s5KrvGKH1xeTqClux","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":"F_0n4dpzX-rX7EQDq8oU8","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":"lbyVuiQF1XmrKsPNOriuG","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":"fzRnfsjIkMAyapdZ2j2aN","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        bottom coordinate of the bound

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

                        return the center position of the bound

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

                        center position of the bound on the x axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0OqKOpKS0UBV2Dz6-GFjL","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        center position of the bound on the y axis

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

                        width of the bounds

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

                        left coordinate of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-5caUBafC4ooHv6UWpnul","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        right coordinate of the bound

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

                        top coordinate of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZLljZn9B9mHskY5Df5icF","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

                        the object type (used internally)

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

                        width of the bounds

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2hEV_V8xSs4_E2hTHAuQx","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        x position of the bound

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

                        y position of the bounds

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wfnDh5zgNpVjL3GIJeGPN","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":"Ee8OohD2Z5GXAQ2a6cQ5X","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":"tC3FSdnJKNzr-Yzk8zAjs","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":"sqyTOcjtrnoRzaTxe5Tvv","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":"B2p8PZRcHgryppJACxSdq","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":"cK-iwQn1mGqnOjGly-X0M","name":"clear","brief":"

                        reset the bound

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4w0Io5fUgmd8YH_4okEoS","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":"vlPasDjB17ak_2skjqSYH","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":"NGYoA4SF8mvc6vCglFh3V","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":"6sNqCxBmQNI-cAiaeiRG6","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":"jx4maIPaILKPnuDHgAKJQ","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":"z_EH2Uux8yYMOKUjt06vq","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":"vBFaqqCrohmrwE2JFd_Gf","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":"LaH7RS2whO9x2LvcQV-na","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":"Qqiq-aCVAXyUGF0u9hXw_","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":"RUno1KaJofW9ZzL8uydXY","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":"zSmqhy6umJf6Wz6TTbfgf","name":"Camera2d","brief":"","type":"ClassDoc","description":"

                        a 2D orthographic camera

                        ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"71uDerwM6lRyV62bJeAWu","name":"AXIS","brief":"","readonly":true,"type":"EnumDoc","description":"

                        Axis definition

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

                        both axis

                        "},{"id":"hJ7bLLEt-rPfIcXVNYExm","name":"HORIZONTAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        horizontal axis only

                        "},{"id":"xZYUFdoxX9l1JNt8newYM","name":"NONE","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        no axis

                        "},{"id":"ZC8pS4hAKtDbvnDhBThmr","name":"VERTICAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        vertical axis only

                        "}]},{"id":"OLRN6kbwwuPm8fsvgKYM2","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":"bhacOteJcm-P9e6Pgrczi","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":"v9FrQGXlIF0hEkVhK2eZg","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":"IWOkZY9gpa0yjWClO0Gyo","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":"w15dGBbfuU_hSEnvTQwuw","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":"dbyCYUiBUhwakdi0vkUUB","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":"WgqbrWlV5qrCkre84yeGE","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":"yO4YS9mXwFJ5ZvtTkf7Tv","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        bottom coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lkVzEf0KOPu3VsCfDIv4Z","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        Camera bounds

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5pM_KRBgpdJ9WgGt7tM72","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        absolute center of this rectangle on the horizontal axis

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

                        absolute center of this rectangle on the vertical axis

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

                        the renderable default transformation matrix

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6aa91obCucYXPKD8BjMCg","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":"SLc2NELfmbdYuP5Oh3pG_","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the depth of this renderable on the z axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HxCe_LDud55XVOzBchPmE","name":"far","brief":"","access":"public","defaultValue":"1000","scope":"instance","type":"PropertyDoc","description":"

                        the furthest point relative to the camera.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5CETmURcizcLXYQgZ6edV","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":"BfF3I3dJWw1X7yAGV7FbA","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":"9x6rTmaea7E_qPpyOvMdp","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        height of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u-LL5_PaBEq09XBLws8Ik","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":"R21DaEMe7L8I82vwGA5MC","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":"CAwq-uVhusS5ulbzT4Mri","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":"AD-aX4POzNUWfiXUiBUQf","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":"7Eznr7ulyD7zdwEzDyucI","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":"AUvSBWTYszf5djawijOw0","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":"wUyatOjvA07V01NbQDNSI","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        make the renderable object persistent over level changes

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

                        left coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TjSVrA1mBaBIrpiE9o3d1","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":"r-ywjYq2LsYuO-BUWjTNt","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                        The name of the renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f0harunQII_kjizTEg9_r","name":"near","brief":"","access":"public","defaultValue":"-1000","scope":"instance","type":"PropertyDoc","description":"

                        the closest point relative to the camera

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jDws0A3Sl74G841wDSuv4","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":"5D-QaUlYGtCsn_ZaTYE9x","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        returns the parent application (or game) to which this renderable is attached to

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

                        the parent application or undefined if not attached to any container/app

                        ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eBpcnEcKE0hL7ReGuRQa1","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":"oHjyAeV3kjzl2ppK7X-Tk","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        Position of the Renderable relative to its parent container

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IOH085P0BS9mVkfgDFl3m","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":"el1vqkyruW1b_vRrj7QHg","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        right coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZCMiQjmvzaFfw1ETfnEIg","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":"t3D0CfXl89Baen14itpBO","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":"YGF_pKKyK1yg6t0Jw53PV","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        top coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Upf-_RnRB7WsWh3PjaP42","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                        the shape type (used internally)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rz2RzFlQIgO2WGBDqKAYz","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":"ZFXNGdkpwCYsmlplONjlE","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        width of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Sfu99NYIUTNfZHSYkQank","name":"smoothFollow","brief":"","access":"private","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        enable or disable damping

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YoKC3oBFIGr3LKP-bQDME","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":"8VdrVFIz1bUDRxz5GDOup","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":"W_OXRIgabwzUjkdJkPPkx","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":"UkgvZnVuxJXuilQB34J-Q","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":"BqlZYzo5IjdNjsRMkb-Cr","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":"jU0Zz0L7_s3CjK2cmgFJc","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":"c2YQdBSd_uaQfyMJv49QE","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":"73n0eNeAhWwKzX5DQwPkn","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":"ApNN3AgB716SesEk0lVtz","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":"izJetSD98jo_DyK6adB14","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":"aqRiiXNLZtOcT9s5YpgVC","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":"sL_fdQCfRzNgqPohvnSRa","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":"NQKXTyPCaY6mA6vjFkhnx","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":"1slgNUC3K5y9dZl53bs4_","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":"kZA8_D2bRKTtP9mqAlmbp","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":"cfOTu5Wy4ZNv7sKiXBUez","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":"2e6O4r_TdJHQdqyZlkeC3","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":"EP6wDErkLuD4BHET9-LJ_","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":"nukcSxueeR_5KFZmhYtRa","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":"9mHs1i4CqJQDTzkE81URN","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":"mLjaWxjBdrkhJK1f9NAWd","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":"vnD-ZuruZ60fr_7VjhvxN","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":"QIw8wa19U5SqInCQuDb2F","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":"ke_qNiVZXBPVK_8Qnx2nM","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":"pLVK3lXOUqig7RQZEjfW9","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":"7r-siP_CsWExL8OSadbjf","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":"ibCWG52e5wJiVmjb43ZCK","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":"IaJrMj79_Ws0C4Rl0n_WV","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                        OnDestroy Notification function
                        \nCalled by engine before deleting the object

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n8DfwC94i9P-PfdjoAdNr","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":"5o1RvELv6ZpnbpImCoBDn","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":"YZjhQaPZrY3ecpliZX8FE","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":"zD3lRm9tsxfxjg3XrJ5-J","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":"OStZm0s6VuHPREVMCFuXV","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":"Npe4R7P8KXvNJOtQ9DnkT","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":"K5JiRtyT6W_DUu3bASg1G","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":"7NPgxSGjg5bzCW4_vl-AU","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":"m3cQrTGSHw8JBG6D2YjaA","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":"upSNj1Iv-jRLsvPU8efZe","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":"kyW0FIuzEkeGc6nKMjDQz","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":"IXFCA7zgY4vaootm-Eofx","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":"NcqLTYkIJAK6e-Xsn2ulj","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":"5mzq-bu3eDqK93bTFBslJ","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":"pKQ9H4_HHRgiEf2ewJcot","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":"J42wrNd_x-ZjcPm077Hc3","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":"g0ZJ6wYFiGzr9pMkA2vzw","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":"cU8L7XBeQQo-0UQ6bqDDt","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":"wpWKjIeQthKZD9ycjWyt6","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":"Gg3C0wJBIjSNXpGrdl9yi","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":"VMWS0b4SAzSWm9BqbpHgi","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":"4BWbu9EL1TOYxRz4_aVzW","name":"unfollow","brief":"","scope":"instance","type":"MethodDoc","description":"

                        unfollow the current target

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SYeWGOU_fPXyDVHR7ZRMz","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":"KX3-_u4X2hqeqAnqCskv6","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":"llSqdpTl44er7hxybQmnI","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":"TddAOeU-QYpc3jttj7u9w","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":"WtpM_Q75krJXWsqK00Kfl","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":"6Q9LUIZYeyQ_QP29lOx06","name":"CanvasRenderer","brief":"","type":"ClassDoc","description":"

                        a canvas renderer object

                        ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"8D0Pi3FwRGriksOr0h7xm","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

                        the default method to sort object ("sorting", "z-buffer")

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FcCFuo868ewVhgVFBTT20","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        the requested video size ratio

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DT6eYAgKN4b_1Z_QApQte","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":"x9c5X4_gtzv1IJu7ORkmu","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        true if the current rendering context is valid

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

                        The Path2D instance used by the renderer to draw primitives

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V3LE4QxFbjTpKrcFv1VTZ","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":"dyN1MLvSkGgdy1ggG2DTW","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        The given constructor options

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FtcH7aEkZXshLtlUyb2RA","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":"daU7_Yz8gmo7lW72IQtHJ","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":"B6n84H-gFYwpQF78v5arY","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":"8O3xi7dneUhsOp4CHylXD","name":"clear","brief":"

                        prepare the framebuffer for drawing a new frame

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UNWBZwybzdgIa2n_nTSrk","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":"yqiXpo-Ih99LYbjMOQiSB","name":"clearMask","brief":"","scope":"instance","see":["CanvasRenderer#setMask"],"type":"MethodDoc","description":"

                        disable (remove) the rendering mask set through setMask.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Hw474ezPN_xshRjn6bLD","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":"UZkh3s_CqH4HGE4iuv-ub","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

                        clear the rendering tint set through setTint.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"trUZdNf0tVV11MS452c0h","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":"Umtvtl5bvdxp9S018PY2l","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":"9LVYHdBqolqPg5TK4wv7m","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":"gYrD9_qp-N2jxIJLt5zag","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":"N-zYmSNKo5JyqolNPPbPi","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":"j1RQyW4r34hkLKvYE6YNL","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":"ViXG9NswZY-pkIibWezYW","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":"BJ0QxcU9AA5tzJiYvBpP1","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":"3SAGlPV4uLwBGAk6pEC19","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":"4_RTPWNLrjKuyRk9m0OnN","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":"kHkS-vu0yUdIvam0aPyqI","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":"d_8YtqXLJVMCcXkqJgO6t","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":"ZZ2BYmvWXw_JAgpAsYKdu","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":"SrJOOW6-YHT6iubHie5Pv","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":"Feztr4adFTawG1wYO8sxO","name":"flush","brief":"

                        render the main framebuffer on screen

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HspWJmQSFc6xlNcsU9krs","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":"oR6YZ6lZYgOgPBLwsK6vu","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":"ttiG9H5BM08rJDkjF9Ta-","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":"EKOnJChxrK8VEUhHERtoW","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":"ubRKANqHfI9Rg5y4tN6-f","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":"NI3dEWQ05I_bnfnDr9yVv","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":"eL_qm2O5jjYx5Q2BBi32e","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":"_eoUYh_37NJCPH5bD1YqB","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":"qvRDLXCvzvhB4xz5qYik0","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":"v4taxsstSnqxpNE-dib2a","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":"aS3vuaarxUiADAgZpvzbf","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":"5tY_vnV2YeYDLh2rm8cbt","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":"Mpr4smTOVmBqNvj4lBga_","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":"MKqWaEcvQaIyPyxxbROtM","name":"reset","brief":"

                        Reset context state

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lAY59X-9qHCJXnrYBj0GP","name":"resetTransform","brief":"

                        Reset the canvas transform to identity

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H31KSeR5-em30JLOSTDzr","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":"h5oHXzRRQW2ChHFk6UKm-","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":"oE1P5xKeDGKCHfXYM_0ya","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":"VgiNPUjCbvWySdn6OEOOd","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":"MCwI_AKj2drFtThY7J3NT","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":"0xuF-qeLYn3Gfoqog6DK1","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":"UPjDupTZhvFLyRmlqN6WV","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":"KRwaUb3gNN3PQRTcks3R5","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":"0e-xoC0Hg7sE3y8xzMHor","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":"w4PAJHwfUC_DQpEZBNed5","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":"2HOY7xO6uJ8HExHMO5edl","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":"j6DTb0xFqRzI3JMsJhGKi","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":"Vg3DviY5cucWF664uenG_","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":"ZWE4qgnlzXeo3OdDUOrzw","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":"I-kXiUmtTySKnJ4fatJWQ","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":"_DQiSHchSnUL5kFB2gaE5","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":"5kgO70N-DpGxX7AQtAYD0","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":"Jb9L1V-Q4xjiJ9wGIqZIJ","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":"_wuYW4vhnPzxGA-6aUmbT","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":"zmxZSnSaQTTMw1DKGBNUc","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":"YLYLnRyvEv7JatGsi1-Y_","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":"Jssa2h-x7LdI6YcCJjChU","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":"i21FPEnauHu8zwwUIhwkx","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":"lpB-uHA1Y4ZJO3dXXMpYB","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":"oQjXnhFGkmAdrthiROF_j","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"TWae0SpxtHlXSgEzwy23w","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"MY2-N0jwPqQT-5lYKAhQI","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"O3PkWHbrQExB_glzaB0T5","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":"i-3OZDTXzlwPq0flB6uEC","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":"I40-3RMlUlcCptGi8uvMo","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":"g6RN-yNnIh-9lVE2j5K3h","name":"canvas","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the canvas created for this CanvasTexture

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

                          the rendering context of this CanvasTexture

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uOhvi3bvnMK5WMbBNGCVm","name":"height","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The height of this canvas texture in pixels

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yIWXZ3WYlC17T7Z9rq2eO","name":"width","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The width of this canvas texture in pixels

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YwWbDlUbO2YDbO_vcyTkl","name":"clear","brief":"

                          Clears the content of the canvas texture

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"82gfausPXbY5Oq4O1IHZK","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":"Cgil1l6JC3xnAqXl_QtJr","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":"2k0ManLIW1hwChK0ThYmk","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":"Rel0rjmGd9-VHPQ2VCHk9","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":"w5L9ePXno9f5NpANbR7LL","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":"JuW_CmPz9mPxetYib1etU","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"Mh6Es5ZOaH8XHP2Fuf4nJ","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"KIm97kx5FZSNA9pCectpM","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"CC2NPa3CdFeDqgDZUWR2v","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":"lM8ZNXX1YzJt-gFy59ify","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":"Xf7dI8z8NGAI6qF_c-Qao","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":"MvrANspQraXjQS4vI6P1w","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":"aRYZ5BF9mJRNBO8ZiBTGX","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":"G7o9H2yrNxiWnqP9bQRgB","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Wiat31ORn7rLpqc4VAYep","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AUgeTlGIagwls5W1HVm7i","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":"ubku171MN6D8WKhg9AC4m","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":"tZ1Bg_KCKU74tvkrpLQEx","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":"3tpvA71BBE5MZNg46PMPG","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1_gYMjLHj7MEsZWORAMm6","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1XFGzhavQ9kSFzth4vnpY","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":"tG9V33AICl0b7gQzXT5Nq","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":"gaQP587p8VyUsUBV-ntFt","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nJFmxFeNL7R8Uzze1o5UJ","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":"PqWwVO6PM_q9gNLp8JW7T","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":"tmv7gJUxi72sTbyKjLj8M","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":"ier6B4iIXzjr6yCTiOidJ","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":"ZhkUSDJZ46Uo_Cf4_MLPy","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":"PdSsqlA_01JmGJoGFb0k8","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":"Y5aGjvWpshWCWoOQ3BdRS","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9djQYTxpN8bNnsv4jZgSX","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TyjgfwoODxvtwux1Jw-tk","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":"bVX_9DsuqVsB3hZSVReZL","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j3Gzzz5-ZgDlGdzJA3AT4","name":"offset","brief":"","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":"cB9MNUrXFOayTi0oLfj8I","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":"fdET0PrGAoayFBlAnWrop","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-TeqxhFd5NmKSRnS1yuLy","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":"aiG24NoPKom9zzMw5pxqk","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

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

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ol5TptwHUHbyHqaktF-i-","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":"AERIheKmVculDR32zTssB","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5oLTuL0ppaux4Ayjwr3G9","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":"ONNOFbDLO3HzfKb8lWpjQ","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KSF4U1yUcuXkFsM05H-Aa","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WSrGCP1N8rk79k82mN2Co","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":"zkMZWJr_k7p0NoWICRbMH","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LQP-1kIpj7bMOFAs7eQXu","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 defining 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":"ampXFH7zL2mnwTdPdE0Up","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":"RyREbw66kirtI42479lN6","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":"uZ3aPaEFgyV1l1yQGhliM","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":"5L9Ca8V_iNURUmTms5Hrc","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":"lCsyF1DtvaFtzn9CKHIYs","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":"_SygGL7AOTygQqYdiVQLV","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":"TjV46IOVABLDORCzIWngx","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":"AE2CFVfDu-F6ga4DHWJFP","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":"fZCKiyzb0dOJ7HDRLobFJ","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":"7Yi3ZOPZBnrMcwfkrZDCe","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":"Rz_uHUTEGrEnge_deuAzg","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":"gkD4DA-_4xI9qigG4fAWv","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":"sxy7vq9BsUiZszNDRf9tD","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":"DiK5xulv5gUP6HYcw5Ov9","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":"neZ0Xx1zKBbi0T7db7TXf","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":"7IEImZzHOGc-xr2zqbUjb","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":"UJkWDUg1ldFd802hZG1xo","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":"7YBzkEvyGugjkcKIUKKIq","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":"IsTOkgmq4488StnjHbUnh","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":"_gD6_sjpDbsqJnurHAmqJ","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":"lYepD5f-hicyC0RDULytV","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":"FqtvcAI5v_e3jAufuZkcJ","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":"n0BXmaU41suWA6t3bvt5t","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lLx7k06-jRxJ1t37zchfS","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":"zBVha6NxiQA1gjQYnKOA1","name":"pause","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NyM1Nek22COwtc5EhpzIi","name":"play","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CBTVWFGwTHbwu5Gr_a1G2","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":"XG3jhi8dd1oEh0XjWrJEs","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":"22aYhFVOAYq2sq-BUFuzo","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":"QDgl4WOzZnmdicR5Hjwaj","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":"fpUuALn1UAr1zU_e_oyyT","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":"I4C9Irbi__a7ZY2k5HpOb","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":"i46E5exyo4mlmu9D3Ic58","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":"dX_naunGsVmzXV6RodghU","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":"xKznsgCOFed5kcLMcPobP","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":"IUqahbHYHRam_22MLdW5X","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":"eAPPnZjWGwvWq4O2aP4vS","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":"DfSFA3acqADokfW3LEY8_","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":"SOt9KmNKjR7KdQDxs-DK2","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":"VhZXGyqfN2Iu-DbopBuFv","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":"A47XSLTKfldHiR7ZQScXC","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":"gu-fpwmyE8WVTJzADfTwZ","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":"bclwJuGUZBsOgNusgg-Qh","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":"R6_JJxpEgHMVlTlx4Z8Jo","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":"AtFXt0-bxzymC1ObZ_Xq5","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":"5M57ClLygwQOOagFeloDy","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":"A7z8zfoE-PTuFsAqDvw1b","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":"5DbktvxEuq-oUWO4i4tS0","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":"5AfUlOhRrSHgGJQlZ-xoz","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":"4EYjTGDzBvWaPTj4Skk2E","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":"aeGJ6afwSU-0FL2q6eIOS","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":"7g57nzw2jqBT0avr67EFd","name":"Color","brief":"","type":"ClassDoc","description":"

                          A color manipulation object.

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"DPaKXgUdjMA77bfIFTxZR","name":"alpha","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Color Alpha Component [0.0 .. 1.0]

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

                          Color Blue Component [0 .. 255]

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

                          Color Green Component [0 .. 255]

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

                          Color Red Component [0 .. 255]

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aPvh_WXIkkLKOLRH5DQ9V","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":"hf1YoFQe1_H8ccA09kjcj","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":"9xhZL7jhSa9DNq1QoYVlg","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":"n8aVzzAimNR9fl-oObWAO","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":"Cw5BYmc0u0253hPPvE8nL","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":"xS-YuAvHkxGkWVPRWY2_E","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":"5rrwhQjJOLbwyqv53dAqA","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":"Nh6PlmZdV4vY9IbIU5fQv","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":"4rWDLRzxh6x30dlhZYcgi","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":"kaweT4GcVfMCvRVa3g1Ok","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":"POyzXulBAHEQV6qZaK99-","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":"jhML6Pgi4WZiYDK8HEQCp","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":"wuuHy2bNXXVOii5iqZazG","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":"l1Idfded12S2-WpgI80vQ","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":"TgsviEJfXTe84ZWz9J8Tf","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":"SnQvRKFgkeOZ_cMTGIXfA","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":"7gzIBNtgF2H8Ll6g2VREK","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":"CzoWccMlvJmDYCmSAP0Wl","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":"eiw9OfkO9pgIhVbc-875g","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":"hM_alAC8PwlrNL71nAwmk","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":"Aw7oi125K8YIjxhoxeDIX","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":"739HS5y58Tnbqo2qUXuPL","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":"5_uKX6XNz0U1LwftAWz81","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":"Uf-9VrEYj3bv0esRdkfop","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":"4_hK3ncS0WpBZVeQIzhbO","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":"J_zRplsqJ0Nf4cTvFIiMU","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":"FMuKcvvePL7nJvO8BrmRl","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":"kDQWB3A2odpuZjpR7f7zn","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":"1eNPBz3qMdOzvU_vXLuoQ","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":"7a1xS2H8UbeAdupMSmMJJ","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":"pH1DjDR7v1RLohP6ffE5j","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UijhpufPzAqXlDM3B85i4","name":"color","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          the layer color component

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

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kTRd4o1ld8T-X2G6SQUzD","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":"OL-G3CQQJEByKQlEdRHmd","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":"Rn0Jtjb3Z7sc9GdpNkmXy","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OYJ-ZuqX7x5pk4cdv_apS","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":"Xo_uf_qTvCbpzzmrSvjUm","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":"RpRtTmeTim-BunIubXfxg","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":"mnkxGSNmqoVzzfEWy6ldr","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":"ICAPk42bjyD-6e45qwgvv","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":"033irB_TP_RRwDsOhb_gv","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":"mqCGiVKPUgOwsTWVsvgjU","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M4Y3iBjV-dmxHKXpFE_TN","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":"fOJsbP9LWVZRYC90mFbRY","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qWOKNvKAI1Irq_o7kII-1","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":"ujqceJnT3Y7912sB1h-Rt","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kRN2iuwbwruoD1vJmVYsT","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":"bOmv3m4jI8LoPUsSO7tGy","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JvBvx6K-Oecpp_gQ_e1HG","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m4WiPKhjpzr8JMqNi5ttZ","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":"AcYXRccsF6w6wSlf_3qXX","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":"Wn5RJ_m08q71EVanQPvnW","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"boNWE6uMad9GgPp5wXWPd","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b8xtWzk7l7HpDgFUxnhLz","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":"unn3asncBBbWe_orh6zUv","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iTnXWufFxLmA7UlHIXxsF","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":"cjZh6msb_TWJiCrb4n_K0","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":"NyF5Nb6a6ym-GzaZDoYLi","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":"CZ4Upo4lO0UMBpBIcZwWC","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":"SbLaccFIy1S-WK2yxpo53","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":"1nBAaw3Wj3yl_MTSLeOpX","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":"AZqCDn-4EmmEisT8ZYEvV","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":"qX37UD1vPOiEzy95c9Wlv","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":"FWN-HiuptChzz9a4pajfq","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":"ucFAAHWQMGEI5wMshjvwX","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":"eMVdcql6L0G17jU7ZAHkM","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":"rKpltfKHoQeUBwo0QGCgu","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":"5d4sGmofx5taRcALJkfni","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":"sBjxuw_BAatcbROghH1Ap","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":"ISvERj7jzCy_Fp2ZfUr8i","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":"fza3MjxRhukjaL3Co0RuV","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":"3Zm-SCeG6htZu4fpLq7A1","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":"eiHdTtdtUxxqrtNysG1Ur","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":"m-YNjQfyX0ySVxySjrPbD","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K3eaO611Diwlg41C4hSmN","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":"DQKsMMVS6pUZrF7Yk5BdC","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":"AXQIY3FXEO7eqtis37RcK","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":"_iveh8GNch1m8YIcSvhd8","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":"5PLYbz3ZAY0rUrxCSmUvw","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":"jwEIuPzIvvwZGmD17yMCr","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":"BPX1iyMwctDK8IX-NEQEE","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":"7xsJydxbh0fd8q5esqSci","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":"HoE3Kfk6YuPhikTWLQeuK","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":"qG_T9_dcS2GqmDNxuU47h","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":"_Lg2Np85aWzuLEzf8HZEW","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":"IG7WA2ekW5mwXw3KrKqVd","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":"6yl4X0O57XrW7PdTxlrP9","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":"cuVUYkTlGft6RMVQkSbsz","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":"UHKx-Ib-4QhxZadhQ7M6k","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":"rrYeKPJS_Akp_rFPuPLbx","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":"DwbnJnKwdshBS6KQAiRXO","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":"MYzopSylHPy6nVsdNkA2x","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":"YrjogLlhIfMUlLN9fSCLx","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":"cxBMWuPAEitWDC7KgiWlj","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":"aMnj7fzTzzxob--lFtgoy","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":"qBQj3hxrbTsmrSBPkcr0m","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":"uen1OZAEY70_yTFvkKAOx","name":"Compositor","brief":"","type":"ClassDoc","description":"

                          A base Compositor object.

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"d4_8epZ57i7rOnzPhRO91","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          an array of vertex attribute properties

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

                          the shader currently used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CCB9VPm5wHhG-vl53da8r","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the default shader created by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kFxejhzl9QzOrNVhhocmW","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":"hrI6bGghrFoRH4Icb4xNq","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":"tkxqyJSrAK_SLkDS6JYKY","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          the vertex data buffer used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mKfffpmNoUaPC6QC4tBta","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":"KhCqY46AIa6-qW6l8bIbE","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":"PQLGZTdjISKa-HW2bNTVR","name":"bind","brief":"

                          called by the WebGL renderer when a compositor become the current one

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x0N6gAoFs29p-6thjBvQP","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":"YVNesNEw_HEmH6ZJLc9pS","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":"tC1VoWkurXSFlBh2RnW4L","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":"o4AuVS1U7I-Os6-yO3xbm","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":"bL2FnZfIW4YAZuaP7dgYy","name":"Container","brief":"","type":"ClassDoc","description":"

                          Container represents a collection of child objects

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"fzzak2VffSH8BEEvgBNF3","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":"14HLgNYJHKqPFh1dQDQnq","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":"Er8LA6RY3QiLurTLd5vXY","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":"6GhZEQZRrfsdkNg9JdbAi","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":"quxcAaby6_d_NPI3Aa2Ib","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":"FY8oS7LYhWfOECr_Q5mxD","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":"ngZl4gZW_yLq8JcC_0gq2","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":"v_OizOXEdRj_xvmkhvcJg","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":"r0HqdMHNdb2rbshTdHt1c","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":"l80DFFyqSQfPtWTuwCl9C","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":"QlWDw9NE7pQ4raZtiGHBt","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u6sOsQ6UptpXNeHa7mmw3","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":"YaiK2GbWw_xOvlwT2Xfr6","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ge51YWrOGj_0bRNLmWs-h","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":"7AZDOKiulbmbvszTCXnTO","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":"powmxQASKJfmyXeWT3KfT","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":"l1FC3y52gvih-sdlM2-O-","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GJl2wyN9Sf32wKrPkabIv","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":"rzzB2YoFiiP-uECO5u-Qn","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":"HA6JTOv7pFmu-i7YUk_3C","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":"bU2CMDlYH5pVvbuGomn-q","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":"V--3uHnGwiAK9N3C3mW5f","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":"eMIetomN-YUVlIK-8YCgS","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_StZYii3Cw6G-SQMfulx","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JdH5pmEacafz5GET8fbVg","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":"2RdngOafzVQsaEtmYFRdX","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"irjiUDub_SuxRN-vPXtL3","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":"nKMTwNHee_IuvOp4QmELv","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8gZ1EjrOplSU90wgWSW0_","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":"4uLLteSMjAqKlXHb07myQ","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

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

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RDhwj4I5CxIemDN3zssT2","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          whether the container is the root of the scene

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"REbcfnILFW_RVzBikMFgM","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":"0BGleDi1UR0Gzdn3N86bX","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":"v-uljs_05CVre7JaDenbQ","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":"fZRt7ft-7XUoCbWo9RDaF","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CABRMLAn241Aox-rpAbQD","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LZQXCwEwDh3duZthHGFKN","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":"qz97Yb2uzBE771-KMhLPH","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vblqzw79Ki77EZ3WMiK_n","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":"8-82u3C8RPsI0Ebn8kSPG","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":"SppEdU4FnQAnxGDGrDdN7","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":"GskuZ0Zz46O4I-a1dZuHL","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":"_0heJ0FEmlDw-zVhb4rbx","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":"IXL4VqwXspJXnZwSBlj_X","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":"1plDre1zXiJ-x33HLw0_d","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":"HHcHd-dQX_M7VU1DSAprf","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":"n5qM3F9x-1OxRxAFtlx2-","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":"b8qzoR9U3t9pWOtasSDlN","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-vFO5BkhZVgeia4ckp7s","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":"46P9ltcKrN8jwtOHRHUqi","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":"C2-FtDakzA_ptVWVadNeU","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":"Di3EMcpT9Wa6ATA21S5vS","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":"1ouYMoepsLvZw8Ie_Tnxd","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":"HBtAkel8x7hwWiOI-uuPe","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":"i4G1TrhChwbDH3gy3C2wD","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":"gcXIpRWRQbEbDtf5k2vN_","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":"8FxPmMHlmhu7mT7KK6x5D","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":"NedoU0Y7j6FB_xaqFsD5e","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":"ENr7c81VxHRumulsJBM76","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":"9H9-8XEpWSnZMDjWPLLHm","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":"lDZPin6Y2jRsKe95pFQk7","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":"j5F1DS3WXceCcR_J8nVg_","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":"guVkJQYrhsgUPTDfPt_kh","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":"0HphEVJwwjol3XO86LTzw","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":"OgENHUKCCvqOY13wMUVA8","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":"a6cvlkAWeo-hEH1p1JTyn","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":"D-UgOKZyzwbOnNMplPO5B","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":"6LXFQDZ1kRRT0ak7v_wfg","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":"drcWtaGQ5HDSU6Km0FRM6","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":"KVRrUblk2bigmDS2OMQoW","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":"FxHz-Vjdjbn89iQItY26n","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":"2dr4lnYO_6g07IJeMAyUx","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":"hcwtahS-k2TJRhvU96677","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":"0DD5oDkDkV-jM9ozqyW9R","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":"rL2a0cC03hqwyAUnwFPU-","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":"5ZzqB73QKCNqsbAZCTgzs","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YNl5A40Hun-lCMgXiyi1T","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":"lvaMhjF1GVZF9WcxtXhGy","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":"v4q13klQAM7zfJhNlFixx","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":"0ehrhw5hkBhLBvCkltHUy","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":"ZXCdAcghkB93onA_t1SWR","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":"9ur9hEG7cBqM7bxz5Z7cD","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":"UO8irbeoZf0tQgsXVNnhT","name":"reset","brief":"

                          reset the container, removing all childrens, and reseting transforms.

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GOHLAuvz4W6jfarc8RfdT","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":"mNgU2pHIleMmMdDWatkOT","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":"f2U-A3lwiGpCJJgGmVDQw","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":"fnCxyAiZ6HHe0ZWKn7AL9","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":"boYCq5BOXlGtr7SggVaRN","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":"OLsQnUNQcGUb-bquOEPLM","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":"8vIEBXrrDgK4mv6Cu4iy6","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":"lHa4B1GR1BaWtweC_AQOG","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":"4qesxtgGK16bqjrqYbE3k","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":"umV8PbOGvwuxjmgNar4pZ","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":"4RrPujolCAeeJQszBa_CY","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":"Nv25OQ8QjaVAfhNVYYi85","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":"smyaGPN2dwNWcgbOQyIid","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":"NGKoglGG8Kf0LfGjL9kaH","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":"WcZjGWC-Fh7q2AO4glsH9","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":"4cR8WjwYuLrvSHe-7lPIU","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":"g3QE1oIrwt_uCxXo2sRkU","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":"x2FndWRQmMFNeBQeSbSNb","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":"Iji3vTScxTqWpA0s1vbBd","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":"DsDbrYm9eX8YBd1lmp3La","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":"0kOkZT3jxXGDw3hk730KC","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":"MV9B1x--mTmPTSNoXyYTy","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":"S9bsPQaW6tCmF_PQvfp3E","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":"Gij6a4yUoagZxD5gisQTG","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":"V3hSUh75VriZjdYqPEJZq","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":"11sDXeME_JludkYO0oJBS","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":"ny6ru4IYtwpbxwfPZKE3c","name":"Draggable","brief":"","see":["DropTarget"],"type":"ClassDoc","description":"

                          A Draggable base object

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"E7t_Qpz56bf-WcLH0qA0P","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":"zfaOkhl596akrjaXsjEb1","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":"_DEcanDFS7pbDIOGewztB","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":"418lLk0pMS2M_8MA5dzU_","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":"qJrc87EDJQBA70CItHjdY","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":"in9prPd5Co245RobCErkw","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":"xotldL-DL9PtqDkwNiHXY","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":"oPZKVRKisVrxronpWqW0j","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pKhOtCPM-vd_UvdE8bDtJ","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AxktB_g5zPgyHrP86rnJD","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":"TLg3ibFjyICLpXxkquGhj","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":"H1UlzmH4Ru4uzHSzS2Cuv","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JjvgK1abKdgrUg1Fl0Sfy","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":"LINCS4z8QTAxo1JJW9FBx","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":"LCD-G6voIQ9MYw2v04ffF","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":"uDvsKPzJhUjHiep98V9FD","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":"EG-YT9O9teTy0EopN-Ghj","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":"OQjgdlGW0VfnSaH3LQd2W","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":"1qzNSkhNmOLR_PYKDuQz0","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CUVj0IhrzFF92jyFSWywI","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":"dNNC3SEBgoMc5jPxLtq8O","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rnYooGzCFcx-sfym86NLV","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":"X5Eg8baB2ZOmceusd8Zu9","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q3SbzRxvagDXuvF6ZdWjk","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":"OuFT9c47e7EQWcP7Cmsw6","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5v6Kj9VpfJoyH1T5iDh0u","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ylQCM7tFzAK-dntZGrPsY","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":"Pi8-ZAMpHPdSyy0SMGq0Y","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":"gpIBRlarjGOTexrZYBlAw","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R5IHzBtLUeY5GZ3ma6SAS","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w04_0OgjwEBX0INuAFqMT","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":"J0r4n0bMYgMLywLLkEMEX","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nXPTOVZeYnde9jNBO8ZqO","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":"J30NX7BaivFIwXxn4Mj7-","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":"_vAs43Vjlx0n1Dz-Vtf1e","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-Dhp4uxiv2VShf4KqUfk","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":"OtN2w8lcmnmPFTUTv5_2q","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":"8kcT6weL0gxXN4BB2Nwbt","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":"8CHbJh1jsDr_wQwYes7gw","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":"WoCt2DVwWwNuqElVhTE2a","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":"GLW2Gi3eQjpkwU0x7xXEc","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":"QsvmxlZl3sPRmyrMw8hwd","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":"4D5tVPusvCWFrbmniuRg1","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":"4L2feQpyYtbVlSZ9dkXhr","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":"YePazmqBPEizZbQqpKaaJ","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":"PxD6YSxOuwgfNrb3llTIC","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":"53r-c8sRv6JtFaodfQp4c","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":"Dhovb1eDEda5yQvloiUDW","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":"-X6CogYC7edBW-idTcmdE","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":"4aJDPagAg3pa6_9HO2dFt","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":"xR51PIFCCK3H7KPptVaim","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":"KpECH7T52zE3c-ZyyA7Pe","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":"Xl5ZEGfg1EsvHZ3Us84uW","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":"1gb3wu7bY8yUFTaNY-9oJ","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":"IzGSkB8pCKp5zxrDyRlL4","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"By1FuRoeVklmCKvuroLOU","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":"eyX7hFD3kCUlqPdbJUbqH","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":"Gwd9Se58xC4E-yMNIQ2I_","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":"iaJbJGCBZIJUFEiKorsvr","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":"9ejLxvbXlvF3zSQdI6pwS","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":"7s-nflmWgYLM6nZR7WstI","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":"D8HzphGD5BJ_giiGg9nly","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":"WuQFXftSwjem8N_o6mDIF","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_ANyo-V1XQCMzUStv75M","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":"98WMxqj2zY6LjFoXhJ0Gp","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":"38hOA2gB7Im74P9pZ7xQ0","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":"gQd_0p1cx1k2HSppPlnn_","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":"eCNBMCsl6mvW_bSvJOZmf","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":"t2yRhet8IwWPrxq57Jm3I","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":"uHJ4pXohBkjBGkP7AHLki","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":"JiiPt5UwA0m-HG_iTvfsu","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":"TgPoqytbO3OZETV2X22T6","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":"tkeMC-gG-RLtqAKCVALcs","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":"3Bn4NL6g3X_kGZXWqwp2k","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":"YU9LAPJRGS3RA_06YJvDe","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":"8-sh1A8-bGk1kNiXAuYcG","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":"GZC0K3QEr7XUQhrnqfncn","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":"Tgmx1jNdM8UBHTIOUDeHr","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":"A0e044i6Nbi5Hvm1F05sL","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          dead/living state of the entity
                          \ndefault value : true

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4_GHxSLyYcXQRgX7Ou5Zy","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":"pU4UF0Sb6oDwN5o2-ZDGH","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":"9iWuGcs2EOFSpe3UOY2a2","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":"fC9Lch_znDt0wAhImC41X","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":"WckgtBTSz3Ylsgz53yl45","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":"v1iL9m_-VC7UqQ4ZpaA9n","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":"cm0e138zKjezEuWvNbwsW","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the entity body object

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

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1jkuPPVZPMQ9KE6kggrCw","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G0dlPpYfGHVwm4ZhcHTdy","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":"7fEE3f9dIhox1m_KRZH6t","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":"7hxNmX3ig9wcMTUw8Bqkl","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

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

                          object unique ID (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rlplOj5p3MyLCd7LwuAxj","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":"ssdev0bSiojaxcME_QH4Y","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":"EB_RrAXEQw1PLsmCuQsNR","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":"7dlu2D1w1ClwmKfnZpcpc","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":"G6DpV0NiuZciUBW9XGs8o","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":"Rw8pSDiXxA0KHN6NFdQjz","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":"uhF5khtCBwSpo5HLuli4v","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y848hPEFwCZwkUj67TS80","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":"wXNdgFNaPanK7hO7f6QnV","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"04R3efhcK-sHYaXKpetWe","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":"0Fo0a8w9Ma41zN6vYNz8_","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"u5jE_iHhloBTlAroMPyev","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":"BfibiDqjQzjsvBk4DQ9xR","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RyaWcu1YM0DMjPErKeqLa","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":"t8Z0ZWJqajowkyGhknrM4","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c-RlDiD1qsTwQGWW_0mPY","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":"9d1f2OE6WmZQHpM8ceIej","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":"Yk7HU41UzyG5iKnoFY6SG","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

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

                          object type (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j-6UQRGQSo1tvwunpj6uo","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":"atg2b3UnIT539KabcfoA-","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yXvbTF9PsAb_hAEY-cCRZ","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":"x617N8tQ1vkKGut9X_hqI","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":"BRLzOZQ_k8iBCGxVg8mys","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":"Okv0ihQIJAhkHQ3WUZFTV","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":"pM4QMWH8_58CTBDZL216H","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":"B7QYtGR7bcOJfOVGUHsHL","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":"vDa1tDaiO1D0ZkwZldQ6x","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":"L_Hhro8relSqHEjS2CtaE","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":"0UMb-TyBX2GJECnTY1m1P","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":"opJYmhYF8l8YIApuDIqCo","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":"looafGnDZ3jql0EGw_F7M","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":"CXpc46t91M54GU4Pi92Ro","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":"88j18Y2akTlRkBofIXQ1D","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":"s-aYPGaLjP0XQFTdJonH0","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":"aKQzJPao7OG9GkKKO2HNN","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":"pzYbQAOcbmIywzSd_txGN","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":"9JX8qb-j8PhmmB2w7f04Z","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":"Pf16W0RdKxodhPLuIGWj7","name":"onBodyUpdate","brief":"

                          update the bounds when the body is modified

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WvI2F_9r_GAMTrKcwfoY9","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":"BFXYJpvKKNn0QIs9aDZcQ","name":"onDeactivateEvent","brief":"

                          onDeactivateEvent Notification function

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iYbzH3HcP7J2_SxcflsqN","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"42p5MDVbvCufjPeDf_dRl","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":"S-zgykrvJfW2WaNnPGset","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":"9AYTNiTZlqsYuNT1cBuRm","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":"MV0Orpgy72u_K9wd5yZoJ","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":"On3o1NBUrJh-fnQAVtEJx","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":"PTIea8avAtgM_U2rl_mYK","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":"p2tiGMFSCT8q3QHQsaxft","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":"p6yNjdusS3zRI_88FWIIr","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":"v7pwQh5FibC7dVu6NrfO_","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":"KGZ6A1pOj3zypH6-qSV9K","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":"ztfo2qDotQRG9Pkbwkj8G","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":"wa9UBnmWn44rRkqarZ7bG","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":"_ykQW8kHnWxebGNbf4jRw","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":"PPLyclcAyZtBHQQF0R2u2","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":"SoQG3ji76A6bfWuln4oI7","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":"pwgt2VSLXHLARX4JhY9r5","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":"ULhX78y_avzVCS0XkuH8h","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":"QD32meDYTDnc1ELXVCRgu","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":"Uf0MG0OfAV9zF22zkTAjS","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":"WS4HGbI0fMcDvtODbSdnC","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":"BWY8Wo23zQmozEpL69ur2","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":"7LpZTB8BlrzCAP_Rt_UWz","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":"HU-vcKNeh4acdiNMeXOiX","name":"DropTarget","brief":"","see":["Draggable"],"type":"ClassDoc","description":"

                          a base drop target object

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"S0qQLrLlqCDRf3fhD4F1r","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":"NrbZ-Z4y5qCpg3Mee4WeZ","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":"I6dFBa_MRi2zQ2iFEqETL","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":"otSEwvvQ75KWfJpi3Z4_n","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":"gNrr9ledlhaF2PXAsAhrZ","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":"q1palaR5awLhyWvLfhmp3","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":"Jk3-ppiG7HUUMBFidetQ3","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":"jVZkNVNZxurYJCLsAMnQK","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u-H-C6sIKdLnAwTQGX9_a","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Oji8rHal4b9HKX-HLuu64","name":"checkMethod","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

                          the checkmethod we want to use

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Htl3FtksXKGU2SKstaMxk","name":"CHECKMETHOD_CONTAINS","brief":"","access":"public","defaultValue":"\"contains\"","scope":"instance","type":"PropertyDoc","description":"

                          constant for the contains method

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1fcdHDpFdtbOX5gsL-qhD","name":"CHECKMETHOD_OVERLAP","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

                          constant for the overlaps method

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

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qMhHlfdlmStp-afgnEg48","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qAAZfH4VzlwUtoOAcOEd8","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":"s2_G5Kfb0f16ZRZpBz3zu","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":"0jltblCGToALUfJcwfYDk","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_tNe0L_kh2dGzlK_DW7zV","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":"PSS_EpGqwZqLs2VNLHZvW","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":"SDCVdHxbqgEBp3Xdt97uU","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":"3cAlYM3ie1_FtrN1lj8L1","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":"ydlZ0OIjJo0Yu6zcbDv_F","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":"eT6TfZc8NAf2BU3-UP5DF","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":"5lpWVX8tP2ruUuTaI5W2l","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ab5nKrhfAAIIMkaVWoqAb","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":"kXBgJvqgNi4abx1z6W-3p","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2plmingSnV-YwKdMo7WAC","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":"4k4SEqZWikNo0wqcNhaMw","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tHqFyIOi1_ZlXe4M8t4fP","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":"PiugxYpfO40_J_EkcSiqM","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ktdqa32-A99vSaATjOUIA","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x7564ktd7Qq6eC-ktP93i","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":"15G7u9eCskIBSxVdAK194","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":"0Ydd6wJ0IX7aCZBq0c_iK","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"U3LXqiFSpR0P_UHt25k1V","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mFpdUzwrWhL6F1hzV4XXX","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":"KIEKyrJDVe7XAhuNoQofV","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QWDFmimHiFR8rMfCrD-IC","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":"6eziQS6o-Y9MzZzrDpb_3","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":"fWDqpr5Kopn9geaHJ9Zca","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":"lKAAtDO-ejn6GRL--TK0B","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":"S3g8RUJAObrGYHVnfayFX","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":"XCHxjb4qq0dxIPMLT4rFf","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":"RlrHsc2hrb59fBVUpzpuD","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":"x6NzIa_0IFVqlQgCmBjvH","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":"xEz_kkH2LffXLeVkHYS12","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":"Vmxw4T4GmR2gVqGm3UAUv","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":"btYTnhz8CkpE5_gYKkcS7","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":"iqQ36nD8Dl_per6uXOKUd","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":"83NpykqMNk2DWjAUq4uyE","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":"dBes9aVklU3fNIJ1T2s2C","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":"M_PkTb5I5ZQxvMYx5JOiX","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":"qmwaDIFl9-LQVmXbMLlcW","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":"e2zy38sf-C0KHHpn_tqGb","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":"K7vRkpkNnkkNjKK9BqNLf","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":"kPs3CE8Dh3bGNl8q-A8sm","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":"aQgY80eBP1E5IEy-38-5f","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":"IOoswJIArKL572vnttE0h","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":"Y_pzBP_LrJRNZEBOXl56z","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7KG788TKGbrhDbnWAX31L","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":"6zs06C91tVng6KZCx6pGw","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":"UrsY8EBhw-IUppvnn0Jzd","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":"MAuYD9A8OJ-7P1kkZGCrD","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":"VNElMsCtHcNrHjjbLpqtO","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":"pGcD0ttVW7ixFxM5lVOeq","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":"QKfkF-zsEg7PbR-aS9ePs","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":"dFOlbpNABqhiLW99nPjUg","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":"2YFB9_GV-jDkw282xXlsN","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":"Aj_dPx7Iswv07wDd7LT15","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":"tZGAxg27bOqfkoa11hgso","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":"W8lNTU3KTlPui0rt8UYH0","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":"Z8bdWLEqdVdd8s5KTaLHX","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":"780YFAwfrBeEiXB-KAto-","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":"9sZOVAJfX_JlTVNePDzzI","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":"P-5qb3Uy6mLesgS60u0d_","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":"OFwmq8BLod2-65fTqXAfp","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":"7hIrkJkAoM9Ww-R49o8bo","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":"odDm7DKELwtJzAD3lAZkd","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":"Vnk2ugfU0sAIeWmScsvZr","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":"5L92pGp1B-mEexkCsyJS3","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":"gccmW6bLRT9afaADr3WeQ","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":"2BCEZUx0I4fj2ESx3eMrj","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":"YUFVU-LmgQMVIjwfLGiJb","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          dead/living state of the entity
                          \ndefault value : true

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0uX_UX6CDJFQ1ngJfkfHl","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":"NR01xInTPt2_NIlI-YbXt","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":"FfIu6HQAhSYPuKRhbMah6","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":"jC_l7EfHi-QVi3DmVQ3Il","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":"C33hgeNXdh-vHpR_blxKk","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":"HzV3P8WIZXKcYWpKp7TkS","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":"_ndlupoTqVdGdMAhEI81y","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the entity body object

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

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Jn-w-K0UKxVnNZi-lO4FT","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TU84ELGh35Na-0T59mvWP","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o3Va8g0nMjtcVM25BnnW5","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":"OdnIWKMhXEUpVYm7p960f","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":"xWVmAzApxj60HO4CAK4kl","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

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

                          object unique ID (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AYtPwa3-xsoeoyqCzbyVn","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":"N-ruCM7f3QVPyXidBLVqV","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":"VGbtB0yZrnl_vUKtbC-bg","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":"CPtKfS7ZW2UMsKwBTb4Py","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":"8vntxE5FPo9CGi5qCHsrK","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":"A-U_CiX8SK5un8KBSbG3X","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":"QM8ITM0yL4p7-ZEguawFW","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e-JSeHWiaP3-g0d7ebyQ1","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9S0mki6GTl5oy27TBF10B","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":"yIRlD7xvkSZaj825mllPj","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I5NcG9JhWrT78VdhhcsbM","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":"kNuQfdryRiF5pfOimpSaG","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"j5hlFkHtKxoAZv2Xahakb","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":"Lq0rS8SrdC04EPRvtCNqm","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tl3tCIov84pcfLt043mS8","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":"K9PcSvEp7orKEhCldJIq0","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bv5ZRlbxizYOyFIEFMd5S","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":"2TcYmbUD5IeLvlNfHebSl","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":"l0ofLFLgSueaZNNDrlEKD","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"itxmrfUr6O-rc1HYInrrM","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object type (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7Q5nZLAlrpp2ALFxje73i","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":"vb0BVi5DRj0RAi7nfuW9B","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3GRKdr_kMjShqUVaBUB1a","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":"PR3Ke9cBdjrU6LSASajpD","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":"qlb9mDj-SYX8mEZ3466jS","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":"LzF5YhTx-uouCQkBNufuP","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":"-MNqm8m5xF5TF4NUXvwMH","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":"psxEQ_XYMnCeycy3GKpjR","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":"Qh1I3kRP9IvC8qaM8zQ80","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":"IfpDMWTFLL35COjqLXl7y","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":"QRl8s5m3zuZVuhSfuonHH","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":"-sdFW2qPbzgH7p5MKoODO","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":"HZzuH0g_l4_zix2J6JNj7","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":"OcikYRs-TAXtaepPokmyV","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":"9gZlI6pCInagorK2zfc7l","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":"_9yY8D514LyDhotaW_8Gv","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":"z80CxmRVxdp2VztZYX6Rs","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":"uZ5ECTy-sOFtl3IjtKabR","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":"CgPaDn6CJrLOU2LGte_qu","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":"hMJtQArdcouXRBETVtM1N","name":"onBodyUpdate","brief":"

                          update the bounds when the body is modified

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T79DbmQ0jUfSz9mlZLFn2","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":"iynrM7_WhtBah6QymJb2l","name":"onDeactivateEvent","brief":"

                          onDeactivateEvent Notification function

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xn9f-eA9RBqNQNM0WKDbd","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DOpz6BCPXBGAFUNptHUGy","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":"5fbOrdW8jmQiarE3r1Gbl","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":"SyVl1_H0KCWNGzySaCXTR","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":"2gWfudhMZ4Q36VLHYvEdF","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":"Pftzrm64mY4H7zs-wptB1","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":"nCf8pthDlEkX53Ghd2sjC","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":"xVwmTSO8pwtmZi_loDMmp","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":"JC9-6wlprdEO8PwQiRsQL","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":"QBt-8KlH4HwHzTFm_ikdj","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":"gfATZxiYJWM6yhnfFlgEN","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":"plOBYD11YX2dqy9zz983-","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":"X5L75YpD3NMRmt0IX1PAC","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":"4VajzA6sn_W31th8DmyWf","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":"3wewkqpeOII5ENNSlGW2u","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":"I2G7FrKo2QafLiP7HFwx8","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":"0BJWBKdOCtjQFzayBr4FO","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":"gkfwyWpr2wuXevq5CCUjj","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":"Paw9p1A0C_mlmkfUwYCOp","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":"0QVxycPOwy5udP7buoI7v","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":"SVYTJxAbYFJ5Wppc305o5","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":"ldX44xxUAT6IOP6-Ruzph","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":"QBEsPwVE8Mozx8oEqyEz-","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":"ANrxbw3cERU8wvosqDl9B","name":"Ellipse","brief":"","type":"ClassDoc","description":"

                          an ellipse Object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Jb03-Vh1UWWglzhLssKQj","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          the center coordinates of the ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3gj0XYfNOaAOxRBesauwX","name":"radius","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Maximum radius of the ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rKO5hItC1Fd3cYNIAe3vq","name":"radiusSq","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Radius squared, for pythagorean theorom

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yMWeaboiNrmNHrWlfEEyO","name":"radiusV","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Pre-scaled radius vector for ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s8xy8lD4jp8_7Dw_2E9If","name":"ratio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          x/y scaling ratio for ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BjK4zDba7W_9LjYcooe4s","name":"type","brief":"","defaultValue":"\"Ellipse\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PveqFnjj8cKuQEoy2gVOj","name":"_bounds","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                          The bounding rectangle for this shape

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BmmHxACLSD4OXmKkg1UHI","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":"KYzcEQLLEVqCyOXqcZKsM","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":"C3WzjSZPFqil82K3G8bcw","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","optional":false,"variadic":true,"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":"gGxGqkzBg-By1yoed1fwB","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":"2qrexcUtoyhL0YvE7NMQ1","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":"9TWsF5t9VfQFp8aCDjI4A","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":"qLC5qzUiAi4RAYjcFuzfB","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":"H-I8Ot0uxUKS8WCdqP0V5","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":"iy5SPwlMSSlQ_2XvW5dBz","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":"In0RREYFArEnfFfJlHiNT","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":"hpvOf2kFTsvmM3zdbIdjf","name":"Entity","brief":"","type":"ClassDoc","description":"

                          a Generic Object Entity

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"tkI_eXyFO214hLDWB5boH","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          dead/living state of the entity
                          \ndefault value : true

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jpSxX87ousTuRxtiTh_FX","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":"vNdi1xiHVzM3obeKC4NBx","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":"dOw-6RiJRVWMay-LUkPkR","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":"PK6dX_fF-IX6NCo_3IBnb","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":"UoX6lzzAmDLrqi8lNYswO","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":"IjuzooMHfDfbqbTP1zc1d","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":"ZP7omu5dUSUDZLyXQVwkJ","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the entity body object

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

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d0b6BbI6dYpLeqWn_wu6b","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":"ZfWQyTyTFtp3_y6SnP9Iv","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":"WVtXICp52LhbcHdlffUEL","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rI-68kDVe6XxDKhMpYmCS","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object unique ID (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vHPQzCHBXWTvIyTAw7YR8","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":"s-nGJNXc4V9UDwTS0fKNB","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":"NYDo3b-th1QF8QxQBIFE1","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":"Rekpm9WJPwKRjs775fdoB","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":"IPG235n8b_yPu6ouTyfPq","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":"-MMehWT_7Ov04no9YF3uW","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":"5bzXWwz5oVrMxboL-QpeT","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NJYAIF1ScDy4-0ZhdgAcM","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2kIf5rBOLBtjd3nzQevih","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":"AtvJlDa8xpkyFRYJKI3va","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-kLTXkDeAZuHkB7N0xNWR","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":"3ptO4GwfrxZqQ_wGuE-5z","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RYN7kzAgn5v1UxLlUCA8n","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":"xBjAUxoNC6dWPPkjR3MsT","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fn8j6WftctdiR8zWPLJOZ","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":"iSAfVA0GK4oxkVb8dRBi8","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jXRHYTqcj0bEr6WT0YlNI","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":"OrF47mjF4ZviPV4j35ATR","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":"cf-wY3Zms5HEbaxntWIg1","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b6xqST-zfCgPYWgnOkSdh","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object type (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b-9RmbHwYhig8tf324Xh8","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":"eJIWdkqU8TIEu8kxLP0hD","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7x94h44RpjkC9rZl7CtI9","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":"Y8WNdyttgRnb_8lXm7try","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":"WTeUb98DOT4wk_4yjIvDs","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":"1efIX37YaWGXn9cPA9l1X","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":"7gYuGhT2NjdllfGKldNUh","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":"T2qwU1eudTGmEiPyqx865","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":"rmTdhby6j1Uj3XsWybJRO","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":"nAo4FVlgHv2axGyX9Af3o","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":"nGS0HPSz9Ns7TYDW_ziJI","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":"vd_58EkSqVMMSxTti50X7","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":"TQicPcCKWbJXEzLypdJBS","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":"zysG1FSb0hVYUuHdNhsls","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":"IFq1pQne3G39gK8HtKDbU","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":"Ya0QnZNOggYayuJawq2FV","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":"TQZ3dclEaM3yfP58mkic2","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":"KQuHO6Eh4FDB5ZRmm649Q","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":"JVvDc6R7gbU8Lnb9qKHTh","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":"_VAZSN6hLBOlrj0EXtW5O","name":"onBodyUpdate","brief":"

                          update the bounds when the body is modified

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UjKvcJ7iKJ1c4bdf2Z5eQ","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":"0ER56VNf22SqH5XJKjOs_","name":"onDeactivateEvent","brief":"

                          onDeactivateEvent Notification function

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J7G0Jevn1kMYJkiNzx0I1","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YPB0Kt5pGq7extGKn5ezn","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":"H_ZluB_c6TIKQKNS0pXlD","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":"qSerxBrPyXzaot4276moX","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":"-oMNRU2iPHF9b7LxYV38J","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":"7-Z9w47hB-sJCuRrUgFx2","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":"IUkkvPPD2xngpVPkWA5iO","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":"Ls9NNimRBxs_UCLrKZbPm","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":"oZJg7j8h5AboaBqAczO0e","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":"fOAifDqTvvEQthO0M_255","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":"hHuNZxSeJFkSIDB4RmfSH","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":"HXAJ9oZlDLzrJ4lSdIFEK","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":"yeiJs0YPe50BcbOnWc8ad","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":"HE7vSg_3HEc8UitznWm7x","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":"GQ9s24dloauqWeZO_U-SC","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":"f7OTMw20ABhSFf3xgq1g3","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":"nun9SvCM_PD3yCDH4HEjt","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":"vbGks7SM9VEFhiqk3ix1P","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":"c5wmDJly5iR53xY7f2AVn","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":"pDVbZ1ITGOg3ygN3Kysmb","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":"X0XjowN-XFIPXijjjcRep","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":"1eTvNooFBO6WTVCdOBznk","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":"95hnQLa3kqJoOUD6fy2FB","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":"6xoHCAeZ8gKrNht5M0aVm","name":"GLShader","brief":"","type":"ClassDoc","description":"

                          a base GL Shader object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"cORqQixK-9ttgXTGcBUd3","name":"attributes","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the location attributes of the shader

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

                          the fragment shader source code

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

                          the active gl rendering context

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hD8bVfOYpyZnRgOXDc-oY","name":"program","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the shader program (once compiled)

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

                          the uniforms of the shader

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0anohAJYOaE23c5Jp8Uj_","name":"vertex","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the vertex shader source code

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZCgDteHjU6bKg1WA8IOgj","name":"bind","brief":"

                          Installs this shader program as part of current rendering state

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WgJsNughhDMsW0WQT7fAL","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":"SLElkoDxd-vqgWmX4ynUc","name":"destroy","brief":"

                          destroy this shader objects resources (program, attributes, uniforms)

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kIx-K62fNgKgmj-oJJdee","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":"4oY3DJzFcSouv71F-W1ud","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":"XcmQc8ZWmIfURw245W6Nb","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":"UNkMGKVtUZbVJcpy_u_I7","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":"iKu2ZZ-mfqcSeAgbR7GiO","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":"H8xRjQWJEAZm39KodHzBj","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":"qkPGZtMYp7o-J7vjvwPtK","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":"Pw-5DO60BSx08Xan65CSI","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":"EamB6FLqsuLpjCTw7o0QF","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tAGCrHb7FXINx7-K6F8vw","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dfgiknC4n6NuYyBypbB_e","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":"g9Y7CKorUxv69EKg9xbft","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":"UAe_pw1NVojY6BcuqZWq7","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":"Gmt_OYVW_dRPuouNuLgSu","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rA-DVBYhTWutWKaHsRmo2","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":"txfbZSm5r1J54qtW5JGSD","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":"amwNUticoWJYA4g1HpXl5","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vkLOsQ0RABc3Z7fB0fieX","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":"8HkADcUpoiSs8hzZ-NJzt","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":"3gALDekSe_FNW7oOT1VOS","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":"GLC3i6R2NHsvaDXN8O-ZQ","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":"AtOL8Dp4tSbVMD3ITsJVD","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":"eNgH1t0iLZzhXO5tRca_p","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":"It3kpMKlQPiseisFtpARv","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YG4m31NC88aUzhoFVQA7o","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hbEbf3s82aRlOhWEFCVfe","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":"KRwThRueMK6Ypq4miviyv","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Aa18aUKhm6xFPgXOTRTT9","name":"offset","brief":"","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":"s1JorNMtBsTJwi-Mno-cK","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":"1xsD4e4gr-I4igq0UjWOg","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"loCzs-UZYAOKF3bLsrntB","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":"aKSMFNT8gD-UUhPnqwr0v","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

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

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1h5n3ANJd_pC1hFh8SqeU","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":"JGmazbk3z9uFx-7Js9mSE","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1dIh8XQ9VWLXYUE55AkBg","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":"OlhTgsuK29hhXxD9rSUyN","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F1iRGTsAkUuFRjl4NPZxJ","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xKQxTH-8RCULmwGb6XNHq","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":"fEYSVxMdDp6fGhyHIizxK","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-HVHjbFj59Qq_FbHTAfDa","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 defining 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":"kaVXe1dUhX4dEJBoMHXgq","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":"LArhyFVjoI3lO78UZevjb","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":"pQpSfs1O51mCBusFZRby0","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":"KpaBUBWBQu09FP9tojKLK","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":"RfSpVmdummuOW_us9XyIL","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":"EGA6FPs_Cu1-JRSrwfDJd","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":"qysuT-v9zZkLoPWroKh4G","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":"8r25GLhRbbfDUpoui31-Q","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":"9hqPSI4X8I3pVXG06ToPp","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":"BdasFZ_Op_bKYfdQHPWFc","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":"VVQkdE5UjHwlUJu2_1R0I","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":"XWDEfTO0vfK_6VryZhoez","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":"dshZYKjE1FDwkjfqWywZB","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":"d1NA-S3ugQ6tDrBeplLMF","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":"WDs4OEheDM8IitZORB4AB","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":"fU1D3W-x_bwPOgKQgRkuw","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":"zfVwsc5QSl3jYuprf_Fwx","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":"knEtrsMVTOqWZNaZIrfO1","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":"NL1NtUHx9z4wu4YUok5w-","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":"ThjQVi-g2lxgLAGtt_yWb","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":"oeApWPQ3DyIKGzCKhVSid","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":"scvKBaec5PJp-TMGamraK","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":"LZ1nhD1EQR1YABjix1BpI","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QLXoxYExunkslJ8pk_Tyj","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":"J3RkwWB_77FIzkH6WD2WS","name":"pause","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XDhr9R-QZcObbdEsIB5ZH","name":"play","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Okc-_eMm0li7mKdbP3zH0","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":"HJCFmPObiI3UwZXkRb48E","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":"xyHQhgI81OHOQQsaSz1nF","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":"PLSOogi3R2sn0sjLdIFJv","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":"94uX9BoevuxKCYPZEGl2c","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":"Js2nQuyL0UW3gq3Wha_-G","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":"I_SEBWV1FcQp1xkzfjpQ7","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":"kiuusxk30mZy4HA6ewaiu","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":"K2hm6b8hPE0RBlQnUkohZ","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":"4MlMoS3t1JP0Xv0UXYDDw","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":"o4vffo1_wdGT8M88bg4_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":"AnCNpwF6oUSyyKo7oNGrr","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":"-qLHGsmQ9HHQsHBHT7BZZ","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":"Mn_nwjjk1_4mlsHKNFII5","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":"uUxWUEppLHclQHT502H6w","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":"gvfSfthEESVk5N3IH_0L4","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":"a8-zLpB0YMfU6Yg0J4wWF","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":"Lp2pYcbHcOkK7WHPW8y7H","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":"BL9v333oa8FpWqkWdp3qr","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":"ouffAArE1iuYd965N1ZL-","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":"Hwz73olSKVE-fqXRaqQeC","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":"NFYZkRck1ve4kKmwWY_aR","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":"ZzLByhGvcjPWF2AQfU8bM","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":"3QqZh1qJqLSp5e90G2lKT","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":"YaOjNYvj37qgu9Tl9QDam","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":"RON0cKhKJzDj0qX4A1FPz","name":"ImageLayer","brief":"","type":"ClassDoc","description":"

                          a generic Image Layer Object

                          ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"O7bf9l5uNO5rZ-_30CwRd","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":"RuSaNb-pK4Zz6xpc6IR8L","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":"jm1vJxjoBOOWrxJiAGwFG","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":"qg8ysaswaVma3cG-5e0ry","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":"IBJA2EGf6h1i3YNH3gwQ-","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ObfuKLleCo1pAWaeKhRkw","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YrHMC2OjC7jiOnGPFnJOG","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":"B2qbmc918NuLpOBkORLqz","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":"ji_ud9DuZhriNx6MRV3Jm","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":"5Zklh41D-ul_nfQpH5tEs","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X-p1-KikkPRjuAwcPvZLl","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I-NWcA9MfepekGfr8TB6o","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-v1V8J1qBwRoB1XmmBXZg","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Uxzm18qs0veqkTWNWnS2r","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":"DKHHHin0nZDBMBYIhmjaV","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":"yqVLy_8_uW3rctwiXM_bc","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m1UdqiwqQmdCcTjhOgbG_","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":"HhErAY7W-6x1xmj8zfudH","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":"qlV45vHcSMKtBRCVHCYUm","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":"-WlkWvDEjCKNLevdOE5GG","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":"dk8T6t2K7si1BTZCb7ddP","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":"jVCxdb9hwuIUq4o-fMvL5","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":"rx92-DyGbTyTJGHSVVaps","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CXDHdOUW2EFv_oY56RTnS","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FEfg2LYzJEH4NL6Tz_HnZ","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":"btErMDuJi4tnYeUAZmDM4","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5BbVaTgUgxxeFbz_X-5eW","name":"offset","brief":"","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":"6qBuGvrVkdbfOZuDhOc5V","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":"g0_ZgW1MVtqmCrhR3_e7K","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4Sa0sJ1h1RlG9s8BX08Pa","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":"QHYXoRCDs5L-vdhF9fRiU","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nFyXlcuZhIKFmdDyZaPg1","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":"oHqVEB63r3wF8LFrIt5Ib","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":"2212PwowHobXpGuhgb6A4","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d4h9JI0xpND8nInT8nPOe","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":"3uwgLdLht7w2ufjXFp1AK","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w56MX5N3QDmGkqZ3A9vjz","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":"-6DJuw8z7864D4YFlfH_8","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pfipBtUIDbs674S3Fzv93","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JMbY4ATc1Xl1Vv_HtVmsY","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":"7yEoeO1xCTUWh9t6K3x5m","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qHhqntR7c_ae0O5mQR8L2","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 defining 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":"vlIOQ-MDY2HVKp9yLogby","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":"9oQgymhtTsVgxAF6EZQo9","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":"5GlSRvCVzhe9c3puqm_8p","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":"ZwEifEWKH7yD1CwZFjlkV","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":"9w72Dxd_sQpW2aFK5wYVU","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":"LrBIDD14O0S4OGO-fi9lj","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":"EAOHlj8HEIjBepx8jsLUv","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":"8_tpui3HocduNjnkGEiwe","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":"IslWvtOttw2A5cPbk0l_n","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":"GGSKT0_eD3yaBO2xtmJn_","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":"ajovoiIrOAtlQtOfbiZ9m","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":"ewSSvqC2UinSEzeFu1Z23","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":"IqYDh1A5S2Y_YBQtBVdNu","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":"nhBCtOpzk17fszllOhYEh","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":"3MBGR5iOalg3ZHkSmp9U0","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":"2lWtsmK1_syRvMhDiL2My","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":"xp-JUEW8zbw5CcduwGpDk","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":"JqYuhe76NAr1Csf4UvDxU","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":"hE4RHeWO7aaCbALNplV6o","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":"ez9mmFKikvD89EOwfAVra","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":"1_wivpLmk55doR3gtrdN5","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":"SnrQnJ86TfOWSAKaYFxAw","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":"pb55OAhLMyoYT73F8K5EQ","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fh5dJmqEx8-weVYv4kXIk","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":"eNz1S-vcOqYnOEBKBfCV_","name":"pause","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YsL2m2vpWB4TCDcxZdo81","name":"play","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R4vyrjjtR7yRvv4WmqhoA","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":"fb5v7xxIyi6grFgQzddPp","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":"Hw7vqtNbGVILtiQwIzHJx","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":"O1CDd-oI8YcFKHf4gfG2d","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":"a01vIX60w7hlQqTz6lY8o","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":"5CSWw66chif-PWxVSU1Pn","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":"QVhlZcUr5Cd4oa5VY0Iv_","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":"3CGjWrhVbX9MvvS6QNOpx","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":"vFmcksVt0oXFh7GVkmQT_","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":"TU6Ot8zy0JvrA8rgEFd8r","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":"DdAkxI2tQxMTTRb2M4W4P","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":"WV2nCoYlZu6TBP2HGIif1","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":"joNQOEpJNg4rk99O_GQdK","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":"yl8x0UVvWWSVi01kGAVRP","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":"xS-AhR_-gEsZ9OlLJKh2l","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":"dYtiQ2xjrS7-OwTQdeJ7J","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":"U0buc--RvMksF9pripiIy","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":"iw4vtAEKPJNnqMuOVH1vi","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":"scMlyg0x07iECuB451NfT","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":"wPjhjz0apvPClTpWgLyrp","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":"38CYZuveWYhIVFMDTgP6P","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":"HPth7EZdAKth_8FuU7sE8","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":"POOgo3dWmKalrszX8C14D","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":"WKSGuCD-M9vzjHLtIS4lL","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":"_L_ffxNol9AZL52pTlV3L","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":"URsG5YnlVIpq7CJcRH1f8","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":"I22WNFZ6cln8zc2Mjk6Cy","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":"slnwjhOPqehJEoihH1bjH","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":"6dUbCo4r3L0Exh6x379bB","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":"UNsewztQZIG4kZFwtVGOZ","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":"euePWaoLyZJjiagE4BcAn","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":"dkOJT1MD9OzoKoYcKWZgz","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":"Xz0rf3_mrdGYxtHKDtY3E","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":"zJNFMX5y4ZUA236yENZ13","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AeueCv3fUy-rPj2NMLd2d","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LrCtZyqolEnd8BywuQGt4","name":"color","brief":"","defaultValue":"\"#FFF\"","scope":"instance","type":"PropertyDoc","description":"

                          the color of the light

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

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Du0UKZ3Qg7T0zJIxjveg","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KG-KIiLe7yAto_-flSsvb","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":"tQ4HgYI8fgz2rw5NwVvTM","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":"oJwUS_4mPqAMChLfPr2PO","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6FtRwIpeGlfl3g6Js9yrY","name":"intensity","brief":"","defaultValue":"0.7","scope":"instance","type":"PropertyDoc","description":"

                          The intensity of the light

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KLuJHJaAUl_a1--OnVqpO","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":"xOlzxXt4kSxmvJjrWu6EF","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":"CrXDAGnHvwaB_oypxyuSN","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":"dUQoz_aCNJj_pupbw3yeg","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":"5O76aIqBobVdww-mzNmsI","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":"w5Dnw88Q3Z1hQBYEfjKud","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":"x_3WukFKZUOJBCUErfGL2","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a-aDud-J3VSL2SdtggMZ8","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vGrQ-dgauwQNKrx9Itzg3","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":"RchZgHSfj8nA5JVEs7qqs","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C2cR_KGRCITyAQevRDeJD","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":"Hcg-Pvc0T0evEXWewGFzG","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lTmqOMLoVctHs57B2QRml","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":"hzQ9rsXS541qfOXm2Ff32","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

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

                          The horizontal radius of the light

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hTVXpiwzV2h-zj3BuFNZF","name":"radiusY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The vertical radius of the light

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

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qBs2Hq0s7zldj1pLlF2NJ","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":"jcgSq2NYqF_f-qI-A06lZ","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":"T_NoTsFiIr40XQ0G0MOv0","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LrvV8lay0JGgZK6Ub4PfB","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w6AeSy_bD6U6UQXuylBC1","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":"7s1CoIZiNrpWYmpRAfD_J","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h23unsp1enuVU-410I6Zl","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":"nON7u-GJBnbuDTxKBbt2c","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":"qVbYX7ssASQZv7EMCshxl","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":"D6n9xtY9H3i0pvHgSYOXj","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":"-EIJs6U37jLBKF9gq3Gin","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":"WknY4L94c_3T6NhmneIhz","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":"0IDwyh7FGSg-PmEMe6adj","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":"pyjcGDsRXFlgqifPWITq4","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":"cR4yZ_VP-uWBt5NCL-XBp","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":"upYtofT9NtybWfIY0yxo0","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":"9t6WrwIBpQ6UjMke-Z1LC","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":"-l2r0TqS5tMbMqF04obX5","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":"gHC2PzihE1HjLCWLlLQRq","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":"XB0Z4lEGxuLDGgf9NBPQ5","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":"61pPouF9c438f28_ZoyRP","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":"UGkiBqPsPtzLA8hxJd22x","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":"-StfJk_DW-RTJREJC-Bon","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":"wKkHT9UakgRG6q9jj-uYc","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":"SJEeUS9rn0wNskzsSTHuz","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":"BaS5uBWCrTA4C-BxVyfAX","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"moDKm5RVj87Kg7dr6IRCq","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":"t2pLuWDo6rpe8F_AFxkO7","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":"T3M0Tv8WckBINV-kfinW6","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":"Xf5bNVCoRECVx1m0TcJcR","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":"jujUB-0e7BjvMNZwhAWNA","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":"vZh2mIaAfvMXOam10_29g","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":"SIKus-t2SnZ5gJsAlCEAs","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":"KEw0IuPIC2sFyEYMUY2h9","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":"mUC1eE3j7u4LMS31tFsi7","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":"_TlXMVOfhWJIbXj9fYNDU","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":"PIiAhRIRB_xnZb2oznu99","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":"zM16Il1ljsmW-r8QTuL4q","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":"PQ9IkP2xqExxg1c1kpxUR","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":"0fMLmYUEyqGQHPWqnTe0i","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":"zWjEPD6RyLglWOu6ip9qq","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":"bUj-eyaC5AxFrUUU4etr1","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":"WDeoJ2BSWO_lkjdW9G74Z","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":"JNLCbfzdTXTHVVCKZOaw3","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":"XQTMofS7dbH5ZPCIIQZho","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function

                          ","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 dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_Su0GGDqiRdparafZzBnr","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":"93l4gDfJc1yMnIwxQw1Hf","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":"gXmrXCi_j3C3ACckTrUSg","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":"euhLJEMUfQl50MI1vZC-T","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":"FKmVnCkh_2GQbBiEF1wtw","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":"FzacciXoMJ5NQLKR2aaP7","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kr5qbe3mTOU_dWQSPn0_0","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1g50Vpch7ppqcNce_1Sae","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":"nxmyUwtDBJQd9GlfBNF3V","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":"d_m68eWykAcRCdQhpG2pm","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":"QfVeQPa7pt8s29fVDEpdP","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":"0QDeMUH23sHmqsOSU-IKA","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":"5dhLXyNoIqx_V_xdwH18D","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":"1tXt5Boydtkv0DvP6iuca","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":"kWHpLiaOP-rtvqxj_IrIr","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":"doAQfP7gdC1xPJyaNCZ0f","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":"qv6nOsLi57VZX4kGtHbk4","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":"xcFGyIboHY0Rmxz2fAY6Q","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":"fLgqZ_LS4MgMcwd5-jqwx","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":"tyUJLeIxivgqBHfkRL_fe","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":"TXTYlgElkKIRGA4n0rTX0","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":"2NegWVVjVO9xFu1Gn59H6","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":"YhaZEpZle_K2Ej1h_4g-E","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":"EO7yyZd4UFA9iAd9QiQ82","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":"qRctUOiLFrrqozYdkmX5s","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":"2IaQHb9vcie0pxceeJ4lM","name":"Matrix2d","brief":"","type":"ClassDoc","description":"

                          a Matrix2d Object.
                          \nthe identity matrix and parameters position :
                          \n

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"jClQ_KHjIemG59togMFTR","name":"tx","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

                          tx component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rUj8f26zK4Zj34yPmXCRx","name":"ty","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

                          ty component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WIGfitXmPdycD2KUDznw0","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":"648NNkLOarjvebO-trbMp","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":"xZoWvD6MZpf_fUFnwZZ8j","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":"WsYKfD_ZJ6ZK2nYEjPOcE","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":"VHRbmZDEQqdlVZpPmREVU","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":"M8J51P7juKTiVPAkNjZ76","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":"G_c7ooeXDuekmNCQpdvfn","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":"RO79-fUvkVX17BZOhaR76","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":"Jjw61EVKmdGNxwR_5gVSl","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":"WX8QisyHYpL-7xy8ljz6Z","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":"GeXVij_a3MV0v6OvZftG2","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":"d7buY01tL2zyY8RNis2PC","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":"_YpOkxAgoXhWqowL2ycnv","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":"inyFtUDMhTLbDV8WKbhzU","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":"L7NR2VpzgYiwU1phnI89J","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":"0rfYzOBN2BmuQnQFOpIHx","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":"huB_uhsmlaisXi0i7wkp0","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":"AxoCYNLrCnSRb6dDtj0pd","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":"1I6vRz7PMwdpiT0kG67OB","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":"CL-e25AV4yiGsDyVKx0uv","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":"Z-gp6DI0qE99oy8xQk0bE","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":"n-qRzhpAyzlb41H0PcBfN","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":"XngvomhtYEjG0gTLbGIjz","name":"Matrix3d","brief":"","type":"ClassDoc","description":"

                          a 4x4 Matrix3d Object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"1TVz_-dXO1oLCXyIGqii-","name":"tx","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          tx component of the matrix

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

                          ty component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L9olZzyr7nP-BcdmiTnki","name":"tz","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          ty component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y-iqQoHrKS8uQv7bpGeez","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":"cf-_RPv7MigzOp_gNLCYA","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":"2IHgZA_MDk7j8gOECnFPg","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":"S3K9124qSTdwH4YuMwQi5","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":"a4gmLuYzeW6M0EVrF0rSJ","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":"rD8vRuhHd2Zk6uNXF970S","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":"U-A5boD0_KRv0WDYDG3f_","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":"gRtPKJF6_oBoaGTIqfuPT","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":"yfab29Lun-Sf7RGkVgvMd","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":"ZVNkCqr_WfBmPrWOBcUdP","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":"T0fNyaGmEI7V-RyfESvuo","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":"0Dz-CzibzVkmjJUUAYgrS","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":"xmc33rnwXztmXA2PnhxrG","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":"VZppfhicvfP-Ki_jh-BXJ","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":"L4TaTAHDv1qrd8winSfFp","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":"ignx9cEhK-uh8HgCJltRf","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":"nIlYJcEm4NZk1PX5FqdWb","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":"YhjZFNUBRCsZul_yDJeZF","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":"Oc_RRLgALd1Y-Hg3Lh9OZ","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":"TBmAMCjbk9UJXqpYsGTCT","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":"Q6NzKOUjpOol9jPBnZLjC","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":"g0H6vGgOPHFb7o8fdQ2-5","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":"5PzSO4UygwcjbUnD8jglF","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":"9uK8llzGssOjlACpzDhKG","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":"rvc5pWX1VUXc851u5mi6J","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":"2sbWtg908dX7RMh3ARke4","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":"u8TMQ1QAzqudrjkgqIawT","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":"xIccliz9DNZ3s-m9-6Xm1","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TpuFNtohEX4aiOgTguP5j","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HNvLFIrmiZtDwmxpV1k-r","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":"Xd8rGAtev_2vYMJUWjQ1H","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":"oljlYULl7qew-rIrs5J6E","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":"tSXw37U7uPVT7IDpNxcFs","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MDRdmwBWL5Bu1g2pXX-OR","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E0I-3F_aLSNU_E6BVgf3i","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IhIGPTX3k3eFYM5j_f-zk","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SwkUFmdqPn8QoZybWhvoW","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":"-LbutexUV7kda4k_mYJ92","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":"lDnxnNFhAHGgVVWYBPPei","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the NineSliceSprite

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mHGpuBHx2h_VmQZxDjyZ7","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":"GR5YM1HZQvpCNLAJ6JLdy","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":"sOCkX_Ra46dPredL9bpU0","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":"CF5R48d1Mfw5WUoE5xEje","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":"zw8HisYPBrW_dzNSNjKdA","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":"5jmqewm9nC76VkvW0HWic","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":"RqJiOs88eU8UU_NP3wYly","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nyIlBjbby-yIQqE14rfxK","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3IqqAP9O1-K06m1DMI_VQ","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hKZn5s6SIMQISZCS37F1q","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":"9NToDxt5c5Oqg7AZ54mTD","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A0i8R8-WxQ-_rT4H3VbrC","name":"offset","brief":"","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":"11V0JZqvWvvBPssHnavac","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":"bhxQDFAQJVXpZeczT-gEJ","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"y5Gpuegi1-qJfY-tB_5v-","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":"RE_3shXIHXlIk9SFV-7um","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

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

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E-dscyYcu6Kq2nSs6lpQC","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":"-wKprCkMyoabkIRIGI8hX","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XWE0ayZFOkogPAhO0d5F2","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":"T55nOU0bjkwoS2KuH1rKV","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jEzz50kABhioQgUGx5TUs","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uUccTngE6n3NrkRnsIo_r","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":"72_joNKpBwPOaFxAsWygB","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the NineSliceSprite

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RvQR96_e2g4JV5WJLmjn4","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 defining 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":"xQmd2P_--UOPf9Tqd_zzB","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":"TgNlSv78D63mgdffedlDi","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":"H4QZ4TbHhei42he6cX5ux","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":"de0I536rSoB0nbvsTN49h","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":"wURTz3NlmOXpRnS1qg_0C","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":"r_giPLifmxLUyciSUI7z1","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":"u6UcTJLdcrBnidKlSkFP6","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":"uQxB1xBLJKnfTH350ZWNG","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":"c3_P2j0Kfu6wE_jn5teQb","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":"Q17hzNoKDpTOJ8wEhGSPn","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":"ZpDL1wMMA-yq6PbuVUuPa","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":"oumFnysnAbwncoZIuLORA","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":"ThXZUAqQMhvz8DHK_5ILM","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":"Kc_exOvpQjk_8N1V9860y","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":"Bf8seq8N4aqlLzFY5dqKg","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":"nbWmQd4A4874EQ7yRsFkc","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":"T2hp2rGzwD7fsBoJnvYpI","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":"Ukuj9oALvXtKIh0kOypXT","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":"w6BlnUP5XmICacJ1UZw4j","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":"W5-5N56neQmAev2Hw6qFB","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":"UhrLeSMfhsseTOjKt75ic","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":"2dL3DBCj3NhXyKRQXJt6d","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":"yKyU3AiqE6-5HRnZouSOV","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fH3vYd6waY65ZbEHsdYXd","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":"s_X8YJ6JpPZFKCx0AIeng","name":"pause","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dTqXGkOkm_DFsvr02y_qo","name":"play","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CLvTR7JMyRMeol4AtujF-","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":"BVKSXLsBZNKXU6_l_pR0Z","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":"blJRZVuj4Mt7ryHk48TCD","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":"ECiDUiAmU76cU1tQtb_dH","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":"opzz3_EWvGRNJpc0RBKVD","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":"xL_02IDoihgWUwYQDG_uv","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":"5nT3puqgzsJEMKu1HEI2h","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":"cRmpv4qBJ1hohOPNf3kgr","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":"h5lRQjxJCvbMp36AFrwGb","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":"ok66tRzzOpWyhCFA0ZukI","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":"pB9xz3aYf8-qax5bt8pA9","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":"2IUxavLreajqGvuD__oGR","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":"HuZjLZjUKktsRan5kQv8R","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":"6vQDlbQmxb33wv626IihF","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":"AY-Qehsx-Cbaf82oKyPcr","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":"5fFC7Of5oxvUTPwX7Jk_c","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":"kvPT2zMo3SM4XqpwCuTuF","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":"faKqXNntLMSQYUMA1eabM","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":"G6D7I5binQNPfgm5ZkOmg","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":"P0msbI_DHsbPKLer_D4iS","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":"WF_OFsCS4zDVEN2i9P4gL","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":"qJSKyNO36Q2jy8tavFSLr","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":"9OpuDVvaHzKrZX_Bv5VJ8","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":"i2-yRIV68e4t4AdT0d9H9","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":"UbsFuWBwrGzOaySgpttoE","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":"-_lJOhnqhFiUigBpLA92k","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":"OifmFnEEIaHBQ7ui_oFx2","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":"6D_u0IKSWESxedfljSNx6","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":"mfd6peGgY5qy3OCKDWxT8","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":"iBEFxTzY8S9h6qAvyWQ7j","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":"wMCKA15YucrILjxgi6tSr","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":"RO1KDUp18k07sPlN5BxyO","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":"gOF0sP0WdRgpvsLc1_5VL","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":"mZg5Ung3sjY10hQfKAmin","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":"YACFR_JelhiIx3b8vHjOY","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          x value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mbBXKT07GHOhX2xLzvzj_","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          y value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wlmoYyfotCL_oOCxoBwl2","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":"ahJEM1XUv8LHMuGVQ2S5O","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":"lBKKHuvYnbVQeRON3csKM","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":"MPfUmCa5_w9yS0ayCfWM3","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":"xAvBJYmSZN-0pYgSdR9bT","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":"x2145MkVvFn4TicRWPCFM","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":"dTeyHtDaSU5NdrnoAcUNo","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":"TeM7lgH_OxTj1QcpZLzxh","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":"w7c1qim6SIB5ZOvREQsIT","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":"CWEShrE15hfwINIpr3CKQ","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":"lcLO37mG8bddB3UoGyqqN","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":"Nsbqcd_ff42iSztujsmMR","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":"ceDJfT7KTUTEa60063PkM","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":"D9NPJ4ngXyySmAqEvSnsP","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":"nBXv5MAMJ11LgMSqt3MUu","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":"bW0rot-aROv3Izdfsx49t","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":"iAR7AMGTktB40TrQ2bxr0","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":"iN44mEvV-NAyWFQQG8Bij","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":"y_3nZ9b3v7EI2U3Q8Pp4q","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":"slTAadtDsREkwE8A9ylGD","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":"wySlyTG-hzTSI2FueeFhS","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":"AC-d6HMgMmWpfd3B4jfiJ","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":"uoZ2lKhkw2nw0v2R35cZI","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":"vruel-PP4oseIM11ZzAP7","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":"q61UmGaZ5LOc59Lk_8sL6","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":"ubSebtP_ZSIeQbnlhjVzc","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":"thBY2HNNFHyMxvMPOWrRd","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":"sUi1Oi8BdhjqzBSmqaaEp","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":"0disccHjiRKQ-AoIyXt2K","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":"6EzXVES2haU3z6a7NvI8I","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":"yHt28OLU--w0h8dVWqMrw","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":"IDbV5J-QnkaZH6qYi5Wie","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":"KKuHDnMwPBHMw-yGoH4c-","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":"9sOVK3KlpB_zPnjrNmUXh","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":"oxtqJumghPOqtvLlVPm8u","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":"sUnx7sGgrXs_YSqglB6PU","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":"GYUAijz9LuWhv1Drq0wQ8","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":"qZ66C9kbZfTr_QfBvALO1","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":"XUln4FKifmzicNMsuEA4X","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":"gC0fhMeXiVR7zFrSYJ8ld","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":"ys2sgIMzzGiJNdYIphLM8","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":"HaKo22bT6ypPNieecMq10","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":"Ft6-I-YOn1qitNnlhLhX2","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":"NCklLh66OehaHT8mZcji9","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          x value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"18EUOXPCWIr8Y1TvnNN8y","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          y value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ScTDxrI_dn2F5zRLB4_Q6","name":"z","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          z value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZnzgWErEz46dmrz9M216X","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":"ZGEnkxNoDtHXAzfHc5LH5","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":"n46Xee38aF3AE7SXTAXKD","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":"3NtXA1rb14pQeuEGBFIVj","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":"4mRFBeBP9aLNBkn5F4IaF","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":"q7X4WSXerECRg-aAl6l0M","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":"oPEG5Y8ZVan8aNUlZmOtZ","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":"8jkKAted9wE7J-GFs5d5G","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":"ZeyPd9o0U47ANX0KX4zT4","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":"1f7g-Bef-50MPcZj6CjOZ","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":"qjiWLu0tsffskSE10jZkA","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":"sHPEvMeJXyHfEAXb-jXN_","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":"s85axGnVdB_bk2rA-abOc","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":"ihbcgWnwsBaJuySNcjXTf","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":"CLKCyUrKF4OtAoGFYZ90J","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":"kFpDsex7WpQcdlJLLOigX","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":"J9YmHeucrBpbjUm7VIktv","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":"hyN-wURHUXVqEwbPySgrL","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":"WKTYdrGA6GK_OL8MLmd-A","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":"CsKlJYNJ3ZvCVjRV9YeqP","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":"mQoZcDNwsg6CaoNG8q1ML","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":"OM9dHDj9TKGF3IyJYTUib","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":"HQjUlJRJ4pgZuawhyLlY5","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":"azEGoGYm3mvfvd87QY4VK","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":"m-GtavQ-GMkNY6jT-PIpD","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":"_5KlfgEMt68xUbJuldn38","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":"SctCa7CtZzyF4dUt914WQ","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":"f0J6eUWKab0R3i0WFia3P","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":"c1q0bGrPxiWO_zVm-ZC65","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":"laBalwEdZoY3H6e9w8lal","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":"eGVsBG1YtJ85UncgG14n4","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":"4VtAN5Dp6rTF9-zE-zDrQ","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":"r-kJc7s6akXirj40rxXTN","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":"1gUzdy7bwIpdgEZPtvVyC","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":"jpJZWjSkSL4ROb3aF3GJ6","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":"uQ4taeEU_a1vzqF31W3cF","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":"ulCHW5hF9y0AqnpkFMmh1","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":"8jafzH36RUe460_oRmzJB","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":"sKZTr3r1SA8b0Vh2vARjj","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":"VNoM8tqd4uJ4gMlk1Gjid","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":"hMlbOUpT3qCPTn-aGCWM3","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":"ydI0C74714RkkgpOg6Ulh","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":"G-JOIl_nJxPhSI8DM5ZMH","name":"Particle","brief":"","type":"ClassDoc","description":"

                          Single Particle Object.

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"_nGqRB96fDxvPEG2CnzSh","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":"ZYyDTHVgpoD-N2EgtvQbD","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":"1nlAVdAQI_ezapPBN9pUx","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":"uB-HzeXJxpA9K-_XUMtd7","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":"8-GdhVwSQi3YKtlMKYciv","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":"hTjsQ0zHhU290S6y5VW5T","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":"OuuL20FTMAf7EAtWFR6H_","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":"T5EAv-yz3ATeC6uL4WOj8","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PPV54du-uiOaF-I8YudVL","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7zX1CvVR0uQN4JMjO83Qq","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tfnk_pYkXZzbYwrpkVXmH","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":"wbO0GmPlZVlWXEmuby09b","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":"LNvmN_x8aARJiT58u67DM","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q3YoUWoArzwBepfW_LeIP","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":"UTvztyQlf0uLjve7Lwgw3","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":"DTP-2r41nv-Ea3UELGGGl","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":"wPX6MEzmrUY1Cv7IJ4DhU","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":"E_Ig4wlg77VNIpooKas4S","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":"zMa23B9BXL7D_Lf6HaMeF","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":"bBIg5siZGeyZ4vcC6eM5Q","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G-wLMRTnxwY3v30QWLW4H","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":"1OMixaT1xpG4_jhsYaZIn","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q3rY555jVxd_TLgouSTbK","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":"arU8BPDlN-XS3mjNj5WWo","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Cb1Dm0KL-c1ItZgZue8EB","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":"bi-fGlKEqTs0uHqcbxzIS","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

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

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IXps5TqsN0uLa19wIF0qx","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":"GyjwS8HLPhQA7IO1yEr6k","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":"-b5sL2mCHi9UfTeD60wn1","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AB7Vnb8u8uCueLJmr5AiR","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jo80UGkQDFVjdtxpmkFT7","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":"_zUVy97XcllZ2SuZmMioc","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qf-eryogAqzUSN_OLCHzt","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":"F82lp3q_57nI310hllBoR","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":"1bbFJ9T6utCreM-5A5CUT","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":"ucT3vVeBCLAEl0Q06b86p","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":"AXFcX5jQr_JMPPFn2nnxs","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":"mBlUBbr78Ol8kLOh6AYXk","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":"zlbsD3N7RJ_ZFc0SMypbT","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":"1X-1H2MMcUkbJjTaehIrf","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":"derTDrByRVcaybDKWvDQW","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":"Lu72PlABFGJK0A0pJhBmq","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":"XArEcCJWZBXJ1pQEI18oy","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":"H3hFDqmyiALdh-CQQBt1c","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":"2zM-LMCFJStM1h6VOAVCO","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":"1kQOleXRI8tFZwPUDWec6","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":"QF3ynU1L-ZH87pBgecuPT","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":"lFqD6wmKidEFX0kCvXg-b","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":"2sHadMvFtS0bwZ_t1xfEE","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":"Bh_5FuNuPqvwPjgdqK3GO","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":"5UMyUqtGCe6ADULmieBQQ","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":"R0weWUNtGtI3-iKTL-grL","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r26vjU8rSBgKF-5Bt0fYi","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":"zjSghhPezsdgRHdIdDLqp","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":"LD75h90jwqSfwr-QSyFm2","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":"xXsddWSXa7U56c11nxY-L","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":"nq_lpJOab_irf8P-82hBC","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":"zzsFrtMPmZHou_zYVO-5L","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":"z9ulvDLn-K8lYocy7GNze","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":"3MBb0Ub0ZoDa-7oTFRnI0","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":"0NyvGPsg7gd0AXTqeckmI","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":"uDuPfnEem5JVi5Ae2mI_D","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":"k-gDq7y9kEgKW0lfhktGL","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":"9dF8EGUHUeejWE6_eU4Mo","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":"ED2etpf9yxELZLLtjAlQ_","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":"Z0e0m7vocHOZ9iLGAk4RI","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":"yRNiZ-1sdqltQOc3QYZWX","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":"_u3vQFFyPO8hxprONargf","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":"igdvxk_W1_fykpbmZ7atN","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":"zJSVB825vW9fTkz2FuKng","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":"eeIaBEurNMaKR1psdrYPM","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":"Sp1UeHQNJfR9jbScqYmPa","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":"sQvGs3WA_uz9INyCyC6He","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":"UaFTHbuGVtqVLbAmGeCcm","name":"ParticleEmitter","brief":"","type":"ClassDoc","description":"

                          Particle Emitter Object.

                          ","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"nKgZvWpvm7cMchoD14Qck","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":"rKgKRSmOwVNbJbPkU2USz","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":"JqpXvkE4Li8qgr82MNuNw","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":"4JsxetGEir2SoxE2VVlUx","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":"dse5x0YLe5HgJ45rOmACa","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":"jK0z6TmwNfWkreRi_KDX1","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":"HQbCO_TIsGZIzKbCG7pmv","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":"aPQQU57FsQ46VbPO-7EhX","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":"uGRgaKkDcAKskpvN1kyww","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":"w0yyXjgeZp9YZ_HDTBaj_","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":"YiC3ILunh78-sPiHCPZfT","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2hG97IZb0yuF3n-S983a6","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cW4NhxAnj3LH-G4gzj0l_","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GcATQEIc5vj9r_I_EWVaF","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":"1piVmW9c3oyxt-tp5gOSC","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BMxrOd2-gI3XGEOV6LpyW","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Aw3GhetW_oARQJPiKk_NX","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":"R9ttrXBLNDm4P7gfHDHQ6","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":"z5MeqhmuRdmF5kPdmLyES","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":"QiU8QB0rG9J75r65OV3F5","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kjR8B9hY0H-fT8Uf-uxEV","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":"smKsi3A21N1zx9EAMtBgf","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":"9aBwqvQVc0iulMGNz2WmS","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":"ABPn_8RnPsZ3ZXuRlscUr","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":"APcIpeLOJ92M4ie6LGLuo","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":"RSq4xUb_hb10y1VVPbdXG","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":"2KcAH6GqqaP9ADNh0lZZI","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QEIROJ9VP60YQWn3r88EJ","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":"TrYGeBqqTMB9ejM-_c22E","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lqUS7XppmUejp-14Vp_ST","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":"ddMuij6TYW-B3k6O9co4r","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yBCZzOuEUY3s5i7R7zM5A","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":"RRt1UHkr2-a4ckTuhhV7B","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3FRNqlB4qs08WqU_bEF0C","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6BE-4pGPV71jLiUd4bZ7U","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          whether the container is the root of the scene

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

                          the current (active) emitter settings

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PG_yfvG1YVwvLRaYrkl8e","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":"TNUuTdmsAdh4CxaKJsOBG","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":"T1nEDiOVbRqTtxtre8zLO","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":"bhHOAFYwK9ookWICckdiz","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KEZXFIMuq9UFRPWkM2t2F","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bUdOYhWMLMirCoeixKNhW","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":"t4jGPB97xASM_JZ7qVK8X","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wtcitOvk4UBaeRPOxk8Mo","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":"41wcjVzvxVlU-LKPmEn_u","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":"Gvi-FGXIhqoKkNiNDGlft","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":"36uP-qF5xT8pv2zTP0ULw","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":"9mHwvXpdKG9wfUCB0Id0E","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":"ip9eoxhrQZZlSGcLPDELQ","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":"sVUo4a1533ChwdxaLM_2O","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":"fusWzWGTtCZoBYMiMiGjF","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":"t4b-7cIN65AUgn7e2Ur3D","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":"ZqF5SyZzL8hHUa3ZkN31h","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":"kIhmV7AcDd4MZ7Kr3bl2g","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":"scPoYPsVkplhyC6MYVhzu","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":"Z3SNDh45Nl1lSzLM3f-G8","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":"JKGXGZgD2Duju6j3pXOKA","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":"CuqCGW1cWqc4wyYQsNQha","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":"Fs94zX_fLoI-QWzUh6GUh","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":"gjBE0MKE0QTuScm8ZyT3_","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":"N-p6PdogULpvCaXEXwcYt","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":"r5TTqqB-kUAwhDX72h0_6","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":"325TUq8FNPML7HQjjJH9w","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":"j0p1dWOTGIWw6ttwmlw2d","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":"eckalFPJVAR2ILkhRx6Sb","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":"VD72vuCOe6rKO9eyPAipG","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":"-4yv6ZfcISYKBFkXpBAL0","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":"402nQkG0HqfSdtTusQNvU","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":"TwoS7lkEZNA4ECA96J6pU","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":"OvvztM6TjTxpGHHeppzkv","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":"9G7y73kpOSlVXDyM4EeZL","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":"03rUaSZihm3nx9yBRcNDX","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":"x-Cl31CBhK_r-1x-6xYvh","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":"uEUzQR2NSadCiOyQbleQ2","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":"D1BkFvlbzZ2y2ij3I4hMf","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":"6vA6D4VkTMA1-LrfXhhbB","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":"pWDvm5ATvOLdFIpe1QWiN","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":"1KIub2wsfmC1_8MVVnI7L","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":"KIBlCpJw8brQb03lWRWMA","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":"LcJTSLCj943f_OCqBIOta","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":"snwArG8X8ThGFNGf0euzC","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":"PWopfYuUqx3DhM71bM60p","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":"jEVkzkp-mUDMnwj4Wdu4Z","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":"TfyCgY3Do-5hKAoE-7pED","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":"L9wVWFXLRxUW7EkA7L6DS","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GSH_Kn-9wE1J4zLZC4y9U","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":"kwXKWeZVo6I5K2qYnmPwl","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":"ohzacAgKNcNDZ7_8eEYOm","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":"qzoTTMfPbnGHZUYJoTAQL","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":"uA9TzEiBFHNUOnw1mY5w0","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":"yF1xyhzmWy7OCTFQgFN5s","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":"yzUymWGLzBc1m4URpmkca","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":"QxfjIavcKEeqDkiJt3hCu","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":"uw2Di8iLXuJFHrSgfy7fw","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":"ie6L-gM8tOeRtfGDZjMyh","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":"W_ZgFhBEK6dBtCv4CpCCe","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":"ySyLYZT4kGcmlNUvALMQ9","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":"HVdLk3H8c6vvjavZ9uKF1","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":"taKZKRvCk8lMCVhNCJ15L","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":"7FP1tXcpsZn2BLaPynQKS","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":"as1XBmUXmZpUY3E2KTf_w","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":"D_MK07fv-zCLT00PWEdDQ","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":"YiQIoZn5Y1VTnKgZrCIiq","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":"9pDenINnSfKZVQneP6iM_","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":"Jd4X4AowpSFmoT8kMGB5V","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":"hmIfdNQXc6LGvFsvAW0jw","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":"g0hITBKf7OJUNdNnjY3Sr","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":"Jm6lLY5Zx-T4s4VcT-OAN","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":"6EGLBsJGqqfU8Inr7i8wi","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":"4RE_QJfQio8qw8WcNbqzM","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":"KftpomKeZeoDtg4dhfzFY","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":"FVqDNGusdvQWE0vOP5EGL","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":"R_ua7j7Uc_UaCfqmCPbyV","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":"sAUPkyMESUmNwHYlu_hPv","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":"Uf_VG9sWPS4MhBf8r0NIb","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":"AiMer498DNIVMepm101vZ","name":"Path2D","brief":"","type":"ClassDoc","description":"

                          a simplified path2d implementation, supporting only one path

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"MUYKkO4YNAgKFIIBmbquy","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":"OJsQNID8-LU8LsOmRPDo9","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the points defining the current path

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TzGWew779b8FaoC27bYCX","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":"LSaOR1Jx2grBn0GVzyH-u","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":"29pA9rNdFcjeW_LeG9yQA","name":"beginPath","brief":"

                          begin a new path

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ol8UH4NO0ieSUbtRKgrPh","name":"bezierCurveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Adds a cubic Bézier curve to the path.

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

                          The x-coordinate of the first control point.

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

                          The y-coordinate of the first control point.

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

                          The x-coordinate of the second control point.

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

                          The y-coordinate of the second control point.

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

                          The x-coordinate of the end point of the curve.

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

                          The y-coordinate of the end point of the curve.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"q9gXK82yG0b7oyoC46LD6","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":"TgnURVvWbXmNiOjHpDyOs","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":"GKwewCt9rg4mGAKwXd1fS","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":"xKes1_DcLp2sUNAlamjwG","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":"-vc8g187tfLlAdNWeN6TV","name":"parseSVGPath","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Parses an SVG path string and adds the points to the current path.

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

                          The SVG path string to parse.

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"LySIldONb-8lhi4dWZgLA","name":"quadraticCurveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Adds a quadratic Bézier curve to the path.

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

                          The x-coordinate of the control point.

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

                          The y-coordinate of the control point.

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

                          The x-coordinate of the end point of the curve.

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

                          The y-coordinate of the end point of the curve.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"2Z4iHmD1mQPANIgVKuik4","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":"tAmHaBYz39Hry6o-LxhDa","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":"ndb1w7u6ACW8tnjoztxYN","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":"R3EflEz2ltqFyZCP61cpx","name":"Point","brief":"","type":"ClassDoc","description":"

                          represents a point in a 2d space

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"zq--zv72iE5m4GBewgqtA","name":"type","brief":"","defaultValue":"\"Point\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IKATn29az2W8r0FGyiY45","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          the position of the point on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kq72dAWDxzRR2KJE0g0V9","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          the position of the point on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XZsfB2e7vTNk07_H54Iq3","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":"IQ7CXuVR_uxtWTuIIjlk0","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if this point is equal to the given point

                          ","params":[{"identifier":"x","optional":false,"variadic":true,"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":"78sCSGwT_Ciz9XRn4r4Xl","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":"uznQzwSiNKZUovjoDGXWQ","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":"yzWDMimOI1L2CeQo1Hvbg","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"obNPUPxvOCmTeGblLcO2e","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":"qospH8C24ajDSqHFSR27e","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          return the center position of the bound

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

                          center position of the bound on the x axis

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

                          center position of the bound on the y axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7_9uxy4tF7mItiaQ0nv4F","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":"2heJtZ7bV5EOpbu_EEp6o","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":"0TB9YMhtlkTPcWTiyrXhS","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":"WgXOd2Pd4iYQ66cMyjjLq","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":"-ZS2FmDCqFMSyamX7lofU","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":"6r2V697ikL6buUPZc85Gc","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":"mZDFovLEWBS6bw5BSGdku","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":"cQP1YmgaGUt5JB9t2fA3N","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":"fuPnK4fAP-GK4Zvbx4dka","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":"5emqutOdkehLi4PmwlpdW","name":"gameScreenX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event X coordinate relative to the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I78UNLf95KaUuaJvpStHa","name":"gameScreenY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event Y coordinate relative to the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7u_KP-sWNzCsqYGbjYxyN","name":"gameWorldX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event X coordinate relative to the map

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8gEfWu8ZxPSj9OcYnncm7","name":"gameWorldY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event Y coordinate relative to the map

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y6gYwWv1lb0e8QM40NVHK","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":"S6tjo8vOAbyjz01h-no62","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":"3O6GYQwnMYxSP7ktTuxkT","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9RLmmZSfSoE-7m6FBQ-nN","name":"isNormalized","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if not originally a pointer event

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MbPdIXKCBGPM_xxgUy50Q","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":"8PHfEmjC_ti9ibszMca8o","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y9ax-QQjd6cBEpeneMNkK","name":"LEFT","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          constant for left button

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

                          true if the pointer is currently locked

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ybthEYyCbZ_4jsHoGz-bh","name":"MIDDLE","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

                          constant for middle button

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TtyiRxcJNnb2zEwYBcCR0","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":"o4XtFBIWG1qUn7OBJr-mX","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":"Bf0BNbt3aALf-TzIzTvJV","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":"E4iybxm6nB4jVJpUEZitF","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":"ov2HRrR0XAhRAk2tFVEys","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":"78C87zerzojR7kTRbW6a_","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qCJD3U-tafPeapPQaZZAD","name":"RIGHT","brief":"","access":"public","defaultValue":"2","scope":"instance","type":"PropertyDoc","description":"

                          constant for right button

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

                          top coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lfKS_l0OrF4cZhTxIlaFt","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":"w5fNps1FUSmetzeqmYrab","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the bounds

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

                          x position of the bound

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

                          y position of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xLxpvWJMe3wp4Sa2MUQoY","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":"PFlMmOZI-z6XFgMadBBJW","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":"SLWr0vRnoHuvSHZ_Z_7yS","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":"FsOZK5NwJ3fiyC7Irf7rF","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":"O5IbLxq7Jv2NS3d5gozGo","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":"6_xQor3UiT4yOH9T5cISP","name":"clear","brief":"

                          reset the bound

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sy4mW0hLhV71VeZVCLtFp","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":"F5thIO7CQhoGT5be-4kxY","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":"6ELMkvFxZpvb5IMglS5Vg","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":"WL9wEfjXJuoaRKY1x0yav","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":"WCcT_aw8slpVEnq_XY8Y0","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":"qBAkYQsDTWFc5PtkXBvZ9","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":"3To9-HT9cNHXsQAKuLmRQ","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":"fgIspJd99C95VLTl60Mey","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":"0hQD-Am9wDUFtgLyWV33L","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":"GXQuht6Lg3TpJnAEXdoq9","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":"ycwMbAQ86wM0O078X75Q2","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":"Q3LJkqBSUyYbzdzF4TEZP","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":"abQqDZxI5Okzer8mw_JXF","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wSMpCkz0e2oZEKi45l3-d","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YPVmG0pSFlDWjKWIB77aV","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":"l3xm0cCiWMexHzx9cK4Jy","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":"assKpkb_m2JhvZpGZZ5MB","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","optional":false,"variadic":true,"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":"3xVbb3b1rAhdQUyS9NCGo","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":"FfS8qm-wtate_fdX0e_ir","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":"ex23V8qbl1lrIprYsT632","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":"W9yvTvW88UBc2SK7sprGF","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":"Gk6TM-C1jYa3jVnnnxfwF","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":"-v6kXbDijD9rUArDPHQlB","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":"IzEEBtj2-OrM1tRupRdww","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":"a5Xol6IDLHNNcjg2HS_xo","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":"Nq5kTojslC-ycdVNx0oid","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":"afASxQfOcExluiGl-YB3K","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":"fU7_882FgppN4l5kXeiFg","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":"sEymM6gQPIoVTMONck_Ov","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":"xTE0k63fSGdpReFPoOuQq","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":"XsgWAnmQkAsj-vYRazo67","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":"12Qgen8AQlUXa4cHzqUE_","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":"dsPldeXArHsbIvLcO6tiK","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":"QotBY5oQ-rDrUidkgecym","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          an array of vertex attribute properties

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

                          the shader currently used by this compositor

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

                          the default shader created by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UFCk1YZdb9o9_quSU62bp","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":"FHDMNvXhQ6RkT0gAscOJE","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":"V6h_cazwya7W_VfTZsW4C","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          the vertex data buffer used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dwlX8Z-e4UnKijDTMkpZ0","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":"o3zqPeZfwXbuXv2XQNPCc","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":"gdjnc6qw5KWs_aTI8guRm","name":"bind","brief":"

                          called by the WebGL renderer when a compositor become the current one

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UPGWkXEBFfEif6pAAyJoM","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"f38ewncI28jPtkFLsCjjp","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":"GlpoTzwW1iWBxz7cNw7_J","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":"qwi8Tolzj3qqVApy1btRV","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":"Gdicb3-OKNAm851a9TSDS","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":"3acjjqVnUnEbvLgrBty4d","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":"Q-CjArysbjvv_p8PCsMuS","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          an array of vertex attribute properties

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

                          the shader currently used by this compositor

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

                          the default shader created by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z_4cpWGWRovYGGRtjqTv2","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":"av2bQElM4p3klOTN7ys2u","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":"WafhhNkwPQNo63Q6X9Ppa","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          the vertex data buffer used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"agTAycHEBOrxHvoKCO-Q8","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":"kH2oKn9lG4t_xGvcq_nUC","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":"bUQf5qKIVn59majNGQsrG","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"}},{"identifier":"reupload","optional":false,"default":"false","description":"

                          Force the texture to be reuploaded even if already bound

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"aWC4MWB0OB4jidfXnuzWq","name":"bind","brief":"

                          called by the WebGL renderer when a compositor become the current one

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5pP6HoFPhZEa6kSwB0BLy","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":"DPtSZbcjnJrLW0tpkijha","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"51pdlPExg9ubRr-tZNhDz","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":"6bVa3GTgrrr4m1xiIfM6k","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":"W-Qzl_Ar-vvpyTIe2B66U","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":"Tp5XOCjBvdnKVqShKkKBO","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":"RiWykxk53q8E6A1Xjpcy5","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":"GI2j1f7_gB6HPoGyd2zuG","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":"pnd_37RLmRYzkPYa81xdf","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":"7ehQOJlXYvdLFVClgJaU4","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":"_GpLv2mKOGuBbuzyvfj_A","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":"jJh3gejTuDQhcBS5so3Pl","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":"djK86LbViWYA8GR4SZ_kp","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":"ZIvGPh2pqlSC1vjo_2jTn","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":"kZrvWdpZ3VZVwtbaxWPQU","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":"xbu-B_I6k0RHNgPXNyYjV","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":"yIWU4XkIW_5dL1FRB75-x","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":"5KWpgvk00rsoAAV2zFRDM","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":"pOxkAIOiBIMHH4ZYD8Yhu","name":"Rect","brief":"","type":"ClassDoc","description":"

                          a rectangle Object

                          ","params":[],"returns":[],"extends":["Polygon"],"implements":[],"members":[{"id":"NUO3-Uzk5MKO9iBvqqUik","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N-Rfp5vsmQq_8WHItRudb","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yLYaigxKOlFkVjj9w6Er5","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":"KcSWghyrwGllskV98zXcN","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

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

                          right coordinate of the Rectangle

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

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0KjdfDXmSvJYdEjFg9jyZ","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CfXWFK-w2RGM8bkewdTZ7","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"flPOgrzzoAYxvNiDmNpoy","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":"dN55bap1v3382C_xqLkaM","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":"uji_JAg1jzLmhgHVHMmCP","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":"vxRuacoUPJ2bCrtPgR7JG","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":"spCy2mLmOa1Aa5JpBgLAX","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":"TKHX-hwsCau9dxVbDmMzY","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":"TYkHNdKE_5FHQVPXijdF8","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":"XDSnlfwCxa66sszpEnwak","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":"HWGtgdoeqUoNh_NhmtSiQ","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":"1LRCcxKNj3BNEHfPUElYB","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":"EQDMKdEvSvsNiC_nlg9V7","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":"uG9P30r5ru4bviu0ZSuNr","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":"bjQg8kI8KP_6qcU1zuCCw","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":"7g4EDv-k09edoJ3AobMP9","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":"izHNgTarAqNxSOYw8UVnA","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":"eTh1a5nHfkcElWUeokxW-","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":"sQxa8yOq-4Q9SlYALEio8","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":"5htgOCQYY0qXeHRJ2HFVZ","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":"7XeFHjp3c7LVhyy4ETIi6","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":"NpnMA_R3_o68Z-zeiMt1v","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":"6sQe2OQJq9P8o3tPju3wU","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":"XIItiF_HzdnTslFo3h9B5","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":"klRbBvKcEN9-L8vTt4kYu","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":"JUib1XQi1O7EJNkdJYNW9","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":"GNuvE1Ux6fWLvob166cXW","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":"4youj53fMmJ655GBJeO_7","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":"IGho-zvdLsHTBphUhm3GW","name":"Renderable","brief":"","type":"ClassDoc","description":"

                          A base class for renderable objects.

                          ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"74JUzHYtW34VEol62f9RQ","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":"I9uielFOCSExMjsJIzLk6","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":"kG2Ext9Ug6CRYXvqdMOKQ","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":"SQKlguuT_Y3wiqC5_V-q0","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":"GL12Y8wlw23gpIraAnnxU","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":"qrv1xfkISceIdaQuiyARz","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":"1ZshDpuPUtK0S_chjQHq7","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":"GecXB6lDVdvKsxfeqjNo1","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6EFgmBXyK8rVtJ9xRXR-1","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WdYr4dlXI6CuyY9nuwsxs","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":"XTC-ZugBQGi4aWHrjNNFe","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":"XlFQ2Ibj9p7xO9pkf48BD","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dcN8gJYj9e9v7phwgnCdv","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":"HUgddbQcygt5LXUVnUjhF","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":"Z-ZzF2xkZN1tkqrg078Vq","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":"ckm-2HE18NiLR6sTcg3nv","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":"4Q7sEtmTxxoJNe-D9JOEF","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":"7-26rILEDoEAtm46iYsoI","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":"Fdn4QWNX0SZeRrYlUIWOP","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZROtb7phF07arreAhlLsH","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":"hp6xvgDoR7gb20dbfW3kU","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7obWEldo-BOzTWMUweKiQ","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":"i6tiVzh1QJdYVzPkdmlUK","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gDTrD1gmCMeLUNjYH194R","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":"l1l9x0RKAA_Uvdcd3S4sl","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

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

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y7SzcYqMLuSj7oMqs2LGK","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":"jNqFA08jPHP6YObui0Pcr","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":"O9KVm95AuS2KybSatubmT","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VGqHu84mz0cTd8-3pOLNE","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3FZZdRGdf5Fqfah5fWz47","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":"LbKiNsXy309WQS4Ex2ne5","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AZnNmMP7mXsy-eiNfTzIH","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":"S_ivqB4iyQ2T8z9JUOe14","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":"aoYo7NNd9Vzmt50DA1rmu","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":"slPix1e1CPfSm7MzL2IOH","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":"8k3oiHv2MRujeUG5hbVgi","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":"VVu_7a_Bjb_Wd2cKqQhOK","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":"jxCt3pxkCQHQT6tVhhA9f","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":"YwgR33dsnuVTdheuuB-zy","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":"6coT-YW2KdChEx3g7gjWc","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":"vDxPf2ghytMTzB2zuraJa","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":"miqHNmpDrJFo4hfEwLyRv","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":"KPuZVu3EBb0DyXXsoFkZY","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":"b0iRvdkYstpYf7pRTZUJK","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":"-VacHScf7iOje0Bpqyguh","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":"TPuXv6SZ3oYBvcCsOTWwH","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":"YqkdlJAAm_ZhVgPiYuD10","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":"IDFiiqE3Y_lpWoDuOWSLj","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":"II_5VfW_Zb8avMwMHfssS","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":"N2LJMoWwUYKFyjhKo2KkT","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":"mjJD4z5GSFoneEG5e5upo","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QFehK27OXDrKp_VP0FLI9","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":"Si9j7lDI7vZZmuReM8Clz","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":"QRuZbvJqf6-8Qmu4XnRmN","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":"N0449DVmn_HMCaEsN-mNk","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":"0YS3dEe__3xzF7LqKp2AS","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":"h5_QZ4ip1L6s2UGZadEd8","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":"PmaBUYQkTows9GjP3Mvy8","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":"rurTqr7n5CxBxyC3taRET","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":"S6qF8ACgXuzIUo3w5VlWJ","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":"9Cpnou_qGMrU1sq857Dms","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":"2iaDPfjoz4ghTRbBRvEDG","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":"SjowITrIxud_d-CoALcVX","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":"ZIC0qX9KaLN2XHb1IHX4_","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":"nEPFXJsrERsCdoto2oprm","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":"JUfevxK9Y_-I4Z7xujbsv","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":"5kaeL6c1Ul0DtyIz0obvL","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":"02uFBzboczf6inzoTXJaa","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":"bSnQ_Db3IpB1vbZ64mhkG","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":"boWo_PZjYeNH6hEKtBtM3","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":"9RVMlQwehEr2Wh4vJ3pA5","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":"goNQKDvDtbeWxv9VZSwvT","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":"dzRxGL4sqTGo98_VlWk11","name":"Renderer","brief":"","type":"ClassDoc","description":"

                          a base renderer object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"ideMI8QuRHwck-_8dtzPD","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":"-jNdC0gI0or6HXR8cZbA4","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"BNETJ3NftuEbGZ3rHhn3I","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":"z3kNMc_eHNfZ_Mc77bvBp","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"dUfRIlWpaog_cHNjswClh","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":"VcAE9we0T-Ijn4pI0Vq0D","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"P8BlQIFtLHPjwloSYdbvG","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

                          the default method to sort object ("sorting", "z-buffer")

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HruNPoaK0_anHB0o7W8TQ","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          the requested video size ratio

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8h1Ne0I8-D6MJNP4-BnAf","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":"k52Qo3lPGym8a-ZvjqlVU","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          true if the current rendering context is valid

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ux8AvkfR-vdQsCbozD_7V","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The Path2D instance used by the renderer to draw primitives

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c7sLVwHHUMNzjocCiYCyn","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":"BcPzlEDunorLiGm5qZn0W","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The given constructor options

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mj_Ym3ycT2Qecbva-GIMe","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":"lsTLhgGrZgQTeJeVjg4yy","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":"osNDR-kKu4IHqSz4fVMwT","name":"clear","brief":"

                          prepare the framebuffer for drawing a new frame

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WvUcSbokxvJaud2TLMvdA","name":"clearMask","brief":"","scope":"instance","see":["Renderer#setMask"],"type":"MethodDoc","description":"

                          disable (remove) the rendering mask set through setMask.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0d1uYI-92a6Z--Q1E8DU5","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

                          clear the rendering tint set through setTint.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6pQJxoLGTw3hsoL3SUJIH","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":"BeRfJOCSoH9nxEgzBmpWl","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":"U6EBQJ69tI4WDPJtt8Rwq","name":"flush","brief":"

                          render the main framebuffer on screen

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"enLEBJyVTZ2TZtsXW1gVM","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":"nZaEwbsgPjHB8LQeLo4rG","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":"gbTdTna1j5bSUNOZ3tTDS","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":"nm0H7r8eVDoN3hS48Va3o","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":"w2bUrf3MeXWrAGWjq2cQT","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":"Lch0WmKt1XY4CExwP1UZg","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":"DbI2RP1KuvWk8Pt_ixHHU","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":"wmnXlQX-RuWRx2NSPuV6C","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":"PQX8roAh3CdLd1ZnvxGFn","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":"utaMd4jIaEgNJiAsESuyJ","name":"reset","brief":"

                          Reset context state

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RgZIGUjdyGQU4jS7sd-Js","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":"MxtzMGTTJ6t8OxUpzVZdZ","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":"MU_Sr6X8jX-3q8YpRFmke","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":"O7XWFo51fLYXTmHksWmN6","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":"My9ngjihEJKT0vngvlWsl","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":"n1Zk3VUbOo3-zX5IP8Sto","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":"OJlOHtpIlsPcbrfVkg38P","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":"2JjuvSkKOEMQq6cfkOZ7h","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"cglYiX0GRnOj5n29qLf4q","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"v0SHJV02pAFvHPmFmaHqJ","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":"type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"-eXTiYbXdPWi_-kwSn976","name":"ResponseObject","brief":"","access":"public","type":"ClassDoc","description":"

                          An object representing the result of an intersection.

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"vjtRQ6CeR1dx6DKkGtedM","name":"a","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The first object participating in the intersection

                          "},{"id":"3o5VLVS0O7nRtqxul6OoT","name":"aInB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Whether the first object is entirely inside the second

                          "},{"id":"Kois3LXExCJOFC2Hy-Glg","name":"b","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The second object participating in the intersection

                          "},{"id":"kq9sVIfPBJA77gbIHBkiS","name":"bInA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Whether the second object is entirely inside the first

                          "},{"id":"CrIVPFgAY_M_TNY4RULCw","name":"indexShapeA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The index of the colliding shape for the object a body

                          "},{"id":"YDEOTwI9c0kBirFmASIKp","name":"indexShapeB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The index of the colliding shape for the object b body

                          "},{"id":"8YZYrQDdKR5Fh7Rvh2IbA","name":"overlap","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Magnitude of the overlap on the shortest colliding axis

                          "},{"id":"OcjbCagOe1_ZCTAoMKKH2","name":"overlapN","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The shortest colliding axis (unit-vector)

                          "},{"id":"fh9uambmwwR_NWhK4wQo6","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":"AeeHczfUK8yXQsu8QLcqt","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":"bqpFjCEFPPIWS5-Jg6ZbU","name":"RoundRect","brief":"","type":"ClassDoc","description":"

                          a rectangle object with rounded corners

                          ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"9g7XLv4OZm4nrn0Mq-uPt","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1ZJBE4Dt5QXPwSUbk0MQx","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0eVjFxM7KfbPOvS5hlOqK","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XNRdmDrYI0-lO7scg9Gku","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NTygw6QZsxxkz7tKhQFUT","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":"-qVm04ODaM7FuVG32dWI8","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pbZba-dcGh7i-7BigOqhu","name":"radius","brief":"","defaultValue":"20","scope":"instance","type":"PropertyDoc","description":"

                          the radius of the rounded corner

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ybbds9RwOZtpjEGGZ1a-i","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

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

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d58lTc4ivPLPFw6yjg2yv","name":"type","brief":"","defaultValue":"\"RoundRect\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

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

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lqbo7doXMxW0egcTytUUS","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":"0HSiGMK6zNyomSW_JIP8v","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":"F1WabZ41qBEHs7AOhmok2","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":"b3zKrhpmAIsKpF4_zoE66","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":"EMyFwo2RFrVvsN_zjs-8C","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":"5lBz9QIsUWysQMhfjT4xD","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":"UdZRp1qC9DIChLOKkbW9M","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":"w3YWKIy2hYUGpKpNnPoAH","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":"t8DHVcNFQozqegD5B93bV","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":"97rdEmLOpKdcR44txXyKq","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":"yKree58BNKlpMKlerX1ON","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":"irQ1KjTqohdX4NLE5O3QA","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":"l6-a4CjxcCRfN4302Mpeq","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":"zs5LgW-4BaoEuLu6qyOdf","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":"0PRC9YTy2eYKN4PEnS5VP","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":"QZSRUVrJ6p2lFmZj9R7dc","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":"p2d0ieL04XffdqmAIMSAb","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":"nfShY-9lkxVVuF2jXTuzb","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":"9DLR98qTcBdgAKnOBHu0R","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":"e9JvIS9Y_9wHgGS1GNBMT","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":"HIb3YFZVeSMic4GnEdmC9","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":"bYh5Aqvu-x0TvfvZDJ1eT","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":"OXL1HaBUeo5HS0cO2S2ce","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":"vTbAfkbDS5If3tRkbcKtZ","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":"Uq9BTt60lNYBchjwZRHZG","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":"ogNCJCZG8NOefW442OR9i","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":"3_Xhv5KkVL5IQHNCcF8GF","name":"Sprite","brief":"","type":"ClassDoc","description":"

                          An object to display a fixed or animated sprite on screen.

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"TimHKFZcMaY1b7uXq2ijk","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":"_E40EyPAa-viA2Gn-cPxe","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":"plOioXasuFnQ4TziGdq33","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":"pDTHHojNXx0TDMIBN0F85","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":"9YAHsO7mFlHZGl4eTXzbJ","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LOm_qaSoKDdgu-uW3mhju","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zev-UVgdm90xurqilQ1SG","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":"ozIuZUM1q0JEEgl8zjKYe","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":"C4Bm-0ZM1byh-4tE3U2Mm","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":"Qksm-T-oWkz8CHJshJV-N","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

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

                          absolute center of this rectangle on the vertical axis

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

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sd-wnQKOmw2qNQsc_O2ez","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"arVYWJQLPrTnX_nTURQnw","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":"ST_9P3rnqmSpJACbvlEAN","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":"O7RKzoQFeruw3muy5YsdT","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OtdN7wX_5n7YTGEd1OGzo","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":"n95k7Eb5gr8OmYgSnaZ03","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":"1I1vmMsSbQKolakzrRnSk","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":"WJxS0T4HLPc_rxlKw2jsw","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":"AyRGRbGPc4e_aR0Ft1QR0","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":"Q52pB1lVqTQBgQX3AipFX","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":"UlNn9wHeM-bv2yT5bF7vE","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AAFLOEKMwGAxUqZ5uI91M","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VnWi5aBcbO7JTEhzKzonJ","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":"nctjlXH9gXKjDGYeJ2Kan","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_vlZSvzE20jzHu5-t6LI6","name":"offset","brief":"","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":"yQi8ZLmqz42uKAtnT-U4u","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":"uZT6YNqCydukVo3lRoyd2","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I5NYUIfWbybU8VUkM42it","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":"zXs9qKNiHMN_DMSbIbZri","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IRqV0enIsEVA0k-eHFG1Z","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YuSiZQmR-6Ld3GRR2FRck","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":"l15hjVwPA5b40U_F1KYMT","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"28NDr7iQz8DsgDrK8apTt","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":"kADPlI0DPIDfSUKDvS3__","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w5bdAq8GHvNqD_57GWA3U","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ooqk41bUXZrH5j2Rs988z","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":"nySnQAl_1ydRRvYGZ9X6a","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z37NW_DBVGvVmprpBCJMZ","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 defining 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":"YQR7POPUNIhO64qL_uLC5","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":"IQ4U0mcL5iCHJYcsuVDV-","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":"DSadzPeTBPTOz4mjQIUMj","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":"AQk78wt3uG00bNGTNPs3D","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 });\n\n // create a video sprite\n let videoSprite = new me.Sprite(0, 0, {\n image : me.loader.getVideo(\"bigbunny\"),\n anchorPoint : new me.Vector2d(0.5, 0.5)\n });\n // scale the video sprite\n videoSprite.currentTransform.scale(2);\n // start playing the video (if video is preloaded with `autoplay` set to false)\n videoSprite.play();"}],"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, a video element, or to a texture atlas

                          ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | TextureAtlas | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1 | %2 | %3 | %4 | 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":"dLNzcI8U3LNPlWyJHB7FC","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":"ycLSbDeVb4CAVI_WTlgFT","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":"6aU7nXI84SMzw-JvX-taL","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":"MOmY1vJn6XHd8nhScKDmp","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":"kV00oK5raTVxkR9pV62as","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":"wEwfSs7vNAYWQQcFoO7lp","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":"uueED-s8M_eLthZHbH4iK","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":"dDzZrZSmL_qZVIg9xF79R","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":"jSiMuOKzRL07WdC1wPJbW","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":"6vcjnxil_4OCWFSzzVlNH","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":"AE_4HhMU-sfPZRRTAdHXB","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":"MUmWRjjXJYcUEhTDav2X1","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":"OcASO-cGIpPEdgndWAlSN","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":"OExAGNPF-DhykKOFSunnN","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":"yMJueCE3e_6QhXwmqAHdi","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":"wjkT6PwxYV_n7D-pJOv53","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":"DPzq-YIEizoeJuUJ3kYnC","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":"6xly_PtG9-3hPQk4ACYqH","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":"jV9B6BitlN82lY8pblTdO","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T8B_iyMtBiaGUOGZwI_TN","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":"GNIip55vQkxVB5krYORJY","name":"pause","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DZAj2DFuVRRCUgUylrdpL","name":"play","brief":"

                          play or resume the current animation or video

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"04mgy-UTQPhDdBdIoG-xt","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":"QA5CReODrwnarOHlBuSvy","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":"UBbxoNye2lyttNCF2U9HF","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":"ImGtgKS453dKCUvE-GwxU","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":"x9ua9JQJU4zPo2EAZ937T","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":"muFLvFlCbMV27D75AFnaQ","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":"rP7M_v2KzYTOiJ0nr5D0y","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":"FiY4YMJPbY_VDLNfunLW0","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":"Tynsl_L4wPg7SuO3_hRgW","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":"7P0U_-5Shx72ZGgFj7Stf","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":"dg6zGSzb-RYW4QIZALqMv","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":"c3Iopmhul4nEwHpXFQtJ3","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":"NOQLIeKgQvIsKGnYv35MK","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":"v766IMXq5-7Gw8F5sd3uq","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":"rJVwCAMmHMBsxcc1ln8z2","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":"gWPw-goPPCG0XmmVFaAJg","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":"BU0LiLWEC7fLaH-OTXaZh","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":"y8gRhj_TWrRjbImymymD6","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":"2hnh0UFk3tLn2j4x9U6qo","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":"8fDrpyu0ij4_m9PlxXN02","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":"VLcJUdZhktPZhk1o9FXJG","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":"i922D4ioVVgzL1pYdON5J","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":"bf5Ys9BB_fatULeXMfzLa","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":"ybjkeLv_shzESknQCR5P0","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":"pwotTz6PnOHrFnXpbe3ow","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":"R9YzM-7bskrclMlzSE30e","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":"60-pNptK0KLqXW3jq10dS","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":"qjE0pz7aLDeGnnHXc2ePK","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":"BLlE9uyFkLT_dfvIeyji8","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":"R_0P-4P1a6cl26bnFtJyi","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The given constructor options

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QHvfksYjQio39wvYmTgYw","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":"AWRnuR7pWElTYdWV6I05o","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":"uf_WEQwXRtuaMqVLQFdfN","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":"kdMDF0x26RG610Krfkd8W","name":"Text","brief":"","type":"ClassDoc","description":"

                          a generic system font object.

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"PF91RFhGVDSjtKMl1dCMW","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":"RT_1qa7_CR4WjkVOdwYiA","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":"pa-3lU4HFdlu_vzHw4wqm","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-wWqXvafpDJ8JWS6w-jC","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":"P8ric6zgAbRnpVwVuPRH1","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":"tR2uf8tmFwxIjyhWiL337","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":"Q5_K4yJFiVTXYv0xBOZiN","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":"pM-KAzQ3qrpI0kg04wfoY","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

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

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iCyKFSob3G_h5VP-5kKxW","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r_WazeHR8PXXeg-hBYDrX","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

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

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qsMFRfecbPI3-fN57rkcU","name":"fillStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

                          defines the color used to draw the font.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jgi1AB8MUoYWig5DfWf21","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":"2sN8mQvavRZ_kKtq-9dii","name":"fontSize","brief":"","defaultValue":"10","scope":"instance","type":"PropertyDoc","description":"

                          the font size (in px)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zOGXK6Z83zzjJBZn4Ghqr","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":"hgvl7xexZF8MYeT532Czs","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bvn9IpbHzZe6YEliCyes_","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":"Ky7ndScZ5w7PoTNNJhp1K","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":"x0pJSthZNL1j2KnLTKOAp","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":"3gXjRGWLnIeyADuBgzSs5","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":"SW9-slG4Y0OcbuJEpumRf","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":"dIgf-_V2cnAirzTjZu2UR","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":"A5fqks_27H_zzo-QVmVeg","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-OGekq7wGMbWQYw13g09n","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MK8bYW4WSnRPOxZ_d8Wr9","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":"3xjpwISZ2z2ef3cJGDCsw","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":"rYXLpwFV3ss00MfJJ7700","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":"nnNF82aUy0OVGINUtgDFq","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tF3sKRlL9beE3rxLRf_VH","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":"hc_nHysgloODO27UfePCf","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          returns the parent application (or game) to which this renderable is attached to

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

                          the parent application or undefined if not attached to any container/app

                          ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hp5sxhgh_0nteELvJBYed","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":"3WKq_VQUwaU0PCmhS6C4Q","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OiLh061SPl-cglqKB7W05","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QFbj5c3La_owZjK8nB3tL","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":"RqDgQH3r0NAnEpKItEbv8","name":"strokeStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

                          defines the color used to draw the font stroke.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kpba9-OCS9azB3_LU3ukl","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":"Wde_51MNQReBWGvmeI62l","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":"WLHzEYHDqKggVKIG7Pbyt","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":"RbQO_-dBIPJW1-UrjIDaj","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GH0nT4VHH95vWUZRyymo6","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bHfsvQTAkT-XCwH8Fkc8o","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":"vp1R-XSGy6ZP2E1uzsVA2","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vZiA-IkE1MEFbD9Ac3HCA","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":"ydRjfhgLsznkMG5PmlhSn","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                          the text to be displayed

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_DHqJ8yUrw4V55NJ2kTcp","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":"512gCgqMY4_OPclousIan","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":"kQ5EwhNOp0d_5nUnG8-2T","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":"gwsgydl6X-NaCmWWuB9pX","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":"5MHsfCtsn63HbBEAZRo_H","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":"J7KnZAjFKSIHXB4y8ML1z","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":"Cy5NDuNoottA7kk10XrM2","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":"V4PcQWjT65FLDwnfRAFFH","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":"-Y3ZW2D8sk7MPiVwO3Ero","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":"InDaHAUjtbH6_Zi29pRh-","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":"trCtFRiZZ5s580SIx6wz6","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":"HWBAKrL93yw1WOVA544mo","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":"FVrgW_WiDJY2zAOGwo-J0","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":"GvG-pIpzoEOkggR0SC6by","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":"-jxJqnKYzcvcWXO80fOv0","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":"O-I7XbzPIBQwmQApDqugF","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":"HMh-NDn4Y6e7Ims30zrDx","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":"2AbC8nmOvnLGGmRZDs-Mu","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":"IQokIXdmn3BcT6Cg9Dg12","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":"SQfVOAe4tunmlRBvLYwff","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":"rzjS5UNXyYo5gRGjb1TzE","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":"57mhm8SK-72G9di2d4xv8","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":"aKs_waB4tWvt34aMRZlbb","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":"y1ye40U-DlpbsgrR2dqaa","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KSTCZQXpR6v52TIKbrz1e","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":"gMZ2eZLmvq65Z3ix0gT_S","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":"IeRG7S2mnWEf7p9ocrxul","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":"Kz7FHcJ2NNmpNuCYnf51q","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":"VEv0mMEF7gSXiAFHJDuEd","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":"3dEBXFakbG1SSfzR2JfTH","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":"inA_juHgsMW5FEsyRHQTq","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":"l3HztnaldkTKi9lupLzb5","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":"uLPWztxMciyJh6upa7bLV","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":"Ju4Qi93Ls5CvCiAMzlU1J","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":"Z8di1405xqUex0Q7nMkpY","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":"qDeY5L5DOYo8kc6cPXIld","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":"urEuClvv_ccc1D9zYXH7U","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":"l81pmQ8d1qzrOSLZpJ6sF","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":"e2RACJD2DHGkfJ8LSAFeF","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":"DMUtO_PFWcq64JGcsRspb","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":"YUKi58i7YRigz7y4qwpNa","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":"XvzqVDdA6pnXo9YrQd_iZ","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":"ld9NHyw58DJYBa6NfkY-T","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":"UuLypwoeon-3D4YNM0QTM","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":"OSdnE-WdSfbVKR-uMuXJv","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":"v7m9HMqqA2LB5BDgxfzZk","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":"iuWY2eCbY8BfFb_8bRunr","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":"zPe9dn-7-ONV_HVllU0xl","name":"TextMetrics","brief":"","type":"ClassDoc","description":"

                          a Text Metrics object that contains helper for text manipulation

                          ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"TZGwiTlz8ABX-JxGIeXKE","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":"XLhTNibY_LHo-jM2Y0mKM","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UYXshL43nj-o_jFqPhTy8","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          return the center position of the bound

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

                          center position of the bound on the x axis

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

                          center position of the bound on the y axis

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

                          width of the bounds

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

                          left coordinate of the bound

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

                          right coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jx-1eswpq_l3_T_PxNJAH","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AT8C4G4ZgHyWGMgv5Cg7w","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

                          the object type (used internally)

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

                          width of the bounds

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

                          x position of the bound

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

                          y position of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g0RNyagNpuv62ZZgKnyaZ","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":"yb08rcZiZ88CBToEmNMaO","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":"-n6JgFESDwA0TbsyrQgMs","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":"WjDwNjrLIYLRZvXP6jV7M","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":"KzqHGT8DcgXoI4cyZaxkm","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":"dQhGUf7xQYINM6X3C7hDm","name":"clear","brief":"

                          reset the bound

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fiTkBZIsGZpORFeKNtgGH","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":"vO1Usdv1DgYZTr3tlMB2J","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":"a0AeZny7J5Wj00jwQAvc4","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":"UPV0s-o8ZUia0rXuemcLi","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":"8qojPx3B6E0vD9RDrWmQ7","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":"5xUj9gAVsYNDc3jXSOtZm","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":"aFD2A5x_G_5F7OyYMxo7O","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":"aotlSRbRZBYgSfg70Zs7f","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":"5pBGSE9Xr2SrXTtTfGjpX","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":"uqT0ZkjOJIPbRZoZlQtWQ","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":"D2jl_H95cnep2mnRUFeGJ","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":"P57LsXDJK78UWUQ2RF_tu","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":"qBoU7C2-KLueo99qYwkvS","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":"9-KY8dJtetLcQHxTOoCCJ","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":"MxLaWRr21pZla0UuJI8-B","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":"byljelDwx_8X3WQqaQpyr","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":"fKvt_5BOkkR_IAXgB6P_C","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":"ze8IXs-4G_ADSSuINBx6y","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":"i6EIHB29A3pcwoUFaNZaV","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":"MWip4zK2G5gQqidwyEtvA","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":"5wte1CEtJcQL3HQ4Y9uT5","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":"QU7auwjI0CORF-WYSRT8C","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":"uyd8_Vm--HITKxA53K_wA","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":"Pxq_9rFkQgo-Ggep18eom","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":"Dpm-FdOrmjuMiQSXZXbqe","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":"QHN6Tc954H5h4Q07-nvNl","name":"Tile","brief":"","type":"ClassDoc","description":"

                            a basic tile object

                            ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"VoRZOW0DKIthK3dPsuNOb","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gJ67cv-nDi7lto3m4XW_Q","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            return the center position of the bound

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

                            center position of the bound on the x axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7OyDlos-FiJwmy8BGttGK","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            center position of the bound on the y axis

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

                            Global flag that indicates if the tile is flipped

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zEcUz-tndIgyLK3gkht_u","name":"flippedAD","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            True if the tile is flipped anti-diagonally

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8q9aacSRhEkBGDWRNCPQE","name":"flippedX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            True if the tile is flipped horizontally

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

                            True if the tile is flipped vertically

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

                            width of the bounds

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6yryz4jItZJfYz0xpPQH2","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the bound

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

                            right coordinate of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ebUJ5NXLlEqt42h-bkHqA","name":"tileId","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            tileId

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

                            tileset

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7J81bJTS00rAYWYreHo_E","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M6PF60qh44oybMPag94Sx","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

                            the object type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8NhIf7ONVU0wlnhtWqp1E","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the bounds

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

                            x position of the bound

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

                            y position of the bounds

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4kPBnJLhEob7j-Wk6N4i9","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":"ulNporUqIlxBtp4XUA4VN","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":"XrseSzcg_LP17EP5Jq5r2","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":"vYtFcLUOwJ7V9z_FsHTpX","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":"vzYTlGLcVRvG0bVmpco9X","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":"1o0KtfJTeKOwT84yqG8Na","name":"clear","brief":"

                            reset the bound

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lGySx4S_rLLPOrniaShg4","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":"HWyLQ9_j1Z-YOIPInnD0s","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":"E3qOfAx02NxSdBamO5L1c","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":"Qyokd2gewg-wgkgMzjsFj","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":"f2w8T6iY7Cuu9gu-MuB0u","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":"VQFS4D2rA9Ud82KM9p9-G","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":"zIg7E3_X4jzO-0x5ABBOr","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":"t8VQgDtz-7JBtw2anoUqR","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":"VphxAAuc9e5MtOulBiJlB","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":"t5jplQFh0X7O6GxLqdv1Y","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":"HF5Vz3aQIPiVg1iEWu7Le","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":"QtovKpudCYVdp-CtnsX9Q","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":"4P2jJfnZbtpHsewRX0IVL","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":"kjCRBXY168lqnphvmw1uP","name":"interpolation","brief":"","defaultValue":"false","scope":"instance","see":["tick"],"type":"PropertyDoc","description":"

                            Enable/disable frame interpolation

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"trvHwplL-j3Bs16Qg26T-","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":"HFu0g8pNVi0-H-T9C_5aw","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":"Nw4PYL-Si686ZZuWdjHum","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":"Zke7VcajKIL7Hi4aqgAwD","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":"QuLWKSugVr0GNrVjI18eY","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":"t77aoYKnLd3Cdrq_p0WdE","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":"S-wThyyDjIWeQ_c9_nAoU","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":"7K2LcWIsAugyGe0Gw4MVh","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":"qn-epEoOoISpiY-8TULj8","name":"TMXHexagonalRenderer","brief":"","type":"ClassDoc","description":"

                            an Hexagonal Map Renderder

                            ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"CmrSOmcdRBO5hNgsMC_HZ","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":"H6os1T9NUMzT_P0r8dIYh","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":"KWnixXiI8dFCPKgkLJg20","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":"ApgtSCsMg4ev6eba6T9Xt","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":"11gyWAKKRMqFA6-Anfg0A","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":"x8jNqf40UcR0XYWqOQjsp","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":"pu4eiShMW1Hx_aIo3SJ6c","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":"hYuWWNNUf5QiJeRXBxmXU","name":"TMXIsometricRenderer","brief":"","type":"ClassDoc","description":"

                            an Isometric Map Renderder

                            ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"NWOsdn35uyLoY4CtmyvEW","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":"CFfDTwM-_RcIXYv_ezBdU","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":"z1HMs0qasFmXuW7pTXyQG","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":"a5wI42IA5VwcB1bC5vMJu","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":"DFH8Bc2dXM7xf9KWv7gF1","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":"rVhVHjvVtN0d_mnj_b-27","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":"WEkWgRWXnG_lwpb0NiXgF","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":"TxpsY874UAMlWaxWzCQXp","name":"TMXLayer","brief":"","type":"ClassDoc","description":"

                            a TMX Tile Layer Object\nTiled QT 0.7.x format

                            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"CLX2jH_Wdy8gFC5IzQ6QJ","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":"kv7wYbP9JQRBpYMLOUeHc","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":"C9ld3NqgoRmi8zk-mCOrQ","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":"pJ1Bhz3nOjMHqy1YEchIt","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":"Ns4pMTVQWNKBYa8NbMbaU","name":"animatedTilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            All animated tilesets in this layer

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nCnkAsTjLgIFrMKf0e5rp","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":"NmOsrlqvuxjZ4kdEA_NNG","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":"WfVqmqI4rWXkYqdlWbcH7","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":"G-Ty3nHAKHcvYlyu5rRji","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BX1sm-v0Jb2STeGbI22PF","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

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

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-hBRgRogPkdcR5ekgwIvH","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the layer class

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7ohZMubXcq7lbTjdXQ4QD","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

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

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SyM4UfmjqpvGwDj-VDZd-","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":"OB6teLBKUk4vlmDxVSS2B","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":"ku2A8xi-Jni0pJoF2I05l","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D2oxJMysqZwpYAZce0pOa","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":"Sv4jetUH0nkk8IjRfJIMy","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Layer contains tileset animations

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4wDuOGunEZRvXM6OF6eNM","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":"pg-H9xRLH6BKcP88-_jYr","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":"YWw66KJJhEeSn7NdWFOOP","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":"GDRWD5T9a2BdCV3sMV_Rq","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":"pedc9FoJHv-8YZvojmg3g","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":"koDMNe36iKGfKDk1IhIoi","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rvOmJ8K_Kql6srU-mMsc-","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NePaBjfMk8SL1C_eEvDNa","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":"_McY0uPyzenSDaQ-0JQ1p","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ftBMawpSq4_BmBjML0JW0","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":"2UCAvhvhaPEML7KJck6AX","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            returns the parent application (or game) to which this renderable is attached to

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

                            the parent application or undefined if not attached to any container/app

                            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8DD4A3oipdUn05rME-bTq","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":"9HtLp2yzTQAKVgSIAaDjj","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AwZouvyAhY34xj0oGxEBH","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":"wtHwk8fM3gT2NsfgT91zj","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xZ9zv_fjyRGdtDqV_r_47","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":"QpJ9c3b-d2rEUMvgpDHFT","name":"tilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The Layer corresponding Tilesets

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YH33mxr4t7Jl_Dw4VOXkj","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":"mZ0Ihi5wIbK-wo5z0r09a","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dj9qlfaMAiNtgKHUyUG0G","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E1Sub4-FiyxmhQ_T3kkB3","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":"uTh6MDb1wzrl_44kKpIxS","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vsydkXbxFcvxxigs1ItYO","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            Horizontal layer offset in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GY6hhcxgF1TrHSJD8qMVP","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            Vertical layer offset in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IZ9dzMMrKaE1sabb_l4qu","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":"P_1q5q8GTNsZJVlVbmkAY","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":"JBGQLZqX5quI1gcqMu5Lh","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":"Epr3lohi2yHBaP2-ifIOj","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":"6cbaC009urHWH4_JtiqnT","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":"78Qbr08q7rsFooLsw7wAq","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":"E19ORPaMSmuOpPkkYX370","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":"R3KAzP_71pIWF27hxg1-9","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":"Teht0UkV0hlrL__lQ8lHw","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":"IHLdq6TSbqhTvxj_Lov9m","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":"frOy4h5liXLYi5RFxggqc","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":"I_y4T7qWUlyf3vNHRVkGU","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":"GzaIhgi4q-5vfYolaeuWj","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":"rr_syBuVtknZ3bpN7l6_j","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":"lbAP3D0tfZguMntJtb7dK","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":"ruU-pMrk8CTuMsB50DGOR","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":"MD8TuxbFWBW6pmquj0Y_r","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":"wniOhrToOn7U7ergyx87H","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":"p_lflGN7FsbnFXa5jJOp5","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":"0LctOXkO48h4nD3RG9bl4","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":"0ReRHZPL66BaH88nfCtsN","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":"FgQIf-qj8BIkqP0TMQtDA","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":"sruQfhRfcNJictQJO0m6N","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":"j0ehREwycK3pGUvFj-Ztz","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":"LG0OIb0i9FciNSy-5YWcS","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":"RD8cWZ5tE8CwvQ4ilK2TI","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QXNczsAl8bUushBiTbqPy","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":"yKlpc0r_dX7F7PoMZ8sAU","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":"shYV5Ns-H7J4diBYyukfp","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":"W9U3Rm60lGC54HP6MTnTH","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":"vCHfgYPrKzctWqaF9D7Jk","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":"cf3m9Fkoflew14d0-rOaJ","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":"vJ9M5rP9tz-UkZ6ziibIV","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":"cvTGcNnuNAksf8CPgfXnV","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":"F5wYXX8nyeS23hCkG2Syl","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":"rbUjar639oNzjV67byU9Z","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":"M_B0sp0Xxcx6Ew01UBW9R","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":"GLneFuKEejn2Oo2yRynzm","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":"h4D8sndXZZtYm2-nAPK2u","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":"Tsb6jCB2zgN80cmxuaO_O","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":"UDF6wyWMtVhNYo82ggw9j","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":"CIA1CVd40CwVmeWR3U3mH","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":"KRCDYXh030Jzbrxt3-pJi","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":"wdDEb1qRUjdIzh4Te6aMe","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":"KUkK1-jQD1hEROOJsEfIe","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":"z5JSAcH1Atx89IRJtkmkV","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":"LKPoOJ5qy5YVsbCFI-Lc-","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":"e3dKk-YYvXP0MMGRDr7Za","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":"xj2-kCMvGMbBRSYqlO_fV","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":"7zDfn4rpWHQdCPJUjNTQK","name":"TMXOrthogonalRenderer","brief":"","type":"ClassDoc","description":"

                            an Orthogonal Map Renderder

                            ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"PxZ10YdFFeiGf6iX6rBkK","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":"6zTb01NxtSQOPJLkSon9l","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":"EgLrmVXRAHOn0dCZ4xOCY","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":"JDeSiuC1h7YSrZftKjvXD","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":"3sv4wzPlow7a7hwZsdifj","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":"VyO3NmMb9RZMeul_B-ZE2","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":"1zurCUVN7MaIvUnAf-i7J","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":"Kh_LRdKi87lu1j7oENX6L","name":"TMXRenderer","brief":"","type":"ClassDoc","description":"

                            The map renderer base class

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"PF-57rmZwNBfPn2hC-vZO","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":"yIuBaskJO3cPsQrHKtcnY","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":"cY8wGvITHz9z7A5dwle0_","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":"HIBHUbTzfSJ5ny5mgF2l2","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":"2r1ELQ1aIefMa43MSIQdQ","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":"3toL_f3S9_qTNza6DohJO","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":"CLGS2KY5OGC7Qx7dMNAXd","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":"UAaWF2nRorcLCy0FLWFkT","name":"TMXStaggeredRenderer","type":"ClassDoc","description":"

                            a Staggered Map Renderder

                            ","params":[],"returns":[],"extends":["TMXHexagonalRenderer"],"implements":[],"members":[{"id":"r_IqvwX6NJPYqeNC78yGG","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":"Pw7dAlP5VMlkV0DKlGVCW","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"ylLUcZhR5LOjImyE8Mn5h","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":"L4N6PHhz0jd3mYe9PTKRU","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":"-r4ogo4dN42Y0NLciQatf","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":"VsFdPHdp3riKEoI9yGGcO","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":"PQa2Dk2wNxP0qdH2p25xN","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":"UCGcseipG0O7Cmogg-0PM","name":"TMXTileMap","brief":"","type":"ClassDoc","description":"

                            a TMX Tile Map Object\nTiled QT +0.7.x format

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"zhLRCtzJL5sQR_ZjdbC-2","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The map class.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RJRMhtF7BzCBQvPzfHjC8","name":"cols","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            width of the tilemap in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZT-eQZilUlDi0qghRbNFF","name":"infinite","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            is the map an infinite map

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

                            name of the tilemap

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6X_k1ROjaxiOlAOSFXBwv","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":"C4ICwhfg5tgMY7QqjnHoo","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":"qQW80H052jHA8RDmSZSju","name":"rows","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            height of the tilemap in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-sFCJtvS3HhUF0JF2Phn9","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":"KfZaDCyxCm0PKQS_56i7o","name":"tileheight","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            Tile height

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eecP4SMlaF6LITmH4Zg6S","name":"tilewidth","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            Tile width

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

                            the TMX format version

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O-jP7gYKO66QZIi-v45XG","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":"VNuQxW_Kclj0X14Oay3Jd","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":"vIiFeVnoWn-3RHEQ_wcG6","name":"destroy","brief":"

                            destroy function, clean all allocated objects

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lPfQwU9VJlbtro6Xyuzof","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":"grHY_SrwGiVdBdiUUZynq","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":"HTyA6efmAE2HmPNSqP_3t","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":"RfssRAe5Kir9E6FWmLmpX","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":"neHKATIuPeWmdCj3dWDIG","name":"TMXTileset","brief":"","type":"ClassDoc","description":"

                            a TMX Tile Set Object

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"yuo6Lvdor3K5k-mlrFrHy","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the tileset class

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dG6Pn5NxWC2C8JWyCcVAa","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Tileset contains animated tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jKM8XQGrRYDrwmcp9lVTP","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":"CJN2C3bKJGypl2J_OESwg","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":"67BohTmr04CKn-l9GA2vL","name":"animations","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                            Tileset animations

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0aGOCLbDZ2TgKt17coPBI","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":"w30w4SuXVtBS1S4DxLAlQ","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":"bU-_6_Mp7tE4ccltCfRl5","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":"w6yXdvGyO0ouBGKs2y3eH","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":"YAH8AxqDMie8PAg_S7tRQ","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":"A_7nPVTAGlZmwI_3oPEC2","name":"TMXTilesetGroup","brief":"","type":"ClassDoc","description":"

                            an object containing all tileset

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"86HExKXCih_IlfjQzkCV8","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":"mCLrVOGijwQSqR6uKNhET","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":"HbEUBMug_S17gv5d9L4Xu","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":"8sueeUIiIGWDPzHrmJUla","name":"Trigger","brief":"","type":"ClassDoc","description":"

                            trigger an event when colliding with another object

                            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"cEUlXJ3q0AsPPtKkvK4dm","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":"EJUFWvIzPT9c_COC0uLR9","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":"9v-doZgW8SErphsm7tN-M","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":"0sn-cv88bYOq6aBGBBkTw","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":"dXoqjm91CUE-4X3pE8RWx","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":"fn6Xq2kaE3UhXDVURUs_c","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":"3ZnGIYWQniUr8W3D_g1FP","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":"BLqlPIhFLGjzBcKGSaDTH","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eAKRkA-A3Jw2zliSDRNBe","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

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

                            absolute center of this rectangle on the vertical axis

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

                            the renderable default transformation matrix

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

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WNWaTfUeYoDhAyyOGg_lp","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":"lClAOvR6CDPPtT-tNEhks","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":"c8beJuSY9V7UYioK6N-F0","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ob4KEHAuCqeAkjt8CtICj","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":"TVSDybTLs0yNFZZY9Us3d","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":"DKaNOvE5OTqUNYqfCliAE","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":"Jb-iHgd07vuJz1rqD-sOo","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":"HOlvS7k6GkWSvlnuGNndN","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":"ont_dJ9JhsTJP0TOXk53y","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":"qcoZAApba0pV42VTjC45y","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

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

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P-QX_TamqJRtnUiaqfuAO","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":"vm_tS2WtWZzInmtxJKusZ","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VPJGlwiO5hqUAKpU3ArGk","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":"4ntpCy1ys9TqQOGCX-WRd","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            returns the parent application (or game) to which this renderable is attached to

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

                            the parent application or undefined if not attached to any container/app

                            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IKntebV6IoI-N1lJBNiH4","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":"bX05ut2RVOHCs0vwm8nJV","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2hJbBO3qfZtnjjLRppMR1","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_DWQJR4ez4j5OCDHw0u5l","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":"PWL3KsOGfXmVN0BeO-mxp","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":"t7WbxHV90r0QDEnNf84He","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7wOLYY6D4j1SBU5LK5r5u","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z1QvZX6eGtKXaf7Z8buXm","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":"s7WDTkv9PNWKmx0JTjPyL","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PSyx1e6VrnGg_TzDR9urH","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":"mxgD3SQAsky5jjfaJekyc","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":"ysMDBM1tlkLAgzGo1Oa1W","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":"5te0mGYE0IbTuwlziGRfr","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":"lKwphfG0KzSCrkShTLn49","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":"JWq0ZMuB_KeWo0D4Bxp_N","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":"3Om9M8rhv640w7xaTZWik","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":"3HXqP5KTOKG7vJH8HOE8C","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":"LDRnwgtYKkq_mB3-4YmIk","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":"MB1D3iuMBo6ABIEJVjWhS","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":"zaeVRaxc6yAtX71oxf4EB","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":"HsDtLWvUPxVl19Pb5LG40","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":"RTLvl-NhiZT59VOtgsj6O","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":"_C6fbby9bZlBm3ADJNeC8","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":"mMFb2bhITDarWPHiMy2fC","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":"j6Kwzjf6I4vprYMx6Alz3","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":"Cxit8-Ba-jGqznsPrfnYI","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":"jzucxbKjDw1E81BykBSCB","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":"kQIzqYxYXU7DSV8phLb8q","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":"d32REtyObLqkkLKB6zS1e","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EEsHf2c9otUPbKEwgRETh","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":"7Jr4sf156bHqZtKFoPptT","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":"nZu3LuPXWUiJjpAj1U09X","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":"QQ3ROvEMlsR7ugjrAzEXE","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":"sdQuZwKSClSaiYDdI0IuW","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":"1QGdpLMPW-my0-aWzNfx9","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":"UDJC7zowdIriBM0o9SH6p","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":"CvcklYkBCJSHu1EY4d6nZ","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":"XQEhFbKGdT0jkLxpcOffa","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":"zQy9p0o_pq36xE5lUq1WL","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":"oMwE_xLdcrEjz_zZS5fqp","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":"XDPhgDXYI2TcCuZKjLIZ-","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":"TokCFeDfaDMMJij9oeAJv","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":"bo3IY5geDY8pjzm5Q4g69","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":"0ONae0DYNFB3AK_RIBL2f","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":"KGT2bJ0HB01GrfOqBryqO","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":"iTnMd-eoA6Cfo__Z9s-j0","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":"3UrgHZmStJyR4tI6gMFy6","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":"EaA6sZrlbqFvzn0wIrX3t","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":"HDKn7xxwZYHJz_3tzBlOw","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":"2cTn6MmNECvI5kNmk6cPG","name":"triggerEvent","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            trigger this event

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u8bF4D4vLeB7CaBetXNJg","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":"WZmnT1IcPI1YkEtTQ_utg","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":"jo_okNKTfWkx3fOJZ_CJK","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":"7NFD5Fju-fTpZmUVAwuer","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":"W0caI8VOnGc-DYcwnUIhX","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":"HCv13yT_L25iui9CTzJAu","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":"0ZQ1eu45vHJk-PV-7RXY2","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":"glr4VG5ERiuibCfU8X3iw","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":"gY5Z-EHwO7EfKx4yj-j2z","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":"_3cpAE8UWp2jI5OweWwW3","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":"9Uyo55oI44GuI-CBsr_NI","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":"o2nPNFL-UQQV8aCBukvrk","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":"ktEZuxMzswh08stQco-PV","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":"itmtnGpaoFMbYAOoxE5n1","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":"yoeCV-qrOLrwvQPObJonO","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":"6TUS_e1_e9Eed6Jz4HqzT","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":"e_saKqQADge8aiGEExR1r","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":"chaeF_9XUP7Atd4CUVpEr","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":"lK0eJTIOzya1xnLtFAKuU","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":"z1Tn887zdhclM7I1NTKPO","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":"Ii6553Yd4ydtNbob7Lbma","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":"zvzfwgX0OysGFbf7KwCcS","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":"dJ49pKI6lQbLigYdTmJuS","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":"dpN8TsyYEYBJZOkiTq4wU","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":"dt5nUFi19AYgRuamuXNsG","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":"6dMeQtyOcjeJ6laTo84_J","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":"Hphpy9-mOthrHQbkjnVjQ","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":"g_2sWA-lXYXrYnS_Yuyr4","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":"1LLZD1gYqFVb70OfYmYgi","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LD8SZ1n50OmjR0GmBnnH-","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7fh-Kef4rWe5QCM_6frE-","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vzoFGxK8c0XWI8r9oIt0g","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":"Q2ER249Me2oVS0gxHxJzf","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Iz8ZU1SUj4vucvFu-kUh9","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IfjodEyO6FA8erJLAKzWp","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":"HaECtKfbc6A41jPAVfGE9","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":"HMqV4VhotJTjRGsboISZI","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":"5VcmIaV9Ch1DLqcZGmMsG","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KsuvfXFNYsVxdBdNSMBQl","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

                            Tap and hold threshold timeout in ms

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nUkqslw3hTpuqgF_-dmc8","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if the pointer is over the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8_15a9bVky1BEM4FDtk1B","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":"EWonNjwM3guQivnk0RVs3","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A34dFsLspVxsV3skLlFSQ","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":"DDXoyoOoMO2MwCZkZ3p4d","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9JTMaKnUz9HpRMx0E5tse","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":"lFJG9mkH4FQB0FL3AidR1","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":"rJ9co4EOtkucDsxQNA0TA","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":"6u8lK58m1NVnPaWcC2Hfm","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be tap and hold

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T4hv1mV3a5Kts5Mxsvu68","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":"OO8mPKleOsO9ofZQi19eL","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

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

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h5BXDzQszlEkPzphD617Q","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":"AkqeZhoMzawXmbwtyzz9z","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bhpoLI9DNqx9J2f608cfA","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":"au61HLK8Nylz88j_yTwim","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            returns the parent application (or game) to which this renderable is attached to

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

                            the parent application or undefined if not attached to any container/app

                            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hxJAHI3WdWFkwJ_Ycyj7h","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":"PDJnukpRM5QZeLbs9Y7Jf","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VPbryndIdR_u69Uic6ldG","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":"RUIuQRKM3mIEIAr3wskZY","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WEsXdjuPtehlF9YNkbFi4","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            whether the container is the root of the scene

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fg1XAJBC8XSwsT6DFr0eI","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":"Gu_d3BM656iA47oZaP2Kk","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":"nLRIkKdoyAEcBD_f3YqdM","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":"WdiSKTgptqkl805qHcQo9","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HViLioZ1zSnllRmdo307S","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_DVZafAfgEmzq0m5et-kX","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":"76pMyxg_qv02-hRne4sat","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KPAnOFKEgMtt_DV24Rfcy","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":"KIZQZ3Ze_QoHHgZXM062-","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":"yzoYRaeXYzxxrxZO31_2h","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":"vqKZrld__eeT-IUI4QVTZ","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":"YQRL724eJ_YrIjzMTFWJM","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":"jZGO0qUWmXdBI_kB2tGQ7","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":"kVGwNYkQ5x83teFJ5FQsu","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":"yWZjWHXvtQVnDpH6zFfVl","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":"V8IdoQ2hQHETyEOI_lOlK","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":"zachg_uMwa19HjsTwMYHR","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":"6ni4-AbPb_SneNbyPUmT_","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":"vj8FhpuP3iRuDtBZepKMX","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":"1Ezc5c68p-rSQGtQlmjab","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":"sYh6fLvqrf_ThpOmtHgid","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":"XHkf4gdeCSPAh00W9q7jO","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":"0KFaU2fTt-4EkmGkXTESm","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":"fzRIeyHIh2wbdwt__TSm9","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":"lYPEJKbgwNm4QIIpd1cXu","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":"3Aymvpzusqmni2JZIpjDo","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":"5cXMCAafnAeRP-eR7_R9a","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":"n9aWkgsQhmdDkdLMHfoTx","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":"pcQ0LqZEGzfUNEa-aR5G9","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":"RQR_wULMseCw5pkCjTLFr","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":"HYSXckG3nN9IsY_2lTEom","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":"knOOKzk0Ym_M0PQfiWKUV","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":"ryIWvbawhEuWksfvgFPEU","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":"65hGzXSVeVCsGE4L2lK7y","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":"p7UMTevr3Tzs8BzPcDdcd","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":"zPuKIWidI-jlQYKylUURN","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":"dkKnZw1PkaoZ7qUlF-37f","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":"q4WOXwENqh6aykswwd2bU","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":"9Aac4-mbwlf3lJO4RdstK","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":"f9D0LH62bwxfjpmxrd7lX","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":"G_9UHmxysdFIWnCV6zibQ","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":"HFdhGpJA3PTRF5F4cU5ZK","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":"kSAxTY96kUwNGOacuwPUQ","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":"DEFsPVfxQQSm5zt5RPWN2","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":"dsdD3iaW-0lJcBQ8OxyZC","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":"K4UZpeurLkrhuwuAw9E0B","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bw3-tMFbLLGSitEGP_eCD","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":"zWUALx_rvxGf8-vhrB7Jj","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":"3z_tgsvdj2XLOMok8BXoZ","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":"NYTRo3hQQmOXxSjzlyH1R","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":"cyLm3Z352Q3BvH3l65JIa","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":"AQu_Asyn4pX4YdPlT_kqU","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":"-sfBJPFTVrb2K7Gj2xQq5","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":"wrco0KBKjcYpWcTxXPUv2","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":"Dx9enDA5e8KJCVHJo9096","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":"w8hjbcruVndO4YZXhZU3I","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":"MJncNoW4Ok1zLyZL5Q0By","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":"Cyx6LICcfUx3AXxrcrWEY","name":"reset","brief":"

                            reset the container, removing all childrens, and reseting transforms.

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yEVeejCBKtHoK_Ti5q6bC","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":"k-SRbPjkz9cCs0-r7nETA","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":"F-yhNetUSd8No1uhAny7O","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":"KIoCOcYdYgOo4Lr0vnNkn","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":"_5lLlhINV5NfbfGxqNqrI","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":"tOCuKQoTGICzZ9u_5pC6M","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":"3qUEHugCFQoLCf2DL1ap8","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":"9Qn8MOI10nzoAVnyL5b1k","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":"RD-bwxg594kZK5UnwUNGB","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":"W1DLG2PW3Be_YGmxxlI-N","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":"g_GoMiMaSiEEyzdT3wp1T","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":"-0KqRcu7Scsi4rxNW-JJB","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":"dYRVHtvy5i_T6IXIQfdb5","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":"mQmGiO1WzlaM414EhjVU1","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":"n140BqXE717R6zRC0rt1n","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":"YXpKNoi0nlTIwsU0slPN7","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":"Z_5-6Rkmbm8ftIeHhCmrn","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":"WP_UJc1KHUk-prE3tEau-","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":"uianS4wMT5iDUf4AcrUL0","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":"sWk1d-kyVBKpA4GKABvCk","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":"Cx86kR1C1-_PVHYlfzlQx","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":"UiKgGkp7AG4G7BX9wB2t5","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":"vQ1bY7_fr4aTaAj-l2xwQ","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":"WXWCUmUmVLYPANVJApvBR","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":"0DhYvwptK3gQZf0_b0wVa","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":"tNwrZ5y2xJGlHOE-Ppa6E","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":"PUCPqi-bc2QjMkIAEbIuf","name":"animationpause","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Yd-Oi5rspyhTUdbYXGwcn","name":"animationspeed","brief":"","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                            animation cycling speed (delay between frame in ms)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0EmWNYDsp4JSDWQUUQmxe","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":"02UL1fm4D1FiqCbttBBmn","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":"7_1zUwZTWRmRIAH5DT3V3","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":"y1pOYHqx9GV67gpXil8ed","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tJoTH0dleSMxd-F6mcCgE","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8WWBNpEqh2q5jGC6K_DOY","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1Nub1Pncxe51BK43yRywF","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UY_-ThJv2gYphw6UV0-Pv","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X3n4VbLGtHxRzmatOcnfI","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":"_Ww5b0rAgdE1f3D0dkyBb","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":"JiIK9AX84wbe8-K9gRfrP","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6YNm7Gh1USKAMdnpGOyD8","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

                            Tap and hold threshold timeout in ms

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JerzvPA2q0rHwsvZcHpdw","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if the pointer is over the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yDaUX9nOwAX3e5G7lgLM2","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":"PBcKJsn_Ge1dftqPkffw-","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cRnQ90r0ErAPbBVYp4-1v","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":"hrhqSomCmP1GUYyTBjXgJ","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":"zbUUI-jPyLfyiDPyTmaWX","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":"uC3L04ILwmo_Czxyn_7c8","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":"DVxolQQBisagyWknrMCb_","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be tap and hold

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IMnW_-7GowZN_kTz7jwVA","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":"DEc9zddPESfdVVTcqfM5u","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5alYsOmTWazHhc8MfHSO4","name":"isVideo","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if this is a video sprite (e.g. a HTMLVideoElement was passed as as source)

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

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xAwn6BWZQAxYS4GYtbUph","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":"uaE49eWJF4tJkYFH-R8Rk","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x9QNQRGnRw_mdHtQdCRG4","name":"offset","brief":"","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":"K0429fcgbcI0gSbirEK7j","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":"HBrCIMNZneZRP4-Gqdfo_","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            returns the parent application (or game) to which this renderable is attached to

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

                            the parent application or undefined if not attached to any container/app

                            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LVJdOVMp5cuERr1ySteV3","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":"Y_Bo7R1Z-pIksVeUAZsTY","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NvwCr-2UMqTzMwR0nDLIi","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PnV1XoH4v9D1cSS4bu0uJ","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":"tAU1kAG97qMgoN7cf8QpV","name":"source","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            The source texture object this sprite object is using

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QwG7A37dCRiSvJgv9BFzO","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":"jxnvL_FaIffDNI19N8_q-","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xAyf6jIegCw-2RfYC1Gl6","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6ruQxrFoVR8HorlXOz5ax","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":"0V31RkbfIA0dGptRFjVDv","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iUxxZwaHGX97CfZVGAc46","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 defining 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":"mteAB5ZWU897-OukCdUVc","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":"PSBWnGM2RW2gdrDK3LYUy","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":"232bWF7T2g2J1ZnTwSNu1","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":"avy79s6HAgsjmxLCbPhYm","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":"nR3Ax8avLWNPaDBzyPCK6","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":"p5t3DzEsVTWkgFnpG1mUg","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":"VFNRpKg6rIBTHNeI_pZt7","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":"QekWrSbZrTPMQ_fV4OlEE","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":"v-2LVB9hgqQjBlgGaSqx0","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":"aRWI8SpwX6SwcviNKKnnS","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":"33U9EEH5fz2SlizTw00UJ","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":"ueA4GOdTgj5lBelZeMpfg","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":"RzGHj2w97VF56mpDi5MI9","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":"sthbWwZ-1ty6iRAckEt40","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":"WFtTOOxob19OAtBUsa86u","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":"pLp-CFkyRomZR4K6WlydB","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":"ACurItJWaoAjx4wiBvl4Y","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":"YUkS-6Jri2f1-oQpqYz64","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":"-b56eaolRYfArsnIrLI2N","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":"50GqjTf_Xnura3yob_QEg","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":"EnRUopXGRIQqBiSQL71e6","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":"Pdm9KhWh_BosTETb55nPJ","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":"Y49h4iaDH5EXY4ynfUgQB","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":"jYc7eCSnYL7Pz246i5eIj","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7Fme_jwiCxb3NqIbfcwri","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":"pkCB0SxUOnscSX2zZanvW","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":"DjAIsR5RBMvMexBaifNlq","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":"2X4VO9c9l1augvm2vur1a","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":"aD39nK3hkPbUFQbctihU2","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":"PFt3gG09uneDOwW5fT4ae","name":"pause","brief":"

                            play or resume the current animation or video

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5gK0oW4SNB3g-hp_ajwoy","name":"play","brief":"

                            play or resume the current animation or video

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W1Lbt_6L2gXuWJRyUK6w0","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":"o6OkRxtC5ahLah-9sYHab","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":"YZBnQYW7irHylF0ZRR8NT","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":"fgMM5TX6BsLNgmbe-9yz8","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":"FPqG_FUrlfqhXXWdB2pPI","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":"D9vazIQ8YJexA0veH-hUQ","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":"qy4SLulrsk2dDk1DfziYT","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":"ONXTGihluXOonL81hqMDW","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":"HmfKCx3CQxgrA7xCaRvWL","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":"eDmOyIfkX0-MHJyR9p0HB","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":"WKQxQqz_hXEOk5RuzDg5l","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":"iU0kVW9ou2dNlx-ddBR8B","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":"zEhtLX4EVF1hpClCsqbpX","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":"oiA7aJhmJRpCSyA1f-LQw","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":"T2lN2XksayDNPipxECzSL","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":"I-EkMoPNSXb-0dQjwL2xT","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":"ycTdtVf5n5nBV7j9s1Rzu","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":"I25oZw-VSbGJZhASmujl2","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":"yfsEGzeC5RqflcXnw4Erv","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":"2lETVWteWc9ZOeLh9Y5f3","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":"kPChmWVy1jPis8dLR1TgL","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":"Lb0UG2noNW9x3ojD4xte0","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":"hK7T59DmL2jngcQu_lCRR","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":"1eXnjpefDcLKp7HSWzrUd","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":"ucDTWZ_Y5UAcJGIr0sGoq","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":"3nJ8w-tK2XjOSQaa0G9NB","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":"FrvVRBmDJGSfnk8UPoNEI","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":"wI3nS5o-xo1-XkKywENkT","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":"_mmJhslnvk40Fo9Joi8e2","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":"vuKHUgE8HBB5fmc-Nr-uq","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":"YwdI0JNo7C9CS65X3PJu2","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":"hHGASl3AhT1GbIA4qGTx-","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":"WS04rATD4lmsCTYtO4XB3","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":"3kHScUe8y2qJ_FPNIGNsm","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":"dMeOJm02pgGQitNs8ONq2","name":"bindKey","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The key to bind the action to

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AR4JnRifGnk-yjOEOKmm5","name":"bitmapText","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the bitmapText used by the UITextButton class

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6so1Y01hi9369S_PCjrBq","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":"eJ4KevUygk9TQcwTpgH3U","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":"UOHDfHQs5-UX_BN49UoxI","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":"ghWG8UOg6noICLS_5Vbsr","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qeFaOhJN-vWT9zJwzrINY","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

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

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RAVtT28ZNKUbEGlpTzfkD","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":"ZW97EX_VZtvNHRHhZa9og","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

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

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5DqraZJtDvLmteuVjRNRb","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":"8lskoGmUvmN3-_kPXTbjC","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":"rEOmiybrDiMwRx_bbOQO8","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":"chyLCTBsy4_SR79mcvU83","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2JHqliMQGZbvGzMAatHbW","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

                            Tap and hold threshold timeout in ms

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"40S9EIqM2f07pYe2kvoN5","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if the pointer is over the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7hiVEIv9rESvceEcC63Wn","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":"qnHmAw7LNFV3huKTv-alZ","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":"Tf9cVKkqkkux-Vqz_QmDo","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":"y5nWbpJUMJILRVbx6Q8j1","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EF4GzHizYvLbZklXug5U4","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":"k45FwhxLquU--fRiXklhg","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MqAebj7edBH1sYPBlQQCx","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":"JilnkEvRoVvzd_Ch7hKwH","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":"ChMFTEgBDVGVPBv67IzpH","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":"VDBN2EcM_cKfbfWEc8x_T","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be tap and hold

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vWCZbj04OmMRmoalw21L0","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":"UNiEbcWfjqj6CsLgaxnT1","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5hryY1mBRxsIZhB9mxKPm","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fG98hv4rK85sZEPSwozJq","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":"w3d_8mzE3NpG4GVFXItU0","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9XYKDfHGtGhxYYIq1aU6H","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":"qQp6uO0mbooOOgDwxrlEo","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            returns the parent application (or game) to which this renderable is attached to

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

                            the parent application or undefined if not attached to any container/app

                            ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"twWIDT-RkqY-oZ-z2IhHS","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":"jKyvH-lCt53w28eICtVuh","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jrKocmqCBEsITKEQ1neu0","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":"66vHsQJVCApgTisOMEct6","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VVr8Ss2ShUaxN5JUJnT9f","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            whether the container is the root of the scene

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZoUgt3TKBnaWgsg09McGb","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":"-tXwLcc4aH0Z6sxLJS8bI","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":"cfCLBooIh8rMdyPWb5HVY","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":"do6pR6AncsO1syiJ8fGNX","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":"7tX0b1r3Dmbncl05148Sw","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":"CTerooLyQO4IOQcscSafV","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8vmD45WTuFoSeKeUQw1j1","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZK6gqkSd4ZaqXigMDEESS","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":"Kqrn8gGOsje--ih_Upq0P","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"va8ZcQIISOBfjYBn0soRy","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":"MIKFCAlbxlxO2aoaQo2PF","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":"mIx4rCF4DzN7WckEOQQ8a","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":"vvhsXIj92Ayzh-zShQTZ8","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":"35iycepehsxB_PVQMHqat","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":"CKdeg1FCFtTV6_CgoBDYm","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":"4htpSTc55Zao774KNqKSr","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":"zxx7TP_26V_Ihx4LirB9W","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":"w-Kv2NZVbjVNjVn8Uhq5K","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":"u-FmEulrrqG_I2fB2CBOf","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":"61sDUhdQlAHvX2vfog1J6","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":"HBo881VW5dT-ig_kHqlsN","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":"DfiwPHzEmmHGdGxmwv5uM","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":"QnYlkGXn5hCjsuoCSWs8b","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":"jR7FX9API9WENxNNbtRx-","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":"r0txGBRgbITXdkXHnFsJT","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":"Kj8RQJ9LPuX-jKDV8BtnS","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":"Mqyf8HYDbT2JnKFBNI5kR","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":"s41X6o2H_1NKeU3JcX67G","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":"NqlnSjikaiWxWGpLWr9fW","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":"1NlnZTVwyaZXTJQhJirlU","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":"xJso6Awnytml9yRk-xuTz","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":"ZOvf3VehNC-077HTOGrR2","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":"m4IlAc9e6WnbS6irwAF04","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":"YT78nAVlxUE4D8F3fBQTQ","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":"CqjBCWnNkM42_AufA1yjl","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":"jnQgxZFlmuesSLfsZmTKs","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":"wqjjnn7V7KEXiBxk8fi2u","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":"gtltQwl2B_qw-zxHsQcoD","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":"6aPb_ComP1P2s1Yn_l4G5","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":"qYpOBDPKERbAeFf_X3oYP","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":"v8QucTQUPXAbWoysKX2Iw","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":"mzyyRXJKHAXIdlopi477P","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":"W6s2ie3-eI_cN1428TPoJ","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":"MJPCPnDN7CzTmtJhBDtsb","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":"BlrDYkwrKMpYPIGT4QiKJ","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":"bGMnt-JE9Knbv9tBF0RsA","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":"KQTduDs9bU4qcvhe64QBV","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":"JSOiccQUKgBPxPejR1AJC","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hjH8prS6G3MgtOp-hfj7f","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":"7iOTtgHYIQOli7uSS_d5P","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":"oc9ymsIdpkv4aU29h8rs9","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":"6pD-wAYI93_Jq8vO5HsT5","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":"HhNwJyr-vXpWOrOGyygsu","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":"i3aXQScmZD85Qp9qMxX1E","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":"n1zQOE1sC8fbLUsALdkLF","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":"q9edwmwBwdWbxGLoMCOYJ","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":"HVqdvO_CKShQ3_AzbYv3f","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":"tAUG3mcPREjk1MeCVJvGC","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":"J1LDVVSC3ViVb_kV7NX9A","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":"ZO-WhG9EQWLTFepspYb7U","name":"reset","brief":"

                            reset the container, removing all childrens, and reseting transforms.

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PyRCnl60SoU-dyxL_ISs1","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":"8SnoOHouiHIY46j3kYhwy","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":"JuWOc-dAel4zZz9bKjRIF","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":"vAneNv4i7KlhoO1iMz6v3","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":"nCi63uGCLiPzAHuoqG540","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":"G3y0XTzx1GAOiOQlSAzfR","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":"AUHSWE-wKwzU3Zy1bjVJ6","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":"6--ippFr2i1EpB3dLDH8J","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":"dwcEjx67nNfNlAsy2nIPy","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":"rkkGCmlTalFhyKFIBn3Ry","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":"D_Hlh3_-lJlN2S4fVn5bS","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":"c5qbet-jet2Y9QBOWbSpY","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":"jsr-yV9w9pjF55WpU63Cy","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":"PUwkwr3F_PLLLskjBZ0bK","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":"Ou2iVMmLtqV116c9zY-Ub","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":"PelpdN---bG3DiMLRnDuJ","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":"-3TRHbkoVLO6FBxbIZYq2","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":"CSAySm-H0lZyiOKhaM93R","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":"sqHYiK_a_ze519--oWt5_","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":"ERWsOHZfvrQWxnR8VUjtW","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":"nalFRFCA0QyqwkD1dNOJ4","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":"5lBqxlDiYBQe11IH3AmRo","name":"Vector2d","brief":"","type":"ClassDoc","description":"

                            a generic 2D Vector Object

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"uFWlnJ2M4KNldKk4CCPhR","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            x value of the vector

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

                            y value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6SqclgIz92SdrKUPALitH","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":"FGqyHFeas1tRfA3TJ1xwV","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":"ITGwhgqdiPxPQMlbxpwgF","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":"-VMBiTOvWtrVqjIAmHvuf","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":"O_WgLVYuuYCKqegdHRGoH","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":"gB-4XvO5vPIN_fXTFfEB6","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":"yNLrtMeCDayllOTYBEoK-","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":"JOLH7ybPPGalB5yywR_yV","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":"KMWu2BW5rV0skHn5tUCJ2","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":"_dF6Ou6mvGaeGuS-Sr3XA","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":"wcony_nfARF0tzNqH43do","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":"zIn9Mgn-VupJPspFQuuXq","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":"oW1BLUFcH6C8QwbkOezJT","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":"f_0DynGl0f-ZVpDSGTPXZ","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":"oSTQOGhekqncRxlOVarXF","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if this vector is equal to the given values or vector

                            ","params":[{"identifier":"x","optional":false,"variadic":true,"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":"VDIJ9ct2n7kyts2aVXzd7","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":"CAu1C6y0bifgFQpTfMBIJ","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":"7iYqMdsnDH8iqK7M0Evif","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":"xfIykqbnSDqUKk8hPwy_6","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":"YFQyXvTTpI-m1cnlKlQA7","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":"mV-cV8eZ6dnZxe5WP_1-x","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":"sAKPmzFOZ4jlqBzUr9zdT","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":"6Lixb2sVO9WqAEmx6ilFN","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":"SEn4GtyBmom2gGkAlCmUb","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":"wSPAl8iBhsZre8U5vs-jt","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":"zpnn2O2uVYuUHbAvR_mUR","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":"SHNv1S9s-0vpbkNg-HfdX","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":"NauluZrxFPBeC3zlTzRBo","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":"yhx2c8nAbcYmAa3znqLhQ","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":"MpS0Eem62_x-b12fKkt24","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":"w_YtJy6g4aJgzsBvd2WYo","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":"3SXuVRgZMQcos0PtU7sA3","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":"RoGU-YCixz5FybLELxNj5","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":"C53cbOtq2O97RdqFPSOWD","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":"44WJburWGboAjCyCUN1QR","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":"AsBeljfepvYwb84mOqOeS","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":"Tyj2JplryHQGWPecVehzW","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":"uGJSmFa7N9zFYUM2rUM_2","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":"PB9Hy1w1iPDfw-0yKvD5v","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":"24P9fT9-mQFw4ylvS7Mq9","name":"Vector3d","brief":"","type":"ClassDoc","description":"

                            a generic 3D Vector Object

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"y91anGoO55OlS81Hb5HC6","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            x value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5GJTz17zgBwlq2sqWDdGa","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            y value of the vector

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

                            z value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lmi-iTTgkhaMUPpk5DulP","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":"qocJfP0i2XrdL-87HfKcm","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":"xMI1Il791Krdq3-Ix6uaR","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":"QwtPr73FbOZiWgiTXjX8G","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":"0-wV-kIEniLMCrg-nWsbh","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":"hni3rj5TlV_rBVU1Eb5AU","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":"TG_XJ92t39OVcr_66dWpH","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":"H-mrDsdr18Gy0Rld1yDUY","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":"_mEjGpgH0HDqZp45r1dDN","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":"nOi2zJrFmOfDgCp1SjPlb","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":"PN4aFgI2_ssl7ZXrA8eQY","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":"NhZHQ-tcswwcfhkKB24gr","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":"5g6jPpn6EDXiNMqwhB7Rv","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":"sccUDc8vVZYGZXJswmbgn","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":"hHU9bnesqoyx0-E-FqJGC","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if this vector is equal to the given values or vector

                            ","params":[{"identifier":"x","optional":false,"variadic":true,"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":"y-tjjw3Q0pz7q0an-eKq-","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":"bHkWWyTWnck8Fi4uhtru0","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":"p13LkvKTeEsSHY6x0b_7p","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":"Mjz3tdJm_2UEvWZHfp-ni","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":"QPJUodBD657fX9qSE_p4F","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":"yMYLq6gg5VaMOhjMTKhO9","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":"-x9JmK1-aPqP3FXfMhK_g","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":"1i9DXHo7QKZUwnyfgoqCp","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":"JvRLt4jO4Ri2FpEbiDSRu","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":"zLWXICTMUcefv7nLLahJ_","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":"gk3wMlj_VNlxjZauZk5c5","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":"Vhv1m3cQjw5ReagAqLPYu","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":"jqLl1OiGKs0wM0s2uIwwR","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":"U7vDHS-sbgRRRCYLH2IMm","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":"G94hBQMGJ_voyI7SHFLys","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":"Blzk-PpvhssIm6UIp5SII","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":"Rjban_6I9GlmJB4vwXHp-","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":"Zu-z5Enxs2uP35trgU9WZ","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":"1zXBNg9fZCRISgXcbSqZh","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":"S23J5VzwMUxbTwgeOoN3m","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":"Zjy1MEt0v_JBWvUPCyKK1","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":"o5CBsYLzBJL3De2ZweMR8","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":"C6PuppBL_t8Wjh8RAJ6d3","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":"g0DB27SpgNEvmQ_S5odyV","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":"RpdSvImO9v0PtXuZFNvaB","name":"WebGLRenderer","brief":"","type":"ClassDoc","description":"

                            a WebGL renderer object

                            ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"CG-jdNDFp8GBVAmQ82ftj","name":"compositors","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The list of active compositors

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

                            The current compositor used by the renderer

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

                            a reference to the current shader program used by the renderer

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tKF0BEX_ylGYCbm-d7ONW","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The current transformation matrix used for transformations on the overall scene

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5DTX46Q6_cahYBqP_THFn","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

                            the default method to sort object ("sorting", "z-buffer")

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wqeS_l6vznaJxKyk7_N7G","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            the requested video size ratio

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aMp9SbuoOTl-P5rIGmfd1","name":"gl","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The WebGL context

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5FxRc03c3vkFQR512dAh4","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":"kPWMS5XE_fWPZ_bqUIOCd","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":"iMcdPlexjROujjaopOae6","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":"AxkB1dBsBb9BqTxDKJy1a","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            true if the current rendering context is valid

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dt9Fuu2sGYdpSy67mbZDg","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":"zXkl3-LaZxLnk48bQF4El","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The Path2D instance used by the renderer to draw primitives

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-_o5yg59-NzpkhRom0zmn","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":"TyKAJYXRzPeldx3_2hzuG","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            The given constructor options

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lXxwbjryPlCO2TmbgLnNo","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":"QkCPiNCOz-p5ZdipvT7h6","name":"vertexBuffer","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the vertex buffer used by this WebGL Renderer

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j17OUp7J_vGrPWBKcHn4T","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":"99ooVJNtDTWmQjkwxtjAy","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":"aZda2STOkCa9a40CwGOL5","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":"P8AIkYDGPmfntoHYgNma5","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":"9uZQEyyADVKxnGjlmGR3F","name":"clear","brief":"

                            Clear the frame buffer

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pdyL5WhTlCaj4SQDkwyKH","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":"qkxEamtnjapuKhS5WTWhz","name":"clearMask","brief":"","scope":"instance","see":["WebGLRenderer#setMask"],"type":"MethodDoc","description":"

                            disable (remove) the rendering mask set through setMask.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NNcnKlWaOAZ34_cGgPEuy","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":"CYCqSC-z1KkCaFMYllaGi","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

                            clear the rendering tint set through setTint.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qggHZ4xq55UtWmFzixo--","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":"mtqj--nopL8NiF09eBH5r","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":"QAvYvKhmqyO5w6ha9Q9l6","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":"brc4jSdlttaJpGBxa1pV5","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":"3BavhvnpE2DDND2HqepRj","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":"-gJTwZIZXW4CFfIVSv1fx","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":"mBpMIWx60SypAfW4lLXzV","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":"yvdqpfBA5daFwvROzgNb3","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":"FOTxg3-B-kPWhvOHiA7ab","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":"p7g88Ga8uoZL6bGFO-Rdp","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":"8YEGRh68Ps5NV6pw0rtHj","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":"dAdONmBQTokSJK7LpoC__","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":"Z61ng_Xs9wUfexLglJdfK","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":"wh0--zgu5i2kDsNz9-uNm","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":"CuQQmJk-zdT-Km28wLmel","name":"flush","brief":"

                            Flush the compositor to the frame buffer

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RHn9SoISdmUbHImI9F3fh","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":"JsT4RT4Eo7DuBe81qsZTQ","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":"Hn7cHBkpSVpD3bdNCe3K-","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":"uhXKaFu-5h2FXr9ycBm_M","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":"lS6rUjyJSjzzZEvx4ylxv","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":"OvQfIvqbI0CM6l_Fm-AsT","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":"SdN_kCcviREORF7BxypdP","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":"VyiOIyxi_NlEDZ-NdL5_-","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":"BTm91-RQadJ5yM_X_iqVl","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":"FzIoGVAmMuaFFI3XFxDXs","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":"Vng32ngP1CBbQqzsu2b9L","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":"S7BpM-ZrhZKv_ECwieeIa","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":"FzSI07YeHkOvXcRCl5O5m","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":"wCfB_0LiGAStATRvY__p4","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":"GQITbYtMvm5EQiqS0Bz0E","name":"reset","brief":"

                            Reset context state

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cTXs5Zv-z0JiMbLAlh4yn","name":"resetTransform","brief":"

                            Reset the gl transform to identity

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VGpg76aJVGsQwi_8nKFKt","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":"iAV3dA8ujwNhU04eb34xQ","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":"0Hx2XknWuSSYbLMICkEON","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":"TgI2laqdcVXcRdiKx8h6e","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":"_x56aZz1_HGuuau0ije91","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":"IMq7G__SL7ZHLCAo-nxs6","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":"Ztc98VhKUcnUlE9Pd7iDg","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":"B1bWb_y9Vr7efQU1Pw1rZ","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":"VYOuzKQj2UdSk7fvNPzaN","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":"m6Wbz6pPHOtle6vgVQHjw","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":"jYTmap5HtJH1ApF3deRQ8","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":"nFM4_JKGnCevkiipxk3Xp","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":"HcUQ_uBVfOhQEakZvM1um","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":"6bJR2RrGhUnapt-PUDatM","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":"U-4FCmKxTrEz05oYQqtum","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":"lqqxNMpOrSEJVUaRdhjIT","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":"KBPiKVfN__VgCbkuHEfdN","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":"WjA0JEAP9KoSPJYUZURcf","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":"-M4TC6qsnJusil02o1oeG","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":"_WJI4vSXo_-ei2U2B9T1T","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":"J_yJxmAfCImj8mDgJSETA","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":"DYSTDYZMSpGjVeanT54IT","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":"FZQnGgV6xgjONSIuca7a7","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":"FqLCjIddab38rNZJytyPj","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":"Y5nLM3T4ugJ7wzB16VTtf","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":"6eQqwfFa1KVzov6M0Lxvc","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":"PIpkBRGoki4SjPYWItisk","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":"type","optional":true,"default":"\"image/png\"","description":"

                              A string indicating the image format

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"KX9kUmleyYW0jcY1koReY","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":"type","optional":true,"default":"\"image/png\"","description":"

                              A string indicating the image format

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"kIewtPDYZNna6u3Y0lOb-","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":"type","optional":true,"default":"\"image/png\"","description":"

                              A string indicating the image format

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"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":"iet1Mq6ZLcaE0Pg0BK4zG","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":"aP8Lt1aW4pizN5bUdhQmX","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":"QcohUfJniF6yl0CaaWAuF","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":"-h_x6kc60TVyQJZjRIi-v","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":"RlUBR-N_9dlbqswb4gDES","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":"k2zOtBLL6-xKKaPMXWlEK","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":"fH7NW-NT24IuaahcUWLHE","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":"YwVyWrNzJQsp3-cjSsL6x","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the application (game) this physic world belong to

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IK_DP7NXXHeNEXrnG3OLr","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":"aU26JyYBAOpf0UbLB8WBW","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":"7Dl7u4y0iL-bSVe93viid","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":"Go7UcknkmZSD2JVtD0GoC","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":"SKxO-6LM8Mr6lU01ZjWF1","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":"NU3q2gXaV6X9RV8RceV4y","name":"bodies","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the active physic bodies in this simulation

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yAvHguuwG_LHQrg2rQpsR","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":"HOoBK3i9BA0HefaG4EYVd","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              bottom coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C8uUsaKogNZjDo3bBXiw2","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":"ECdIaWod-GmzhaTCPzE7E","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              absolute center of this rectangle on the horizontal axis

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

                              absolute center of this rectangle on the vertical axis

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F8v4qmOABTGI81LbCjL9v","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":"m9cf3vjuBsdFjf_1dM9Jy","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the renderable default transformation matrix

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1t8XmykWeWoC0prGfIfcJ","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the depth of this renderable on the z axis

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

                              the collision detector instance used by this world instance

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9tpzvoSAYCIJ_0j58PV92","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":"tPH72Se_Cn7NcP9c2JYhU","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":"V7Itg1HT-4x1d7FuV6rTq","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":"dYbnlmJRgLoiAOHm2uVHR","name":"gravity","brief":"","defaultValue":"<0,0.98>","scope":"instance","type":"PropertyDoc","description":"

                              world gravity

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VtCQh9d6VWqy3XWzHJVw_","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":"wbpxMd0uv2FFC2OEpHDJT","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              height of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pr9TglYd7pz05S9jNcJzs","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":"fAeR3pt88BLcYStkAphq2","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":"853ggWlCqytFZzjUmF9q9","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":"venr22wemSJJe-sz1UoSD","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":"GNEhZVgadPzErbbsUbFMb","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":"xMvDE5hmZi3AjurFeZRvz","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":"LDbgADeGjcGZWKS2N_WSu","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              make the renderable object persistent over level changes

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

                              left coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AuaRcPssSJvL8JfixNy0t","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":"lilXrpaYiMAq8h_FNpJPy","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                              The name of the renderable

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cHJ2FMWIl2kt1-NzYSyf0","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":"IEYDWO_nbQWGku6lubneY","name":"parentApp","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              returns the parent application (or game) to which this renderable is attached to

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

                              the parent application or undefined if not attached to any container/app

                              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KE6qMfafzwUeKLtZ6AGP7","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":"4Aao0clLAOvWvrTcVYngu","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":"IukZJXHkDKLgMhyMja-yx","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                              Position of the Renderable relative to its parent container

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F0tUfF7WQbdLrA8857sdp","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":"uJDnPe_m8_po4jOh_IPls","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              right coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uVIpvRIDVHH2IRh97ZlTd","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              whether the container is the root of the scene

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JGKbas0O1JsJxTOlPU0Vm","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":"TaIiyuu6IveUzLa7QnT2i","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":"tLms43CkJxqYQRZjxMi5_","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":"Y835ev7AfDRMyhjPLIoTz","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              top coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"38vBW9_ECRWJQ26OVYlj3","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                              the shape type (used internally)

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"REkot8YCNHgGVQvz-udot","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":"PqZ0uD92Buqf2MJS1xVA_","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              width of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FKQRhx57DDphHrqKKw7b6","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":"1I2AzOfTzEPN5v_UIBBvb","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":"r8QmXe4duNv3Tx7kA1Orl","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":"YjhqzaOYHDCuqIU5i2Ihn","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":"wyszac1gTCTrPMCPiftH4","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":"87g2LI6Gb9eHutlKvrF3f","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":"No5sBKs0U0NytSCvUlHpQ","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":"9TgAswkBRoTIZuzvm0thP","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":"jxYn6Il3_7BzgXEUJpfdj","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":"qzBa63p3bed9yaniRjjWB","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":"c_m9cj3i_TdZrBk-NXs5K","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":"DyCeAqP4wH67cP9zfxoNV","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":"57R14Qu2jSoUlb53KdP5k","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":"hYzfTJTSYEc6CwSTYgPDX","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":"3VPvzkUEFp_qLp8F4aSss","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":"PGU5uZOzyAsoiewfnL0Qg","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":"aqmPmMypVodp0eN-Q069d","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":"Ysc09cIwpUvfvbGOfxYfP","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":"iMnVTKaC6T9vg3SDySDnu","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":"FOKs0AH5oL7ROl4Bqi-mb","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":"GNWaoJMXHL52oct6_m1sg","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":"71c0SkLERNH0eMIUxdiNM","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":"1n0sDagsv65TVeTyNiOQb","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":"D3glX2P9bA2tEg1KRV9Gw","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":"MacQBI6Z000BOkfhde3R1","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":"l-U5VCIM5mbplBvoEk5tr","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":"wSBM3s9XXdMTpvJybG_ya","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":"6bdC1Iwv7rCOj18uA1U-F","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":"zqaFZWvHxWN5Db1WeF4mf","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":"XQL0BSXXPV11Og2wrUUox","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":"0shfxOhUDT-vCBFWbziq3","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":"ybPcKHJyAOAppRO0ZCV8s","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":"RtIcAyTeNwjXx4wBtQUSA","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":"CpXkv4WWqzUcVZErDdxT_","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":"VSdZl0Bu9fT-GRDUGn38L","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":"l8Sm4BLvHqIJ-_no_X7Pu","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":"0qrgQwipCEd1-JzbELw7Y","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":"RuGxzqUgkGHXLcuDKKDjy","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":"tWz5Xs6xFlCqxt0NrLkom","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                              OnDestroy Notification function
                              \nCalled by engine before deleting the object

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gnZM8dVzP-skRiyzttXQo","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":"zeENS04DSp1nQ7dQ5B2xc","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":"lZYUPj2YMDDDZAvepaGmV","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":"PdPY1kacgJ_A6VZCDTn5A","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":"LHrpVnjN4i6xbXNIFLmZJ","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":"cjuMug_T-GaU1PnohzCxa","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":"Fx5QDNnA2Rt_MEYv-z0Il","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":"YCLsEi7MUre_pnD-7JVbZ","name":"reset","brief":"

                              reset the game world

                              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N8sdsHJEjXrgDkvHvqmsn","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":"7_OofSY61N_iPMkLGTlqm","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":"pa5L5NtI-OwfaSYpPLRDg","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":"RTFtOs83nQuWgYJOi9MyW","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":"8_sFD7OufmNFmGFzVONvb","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":"c-W2yN4uMoQxY5U_ti3PM","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":"s5G2j1w4UOgaT18gQkTco","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":"oMbHUC4DZNoWylQTz9Zy9","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":"ibWUSTqlEkgB_n7A6s8nb","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":"2ECUze0WBHeQpMegs4Fe_","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":"BQ-KeX7KP0Vp6wqNUTiW2","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":"R2hnEBDI_zmh29pJXrP0b","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":"V-RCYSlSnjwjA6CKiXaR8","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":"rmFcVVvaonpZ5CkCxnKp_","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":"FARa-eBrjrb9brA8SEuDr","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":"-fX90oqpK5-fPb-21f_Ng","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":"l1hl0HQSBEcfiZZq8mIlt","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":"ddT1on9k1J5tpwEmm00S2","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":"MEj-5Ibr4JPmmTf1_yTor","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":"doHu90EUd4rXVQIQMf6rl","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":"7XGBc613P5KXYBoRGH0yz","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":"tOhser6iFjcAw6rWAy8Cj","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":"_Fe1glYTfUBbiKJSewoSp","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":"m4VKVLYDp4Pk23G4fApVE","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":"kzi1vBrKBL0kVqzEKL0OR","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":"J2GjB2664qkscHEba49As","name":"version","brief":"","defaultValue":"\"__VERSION__\"","readonly":true,"scope":"static","type":"PropertyDoc","description":"

                              current melonJS version

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LYNPNPJBc3OCRcHM5YREy","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":"NOl5M2XP8bGR5br8gkpjA","name":"failureLoadedAssets","brief":"

                              Assets uploaded with an error

                              ","readonly":true,"type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"727_nFkv25ocVdPGbexDU","name":"imgList","brief":"

                              where all preloaded content is cached

                              ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AwiKFnNsyyIVtFyFPRHlO","name":"initialized","brief":"","defaultValue":"false","readonly":true,"type":"PropertyDoc","description":"

                              a flag indicating that melonJS is fully initialized

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vnKBkpQgTh5bbiS1s_0nu","name":"parserInitialized","brief":"

                              keep track if parsers were registered

                              ","defaultValue":"false","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mKwBAQp49QW8WVKOwpedZ","name":"parsers","brief":"

                              list of parser function for supported format type

                              ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hZjB-Is6x4Rp8go2YCf3P","name":"skipAutoInit","brief":"","defaultValue":"false","see":["boot"],"type":"PropertyDoc","description":"

                              disable melonJS auto-initialization

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E9dVW5fYGMsIYJWTnwZlm","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":"9UQdBshcmDGp1KXUd_Nu7","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":"YD4QKyBxWEx8ShsFvmx1s","name":"fetchData","brief":"","examples":[{"caption":"","code":"fetchData('https://api.example.com/data', 'json')\n .then(data => {\n // Handle the fetched JSON data\n })\n .catch(error => {\n // Handle the error\n });"}],"type":"FunctionDoc","description":"

                              Fetches data from the specified URL.

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

                              The URL to fetch the data from.

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

                              The type of response expected ('json', 'text', 'blob', 'arrayBuffer').

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

                              A promise that resolves with the fetched data or rejects with an error.

                              ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KA9spaCvF52XFLxt5nvts","name":"hasVideoFormat","brief":"","type":"FunctionDoc","description":"

                              detect if the given video format is supported

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

                              the video format to check for support

                              ","dataType":{"tokens":[{"value":"\"h264\" | \"h265\" | \"ogg\" | \"mp4\" | \"m4v\" | \"webm\" | \"vp9\" | \"hls\"","kind":"canonical"},{"value":"\"h264\"","kind":"canonical"},{"value":"\"h265\"","kind":"canonical"},{"value":"\"ogg\"","kind":"canonical"},{"value":"\"mp4\"","kind":"canonical"},{"value":"\"m4v\"","kind":"canonical"},{"value":"\"webm\"","kind":"canonical"},{"value":"\"vp9\"","kind":"canonical"},{"value":"\"hls\"","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8"}}],"returns":[{"description":"

                              return true if the given video format is supported

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_BkIcCPMQeRpD_Pb4npsy","name":"pow","brief":"","type":"FunctionDoc","description":"

                              Calculates the power of a number.

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

                              The number to be raised to the power of 2.

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

                              The result of raising the number to the power of 2.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AElFa_PPHQKx8gepKdVV4","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":"iLS3HQxOqEm8JmMZB6XG4","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":"Y9X-Jcsid1J2BpysbnykX","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--bnZMlBOHunJl7r_2RAOH":{"uri":"/melonJS/docs/melonjs.html"},"VBnZQZMRRCe16uH2cqoqW":{"uri":"/melonJS/docs/melonjs/audio.html"},"HmaX17lvdT5EjKc1YY7mH":{"uri":"/melonJS/docs/melonjs/audio.html#stopOnAudioError"},"ml4RXpIA_htK4BKxDJg5T":{"uri":"/melonJS/docs/melonjs/audio/disable.html"},"H8DgqzcIOgcPzBcHkJH2i":{"uri":"/melonJS/docs/melonjs/audio/enable.html"},"wqIKq-o9uX9F2UkjAf6e6":{"uri":"/melonJS/docs/melonjs/audio/fade.html"},"xAvALYyt-l9FO6ZrAuL0h":{"uri":"/melonJS/docs/melonjs/audio/getCurrentTrack.html"},"cHYU5KCcSB92fXawyAM0X":{"uri":"/melonJS/docs/melonjs/audio/getVolume.html"},"dOOOwYCQgwUlmK_WWUIsZ":{"uri":"/melonJS/docs/melonjs/audio/hasAudio.html"},"fh8ABOVvyygBr-C8F1lzB":{"uri":"/melonJS/docs/melonjs/audio/hasFormat.html"},"U6FR_l_lKvALmRAcw2vmA":{"uri":"/melonJS/docs/melonjs/audio/init.html"},"X9jVXmJ-yjCY_0Z48pFYg":{"uri":"/melonJS/docs/melonjs/audio/load.html"},"F6sHWYChb05uMsMwhMxqa":{"uri":"/melonJS/docs/melonjs/audio/mute.html"},"FWWsZq6ejS3odSrbSjxNz":{"uri":"/melonJS/docs/melonjs/audio/muteAll.html"},"gP6ht5l6l4KS7jAVBPVQ5":{"uri":"/melonJS/docs/melonjs/audio/muted.html"},"xpyXl6A17XQ6mtYR9Hg39":{"uri":"/melonJS/docs/melonjs/audio/pause.html"},"mXOdAGQHVmOvgocHXp9ym":{"uri":"/melonJS/docs/melonjs/audio/pauseTrack.html"},"szWRBdkkgwhaAbGFjKY9J":{"uri":"/melonJS/docs/melonjs/audio/play.html"},"0lma2DCG5SnnJjzmB91aF":{"uri":"/melonJS/docs/melonjs/audio/playTrack.html"},"F9FXAptnjN1Ndc1mVaRt2":{"uri":"/melonJS/docs/melonjs/audio/rate.html"},"ZGu2RTxIMfZ1Arns_zWbm":{"uri":"/melonJS/docs/melonjs/audio/resume.html"},"rEpQqNK59b05DJgRduQym":{"uri":"/melonJS/docs/melonjs/audio/resumeTrack.html"},"IQE7ZmD5YepEv7KQiTbU_":{"uri":"/melonJS/docs/melonjs/audio/seek.html"},"DT4_Eb-QmRkGyPMf4prhs":{"uri":"/melonJS/docs/melonjs/audio/setVolume.html"},"JVEhkTHJyKOqCUzLdLp44":{"uri":"/melonJS/docs/melonjs/audio/stop.html"},"vpuSlYE2wqx4JDthuynyV":{"uri":"/melonJS/docs/melonjs/audio/stopTrack.html"},"_1WQ_DbkB9FftA3wcvL6q":{"uri":"/melonJS/docs/melonjs/audio/unload.html"},"0xDQhc5lpZsTCqWcpLNyC":{"uri":"/melonJS/docs/melonjs/audio/unloadAll.html"},"74I2rzBKRpK_UXL84ee77":{"uri":"/melonJS/docs/melonjs/audio/unmute.html"},"umw4WeL2wiWP2KhSmVHUO":{"uri":"/melonJS/docs/melonjs/audio/unmuteAll.html"},"NQL9RWIPZOhHjwfupmTl_":{"uri":"/melonJS/docs/melonjs/collision.html"},"tyqDGr2e-Fq-QgdIWYiL3":{"uri":"/melonJS/docs/melonjs/collision/types.html"},"6Qm7fy5bE_a6MPpX5biTU":{"uri":"/melonJS/docs/melonjs/collision/types.html#ACTION_OBJECT"},"JnQAFPbdZvZh9vJv5u2Vl":{"uri":"/melonJS/docs/melonjs/collision/types.html#ALL_OBJECT"},"ec_hgv_0g94_GWRfqldgF":{"uri":"/melonJS/docs/melonjs/collision/types.html#COLLECTABLE_OBJECT"},"32lRWmZPLMKqngUN8EtZa":{"uri":"/melonJS/docs/melonjs/collision/types.html#ENEMY_OBJECT"},"cQoobfIRmAGVIm0daYpLj":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT"},"_xYnInYVcDFpTGM9keS8N":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT_"},"lVQ0H6fw2VjnZ_Xu_fSBV":{"uri":"/melonJS/docs/melonjs/collision/types.html#NPC_OBJECT"},"V1M-kw6fD4tVyzJ9u7VYI":{"uri":"/melonJS/docs/melonjs/collision/types.html#PLAYER_OBJECT"},"pDKM-4XfSpSqiznIepYgD":{"uri":"/melonJS/docs/melonjs/collision/types.html#PROJECTILE_OBJECT"},"8AumXkMRMQ3mu5uJa0g0b":{"uri":"/melonJS/docs/melonjs/collision/types.html#USER"},"TsJoOFjNTI5YlvEv3n8bk":{"uri":"/melonJS/docs/melonjs/collision/types.html#WORLD_SHAPE"},"WX8z2_750YSJZLJgmCBT-":{"uri":"/melonJS/docs/melonjs/collision.html#maxChildren"},"YcXTsS0mEzCf6Bcf66feU":{"uri":"/melonJS/docs/melonjs/collision.html#maxDepth"},"QRD28aBJ_iE7UBwlAlZwx":{"uri":"/melonJS/docs/melonjs/collision.html#rayCast"},"H8WlYa_gL--b9Uq09mKrN":{"uri":"/melonJS/docs/melonjs/device.html"},"WrQWnCgQ8YywjndGXOzjJ":{"uri":"/melonJS/docs/melonjs/device/platform.html"},"x2NIwXwcaCLzsZHaRQM9L":{"uri":"/melonJS/docs/melonjs/device/platform.html#android"},"dMIZBAWXIgCEHv4kVKF-_":{"uri":"/melonJS/docs/melonjs/device/platform.html#android2"},"ZBKffYFBgOab5w_HE1R4J":{"uri":"/melonJS/docs/melonjs/device/platform.html#BlackBerry"},"1Yug7lrgNqZu0NDYbMx4U":{"uri":"/melonJS/docs/melonjs/device/platform.html#chromeOS"},"ZtCD9JHmetZYngBQYQxwY":{"uri":"/melonJS/docs/melonjs/device/platform.html#ejecta"},"BN1dMwhxg7TPuutMMvz4O":{"uri":"/melonJS/docs/melonjs/device/platform.html#iOS"},"Sye5-fUGNJSXnwqz3xAo7":{"uri":"/melonJS/docs/melonjs/device/platform.html#isMobile"},"N8hTXhHGNDfk8h3hxPRUP":{"uri":"/melonJS/docs/melonjs/device/platform.html#isWeixin"},"hI8kGOr_P0h4-6d48LchA":{"uri":"/melonJS/docs/melonjs/device/platform.html#Kindle"},"dshKq3j3kclo_P29lVAJ_":{"uri":"/melonJS/docs/melonjs/device/platform.html#linux"},"Drk1O-GVl8b87i4wzsPT9":{"uri":"/melonJS/docs/melonjs/device/platform.html#nodeJS"},"_q1aKS8d9BzJPhsfDC0z7":{"uri":"/melonJS/docs/melonjs/device/platform.html#ua"},"jiYwuUPIfHv0g19rGIaej":{"uri":"/melonJS/docs/melonjs/device/platform.html#wp"},"x-2GR0MEHj7I4-k-ySJfm":{"uri":"/melonJS/docs/melonjs/device.html#accelerationX"},"H3W8_a9xw8qVSyGOtjdDZ":{"uri":"/melonJS/docs/melonjs/device.html#accelerationY"},"ZNKPGP_ivtEYxt6wu6Idg":{"uri":"/melonJS/docs/melonjs/device.html#accelerationZ"},"MlAnD2OPChPa_35ng96c2":{"uri":"/melonJS/docs/melonjs/device.html#alpha"},"w_kr4mrYBNjdEP5cxr_og":{"uri":"/melonJS/docs/melonjs/device.html#autoFocus"},"WSoppfdCdubRmTISE4Dvt":{"uri":"/melonJS/docs/melonjs/device.html#beta"},"G4snGA3JnjvDfOVLhHg44":{"uri":"/melonJS/docs/melonjs/device.html#devicePixelRatio"},"64p6lhD-XYviOMjbwBHGy":{"uri":"/melonJS/docs/melonjs/device.html#gamma"},"1T2ICI1zRrsDPiqtZHvDt":{"uri":"/melonJS/docs/melonjs/device.html#hasAccelerometer"},"BOyRGAb-JOCz6lDyTSlKS":{"uri":"/melonJS/docs/melonjs/device.html#hasDeviceOrientation"},"FaC4V0gLvYjyQyBoNYhYh":{"uri":"/melonJS/docs/melonjs/device.html#hasFullscreenSupport"},"xV1bviftWPfROnciTfv7N":{"uri":"/melonJS/docs/melonjs/device.html#hasHTML5Audio"},"Gh1iAs-_QMJ1k8itQaNqP":{"uri":"/melonJS/docs/melonjs/device.html#hasPointerLockSupport"},"-p9WIBej6x3gWGXk9ML9z":{"uri":"/melonJS/docs/melonjs/device.html#hasVideo"},"pOillQotE8YTavCf0LPzd":{"uri":"/melonJS/docs/melonjs/device.html#hasWebAudio"},"JWb97Hn9JrdsvbyY4GL1-":{"uri":"/melonJS/docs/melonjs/device.html#isMobile"},"oUxdTdzmsUgQSBGpZyXro":{"uri":"/melonJS/docs/melonjs/device.html#language"},"XrewUR_s5iQADc9B3Eiwq":{"uri":"/melonJS/docs/melonjs/device.html#localStorage"},"3Xw68uaIpZYMJWE84eo4_":{"uri":"/melonJS/docs/melonjs/device.html#maxTouchPoints"},"b0Xpqn7zYjs-3QxYu1fsq":{"uri":"/melonJS/docs/melonjs/device.html#nativeBase64"},"Rl2bNh1STrvMgMEdXcTn0":{"uri":"/melonJS/docs/melonjs/device.html#offscreenCanvas"},"FWYugQ3ccYQANbJ0Hz5K4":{"uri":"/melonJS/docs/melonjs/device.html#pauseOnBlur"},"qZyWQxOmKoA-v4UrnMHMG":{"uri":"/melonJS/docs/melonjs/device.html#platform"},"FB1uddkYC5NnmwJETajdB":{"uri":"/melonJS/docs/melonjs/device.html#pointerEvent"},"whbrQQQUpjY4vghfYPOdG":{"uri":"/melonJS/docs/melonjs/device.html#resumeOnFocus"},"hArxuRWHCeObGZ3xfia0M":{"uri":"/melonJS/docs/melonjs/device.html#screenOrientation"},"YpQFMYGpmqEiCON3ckppO":{"uri":"/melonJS/docs/melonjs/device.html#sound"},"OdhKQPwxNB8i-c_BEu1Bj":{"uri":"/melonJS/docs/melonjs/device.html#stopOnBlur"},"EEo8cLz1GwJwe9XsFGtob":{"uri":"/melonJS/docs/melonjs/device.html#touch"},"EeVE6ahXVIPDsMSp9mDvm":{"uri":"/melonJS/docs/melonjs/device.html#touchEvent"},"GrOVaJFl4kiBdOJ975Asz":{"uri":"/melonJS/docs/melonjs/device.html#wheel"},"rGWYf0AuayalaD2M1vD9Z":{"uri":"/melonJS/docs/melonjs/device/enableSwipe.html"},"rjMCxaLC6A-4wOcqurrKP":{"uri":"/melonJS/docs/melonjs/device/exitFullscreen.html"},"pjTVXELzN_G4KLsyupLpC":{"uri":"/melonJS/docs/melonjs/device/focus.html"},"4g_e63cy0xcYmMqv809di":{"uri":"/melonJS/docs/melonjs/device/getElement.html"},"tgKTU4D2neLZfs86hjLpp":{"uri":"/melonJS/docs/melonjs/device/getElementBounds.html"},"KwVimHGt0bFNWP2WZMldJ":{"uri":"/melonJS/docs/melonjs/device/getParentBounds.html"},"wQWYM5zG81CQ_zZczxwp6":{"uri":"/melonJS/docs/melonjs/device/getParentElement.html"},"Knu0Z1oc6F79d98pk_Ovx":{"uri":"/melonJS/docs/melonjs/device/getScreenOrientation.html"},"RXpJ9FtrwxzmUs6CHqUcX":{"uri":"/melonJS/docs/melonjs/device/getStorage.html"},"6pvlB9aMnnhC2woet5rZA":{"uri":"/melonJS/docs/melonjs/device/isFullscreen.html"},"lDoJZaMX86opCYfDqL-rn":{"uri":"/melonJS/docs/melonjs/device/isLandscape.html"},"bVwntAZ7EMooKv-kcfpiF":{"uri":"/melonJS/docs/melonjs/device/isPortrait.html"},"hsQ3ycKBaNBm4wOr_cuST":{"uri":"/melonJS/docs/melonjs/device/isWebGLSupported.html"},"mhqdEl1nFN8-4knQ4MUWo":{"uri":"/melonJS/docs/melonjs/device/lockOrientation.html"},"GUXI0oHWPF_6kQ7tx1YW7":{"uri":"/melonJS/docs/melonjs/device/onReady.html"},"cRI8W_5-5y8DoO61TfZGY":{"uri":"/melonJS/docs/melonjs/device/requestFullscreen.html"},"jMnZU_bRAEM_exho8maR7":{"uri":"/melonJS/docs/melonjs/device/unlockOrientation.html"},"6Z3OQzUh_3TCaVkEjtkxh":{"uri":"/melonJS/docs/melonjs/device/unwatchAccelerometer.html"},"x8VF0lV4-6j4UP3H6ez4t":{"uri":"/melonJS/docs/melonjs/device/unwatchDeviceOrientation.html"},"3O-ZWiB1B5p87-SgDrUjw":{"uri":"/melonJS/docs/melonjs/device/vibrate.html"},"BOSILm0T412rH3_ycIoy-":{"uri":"/melonJS/docs/melonjs/device/watchAccelerometer.html"},"EA5HY_P-Ov_dMYvOD4HYj":{"uri":"/melonJS/docs/melonjs/device/watchDeviceOrientation.html"},"-VJwOGIJQCcS8QJVublNn":{"uri":"/melonJS/docs/melonjs/event.html"},"RkFw4tPC3BSmzZgQIUP_0":{"uri":"/melonJS/docs/melonjs/event.html#BLUR"},"tf2vBEEpOylQuDYzO0-IX":{"uri":"/melonJS/docs/melonjs/event.html#BOOT"},"tnm1qyEtwX10KZOI-I4uo":{"uri":"/melonJS/docs/melonjs/event.html#CANVAS_ONRESIZE"},"XefML6DkGPInQSH3gTzHB":{"uri":"/melonJS/docs/melonjs/event.html#DOM_READY"},"_jggVSVBis4EopllibDFY":{"uri":"/melonJS/docs/melonjs/event.html#DRAGEND"},"EhMzMaUQCniPPsGSa6gT_":{"uri":"/melonJS/docs/melonjs/event.html#DRAGSTART"},"08fj6F2sPTzblRS3-jVI4":{"uri":"/melonJS/docs/melonjs/event.html#FOCUS"},"S8uUpVPMP349SX3z56mmk":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_DRAW"},"QzHPe1x7nrVsFtpwPRvW2":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_UPDATE"},"FzkTaKYFRIh8hWCRjvfMb":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_DRAW"},"76GbDsQ8PqpCHBrqGu064":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_UPDATE"},"1GLKEewMyBvNB7jVtnbM0":{"uri":"/melonJS/docs/melonjs/event.html#GAME_INIT"},"lK4dmNEsolNUs4kYKNAqA":{"uri":"/melonJS/docs/melonjs/event.html#GAME_RESET"},"hpU8KDk-VPartI3cq2lyV":{"uri":"/melonJS/docs/melonjs/event.html#GAME_UPDATE"},"pX-LfFc0BAygnvBGiRJPk":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_CONNECTED"},"UFX2gysJKKVDAwbvOqeb4":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_DISCONNECTED"},"I4PvkVjxmg_tQsIhuL_FM":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_UPDATE"},"7BBb6yV2hs3xXrEHcxHKv":{"uri":"/melonJS/docs/melonjs/event.html#KEYDOWN"},"8RgkCQVeyS-g6b_xvvioy":{"uri":"/melonJS/docs/melonjs/event.html#KEYUP"},"vbPvAv_WIU-T9YaN886gx":{"uri":"/melonJS/docs/melonjs/event.html#LEVEL_LOADED"},"PT-vYlRrRRpuionrmrfc-":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_COMPLETE"},"TVExXU0sV7ZInRVcPhuXg":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_ERROR"},"QI-PMS0fFwJTohP1-zf41":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_PROGRESS"},"oCu4ZlMV3WAZOi8893jkf":{"uri":"/melonJS/docs/melonjs/event.html#ONCONTEXT_RESTORED"},"VuYymC9f2yddq54L-SRvG":{"uri":"/melonJS/docs/melonjs/event.html#POINTERLOCKCHANGE"},"Unm6J9bNUjk5sU-RrnJFv":{"uri":"/melonJS/docs/melonjs/event.html#POINTERMOVE"},"ca3IIHl8An_l75UszlXnw":{"uri":"/melonJS/docs/melonjs/event.html#STAGE_RESET"},"-kr7huXI7pKCOt2ORWuB7":{"uri":"/melonJS/docs/melonjs/event.html#STATE_CHANGE"},"x-yiyrQQODtX40KvoX8XD":{"uri":"/melonJS/docs/melonjs/event.html#STATE_PAUSE"},"23amkesSdW9FBVGXNZmKB":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESTART"},"1Yv4lseAAZLlA3Y77Q3EU":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESUME"},"U42F7p3MxgrMUb42veR0P":{"uri":"/melonJS/docs/melonjs/event.html#STATE_STOP"},"6nUcsNTjRezsz-FcmSbgB":{"uri":"/melonJS/docs/melonjs/event.html#TICK"},"MLgaBiSisoZlDZ7g2bI0I":{"uri":"/melonJS/docs/melonjs/event.html#VIDEO_INIT"},"CgRSFetubyhKA_MadWkeG":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONCHANGE"},"p0mKsAQtA7PGz7vRYzEEc":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONRESIZE"},"vBdeZVH81Lt0sNBrgZ-t5":{"uri":"/melonJS/docs/melonjs/event.html#WEBGL_ONCONTEXT_LOST"},"w4MpGRRwSM43-2iQNZYyx":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONORIENTATION_CHANGE"},"bAXHHFLhbDFajjx0Qr8z7":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONRESIZE"},"ns9Q93GdafevRkTHRcrdY":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONSCROLL"},"NDFyFnIV8gR2hLTvYIi89":{"uri":"/melonJS/docs/melonjs/event.html#WORLD_STEP"},"r16NQeuaoqioQSZ65iOHH":{"uri":"/melonJS/docs/melonjs/event/emit.html"},"S25YdkaGQ7-qiJHbaoLlz":{"uri":"/melonJS/docs/melonjs/event/off.html"},"az5dfGKjIhDMLgbTOGpCs":{"uri":"/melonJS/docs/melonjs/event/on.html"},"P33nHUy2_KfK4X7gdc9qD":{"uri":"/melonJS/docs/melonjs/event/once.html"},"dRsZ54ileFe0z2q-H9-1i":{"uri":"/melonJS/docs/melonjs/game.html"},"xSjj79JbvDyu0mnNTLL1H":{"uri":"/melonJS/docs/melonjs/input.html"},"ZJ5sAqelVVcowZzX_zT6m":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD.html"},"YXaLCDJXAd1j_z0SHLYEX":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/AXES.html"},"sgXOwcet9GNeMD1REGSh8":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/BUTTONS.html"},"xvvYSoLZAJY8K5dm035P0":{"uri":"/melonJS/docs/melonjs/input/KEY.html"},"FN8ITYZtEOb3rau6lmW3V":{"uri":"/melonJS/docs/melonjs/input/KEY.html#A"},"fwh5bRnh2cdjk9exf7022":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ADD"},"bZByKiRk3aMYpQDtJe9oq":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ALT"},"d8-9bmdA-4HEHjprkoNRQ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#B"},"kEcNh5Dk5AbeZB4Zu5VaR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#BACK_SLASH"},"wHpJU3lHH_uxcik0-D7Nf":{"uri":"/melonJS/docs/melonjs/input/KEY.html#C"},"ahTJJdCIKfkEhAp58glse":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CAPS_LOCK"},"8PLTMQWExKzonCGXBcNzn":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CLOSE_BRACKET"},"Mtv0yPZ6tl4Np8jWyXcI5":{"uri":"/melonJS/docs/melonjs/input/KEY.html#COMMA"},"zAkwOCEQwT51n_ykGuwa2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CTRL"},"KoeiPINAS2k3BSmFWBOuY":{"uri":"/melonJS/docs/melonjs/input/KEY.html#D"},"JR81RH0plqITIPP2XzXKK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DECIMAL"},"-5Clx-6nryKRYFmhnDIkS":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DELETE"},"fH-89EMbhePasK2kEQ41u":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DIVIDE"},"iSJjtvbElneSR6TXjkTev":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DOWN"},"HSLbMfmWoOVyYTKx7HXcg":{"uri":"/melonJS/docs/melonjs/input/KEY.html#E"},"qaKkJxv3JzLVyyIATrxLz":{"uri":"/melonJS/docs/melonjs/input/KEY.html#END"},"DqWgpP7JSKpeLit3WR0T5":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ENTER"},"pqcf4pKhlyypHMVDd3kdK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ESC"},"RsXc0-pZGfHaMvN3tkyot":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F"},"j4kveeUp6vb8qSocB2nXk":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F1"},"5Ptq4Aw8jPwb9lJMPCENi":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F10"},"T4BIl3XrAIN-E3wHhM4GM":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F11"},"vo-pmXruxon3ijBKjP-p4":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F12"},"YZ2WYCRNIXLzvbRc-1X_x":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F2"},"9Z4h1Poj9jgGJCAwRqVzH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F3"},"iQnlj3a5bUaGAIoxmCbAN":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F4"},"By-AscH8hXCHdTyTyF3eY":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F5"},"TCbSIs3PRUffx6YXsDyXE":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F6"},"v7ZAQ9HXkqvecPVdvoeuf":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F7"},"eTuv8-dhqnEeToivfuFKe":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F8"},"UCQ47ybTKLLjnEUol8Ixp":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F9"},"hbB5yhjEdP34bV7vFN2cH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#FORWAND_SLASH"},"5BY0UCV2CIdeqkwPAK87n":{"uri":"/melonJS/docs/melonjs/input/KEY.html#G"},"Ctznyz7JYIW6CHPHt-TjZ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#GRAVE_ACCENT"},"YxFkYr-sAQrShTOsL8W8r":{"uri":"/melonJS/docs/melonjs/input/KEY.html#H"},"anyb6euwTtJSginvtNVEw":{"uri":"/melonJS/docs/melonjs/input/KEY.html#HOME"},"CelZugpD8fZU_rpwF5akk":{"uri":"/melonJS/docs/melonjs/input/KEY.html#I"},"DzZuzHdkjukpBnqxMUcEB":{"uri":"/melonJS/docs/melonjs/input/KEY.html#INSERT"},"Y1OO64MY9llIfY49qybU_":{"uri":"/melonJS/docs/melonjs/input/KEY.html#J"},"o-Y4FT497-mMmi8GefV-C":{"uri":"/melonJS/docs/melonjs/input/KEY.html#K"},"NoLJbm8hr5gqHk-C8ouhf":{"uri":"/melonJS/docs/melonjs/input/KEY.html#L"},"AlICsdFYyLxWFyxhyV8aI":{"uri":"/melonJS/docs/melonjs/input/KEY.html#LEFT"},"wz5TJS19eYU00Y1bgdujA":{"uri":"/melonJS/docs/melonjs/input/KEY.html#M"},"H6PtL8lGeYbtEBsC-X488":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MINUS"},"fnGImCwcxUxv6B0_fzSWp":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MULTIPLY"},"V_DtHlRhQLvuKlBmxXPB3":{"uri":"/melonJS/docs/melonjs/input/KEY.html#N"},"dtEQODbN632BQNTTMocVg":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM_LOCK"},"WnfHEmKU259cI9O6BkB5Z":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM0"},"3p9SCXLy7rZ-4-uOj13Aw":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM1"},"wwoQwZhWy4HTyP-G9VR63":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM2"},"bDFcIVUxdVqRa6Of_qzNx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM3"},"_z3H6cj58zpuyiNhvW7Yi":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM4"},"7BIlNDD5s2rz0WUPVu1u4":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM5"},"ERJt2Vve2e_fEjdYev2WW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM6"},"FXLSs5Q2aJFNAXFcGO7kn":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM7"},"_T7CiVZ4aH4-pIMB5blk2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM8"},"J7iOsAuOVeilSE06LVqzY":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM9"},"zvSzUdphKqfFAKhsBCMkd":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD0"},"cRDFI8hjUwEpRTq2TFyHf":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD1"},"bWa5l3s-kXGt2D5JyQLLD":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD2"},"XdUEUNVBfSaO42v1KvnqB":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD3"},"BY7zuu5gKdqpk5q7y06UM":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD4"},"4osXXUPX_9xq5c8_dvpQO":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD5"},"aCuWRlp8OzuC0YyDMGHvK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD6"},"yrvceBHM_lE3rhuKrHiV3":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD7"},"ovq0NX4Z1SWxDYJZrB0k6":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD8"},"ZPOw1gKNV-sFvaVBI__Ix":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD9"},"ztjo00WByxPZT3fVak3oJ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#O"},"8BOv6JldpQndk69oqtWVX":{"uri":"/melonJS/docs/melonjs/input/KEY.html#OPEN_BRACKET"},"gkeiA00cMBlTSAG9UKSkS":{"uri":"/melonJS/docs/melonjs/input/KEY.html#P"},"GkiRv7-wTTEAaDbZpPueH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_DOWN"},"ReMZ0zKgwUiNy6pI6ecW-":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_UP"},"u3lqPSllRdGajuqhppdJE":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAUSE"},"m6ALN8GKcJooTToxXo-TL":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PERIOD"},"hyiVTJ2TacaLP33FLdpdV":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PLUS"},"UnOFnkPtNVnW1af2onfUx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PRINT_SCREEN"},"4N30c14Kpu9xsxhDuu2DS":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Q"},"az_S4g2R9sCgAJmtpXChz":{"uri":"/melonJS/docs/melonjs/input/KEY.html#R"},"fMH3ffs2vNZbU7rtEhU4Q":{"uri":"/melonJS/docs/melonjs/input/KEY.html#RIGHT"},"6xiBnHAVzVy13VLFMRfIg":{"uri":"/melonJS/docs/melonjs/input/KEY.html#S"},"7ladjbyD4DGpH5maRiO55":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SCROLL_LOCK"},"8wuVUE0mEJBNHW3m6MBM3":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SEMICOLON"},"pBnRan1Und8KbApK0Lv56":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SHIFT"},"Z6nhfGQeX5grv0l2lxmgD":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SINGLE_QUOTE"},"dB4ZOaPE0xzarOe_HOEzN":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SPACE"},"4RN_pYYJG6UwccFJRJCLk":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SUBSTRACT"},"BGmFfYr1t4blhFfvf2Dom":{"uri":"/melonJS/docs/melonjs/input/KEY.html#T"},"4Wwpy_TYOxztT-0hhPOcp":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TAB"},"4Btlb67zoGaDJajiZsnPl":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TILDE"},"Yk3GtwuI9O9_W7MlUaw1R":{"uri":"/melonJS/docs/melonjs/input/KEY.html#U"},"cv4dS2ZRJUi4L8D7MHuei":{"uri":"/melonJS/docs/melonjs/input/KEY.html#UP"},"wFK14W9BiE5zIqcKAmBLn":{"uri":"/melonJS/docs/melonjs/input/KEY.html#V"},"yxENAnkL7olh2txcecs3X":{"uri":"/melonJS/docs/melonjs/input/KEY.html#W"},"PxMtZgarCgzZmYFhqjMxM":{"uri":"/melonJS/docs/melonjs/input/KEY.html#WINDOW_KEY"},"_xC85o7rLMxe_--QmjfJ9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#X"},"xBrN8aQ-TVMjYRGSQjhQV":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Y"},"9pv66Ze2U0V5mwuD_65sj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Z"},"vKZqvWhleYV69uXcA-BHX":{"uri":"/melonJS/docs/melonjs/input.html#keyBoardEventTarget"},"-0sjJcIozIWegc9tF9vv2":{"uri":"/melonJS/docs/melonjs/input.html#locked"},"rS4tLCu_xKXeWfeZUKYaZ":{"uri":"/melonJS/docs/melonjs/input.html#pointer"},"rPxZycbvp7Wv_dEIH0T8O":{"uri":"/melonJS/docs/melonjs/input.html#pointerEventTarget"},"nqAIpulQh9TJQDLyFzWWy":{"uri":"/melonJS/docs/melonjs/input.html#preventDefault"},"T_WdPZIUaI7OjI6R_l7LU":{"uri":"/melonJS/docs/melonjs/input.html#setGamepadMapping"},"YyX_KVnHZnjxMdotR6IUy":{"uri":"/melonJS/docs/melonjs/input.html#throttlingInterval"},"0YDJ9Ge8kLMYc5_UN4YSd":{"uri":"/melonJS/docs/melonjs/input/bindGamepad.html"},"_eHk4UrWT9F9THBB2qRr8":{"uri":"/melonJS/docs/melonjs/input/bindKey.html"},"MnFNlm2y-FL8S8-2wQKB0":{"uri":"/melonJS/docs/melonjs/input/bindPointer.html"},"DHWYORwv0jnP1nbNkCrGr":{"uri":"/melonJS/docs/melonjs/input/exitPointerLock.html"},"WXiw_Fbca6IOBE1NXZhkp":{"uri":"/melonJS/docs/melonjs/input/getBindingKey.html"},"efoJLTaMxbMhzEbFvJ1-y":{"uri":"/melonJS/docs/melonjs/input/globalToLocal.html"},"6UhDjMG09hKSs4GOE6udq":{"uri":"/melonJS/docs/melonjs/input/hasActiveEvents.html"},"OV4Fzvkhc95IuoqY5zK_6":{"uri":"/melonJS/docs/melonjs/input/hasRegisteredEvents.html"},"tjJ33ZLu2QRAkZvNbyQJT":{"uri":"/melonJS/docs/melonjs/input/isKeyPressed.html"},"ZFkV8PpdRa4U5MetTLxlH":{"uri":"/melonJS/docs/melonjs/input/keyStatus.html"},"b1Y8_-3AjrvnV4Veu4Jl3":{"uri":"/melonJS/docs/melonjs/input/registerPointerEvent.html"},"OLSB9hgRLJDJltzNIR1db":{"uri":"/melonJS/docs/melonjs/input/releaseAllPointerEvents.html"},"SDE1hGgcKGV5fsHx9Eceb":{"uri":"/melonJS/docs/melonjs/input/releasePointerEvent.html"},"rQ5iMWgVo8zKHUTIh4FWs":{"uri":"/melonJS/docs/melonjs/input/requestPointerLock.html"},"mLXR9tLOb67v7kc0FY25z":{"uri":"/melonJS/docs/melonjs/input/setGamepadDeadzone.html"},"w4DizTvnJUkZsC8Xz38k3":{"uri":"/melonJS/docs/melonjs/input/setTouchAction.html"},"aL2adq1gyrr20V8mthrrr":{"uri":"/melonJS/docs/melonjs/input/triggerKeyEvent.html"},"kE6IKUdK8MLRbNL-H-aCH":{"uri":"/melonJS/docs/melonjs/input/unbindGamepad.html"},"woZ7cfUmalqacIcLMnLY4":{"uri":"/melonJS/docs/melonjs/input/unbindKey.html"},"dmMPf382tLeJ93yld905C":{"uri":"/melonJS/docs/melonjs/input/unbindPointer.html"},"ts7nryyHZIqdUw9ioE3v1":{"uri":"/melonJS/docs/melonjs/input/unlockKey.html"},"bIFxaEYYa_T4JSURqzsV0":{"uri":"/melonJS/docs/melonjs/level.html"},"x4jG4KDoBg6EaYqwLanlx":{"uri":"/melonJS/docs/melonjs/level.html#add"},"GX11bJx4sMJWLz4sHTr7L":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevel"},"PwuUyw0tQGnwc-M6ThvPY":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevelId"},"Im0Gk7CwTs7zQ-R_zT2qK":{"uri":"/melonJS/docs/melonjs/level.html#levelCount"},"tYO5-wqdiiF9HTxMl08nl":{"uri":"/melonJS/docs/melonjs/level.html#load"},"k8aaikoice2X_ZlaJfhdi":{"uri":"/melonJS/docs/melonjs/level.html#next"},"MIBNtQwqnZcS0QpUlvUZH":{"uri":"/melonJS/docs/melonjs/level.html#previous"},"ilq4a53Sc6znyaTQ7d4fO":{"uri":"/melonJS/docs/melonjs/level.html#reload"},"MpyRkKExSHO4WEsHJaYx4":{"uri":"/melonJS/docs/melonjs/loader.html"},"uVhCEbzXkX9Xmml_vrISo":{"uri":"/melonJS/docs/melonjs/loader/Asset.html"},"4g3LBMPDhjF1mFUcl6Osv":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#autoplay"},"VJzGPNyAVkYYhuuLnOpvX":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#data"},"XuVDYPq4DtkdP8QerqOpt":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#loop"},"IDpzaJwqwjnjZcuePGJIK":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#name"},"smcHsZe1ar_bL-XRoJP7B":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#src"},"ouVkKOTB0ELxz9SVVxooJ":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#stream"},"vMmibaSgi_vTU4xR-L9WW":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#type"},"JG7H4TOdkjRNiAM-tlNm6":{"uri":"/melonJS/docs/melonjs/loader.html#crossOrigin"},"b0mghflpacivJClAkH1oW":{"uri":"/melonJS/docs/melonjs/loader.html#onError"},"_8OyeMa8MMsXlfP3wZ1-l":{"uri":"/melonJS/docs/melonjs/loader.html#onload"},"ovFCTIfjf3te2eLiuKHPb":{"uri":"/melonJS/docs/melonjs/loader.html#onProgress"},"XJkY4gA2dzYrfE0BzLLam":{"uri":"/melonJS/docs/melonjs/loader.html#withCredentials"},"kTb8wjFPWoI2NAHjSMTZH":{"uri":"/melonJS/docs/melonjs/loader/getBinary.html"},"sItLexmvUmI3rOI7TQwGR":{"uri":"/melonJS/docs/melonjs/loader/getImage.html"},"l679hKDvlYZVDSFnfQ4Tr":{"uri":"/melonJS/docs/melonjs/loader/getJSON.html"},"uk7Byc8200RB_rfmt546T":{"uri":"/melonJS/docs/melonjs/loader/getTMX.html"},"84i3I7eQTKZVIQ9TcSCi-":{"uri":"/melonJS/docs/melonjs/loader/getVideo.html"},"UGDEyeapFgJRUdoc_Tf1U":{"uri":"/melonJS/docs/melonjs/loader/load.html"},"QNqc5_GcZEMVJUFWCmWEE":{"uri":"/melonJS/docs/melonjs/loader/preload.html"},"dzaGqqqFV3qYSBsYF02Ct":{"uri":"/melonJS/docs/melonjs/loader/reload.html"},"SavyoYI5C5F2mySzS9HhP":{"uri":"/melonJS/docs/melonjs/loader/setBaseURL.html"},"Dkx65ww2QYjfnOcXK8UJI":{"uri":"/melonJS/docs/melonjs/loader/setParser.html"},"PRCezJSThskSowrfxUGIR":{"uri":"/melonJS/docs/melonjs/loader/unload.html"},"eMf1c_691uqX-TWv2QYvp":{"uri":"/melonJS/docs/melonjs/loader/unloadAll.html"},"o8UQl8hht_NLwJWoOKyRz":{"uri":"/melonJS/docs/melonjs/Math.html"},"s0vciO-BAQoLXYpdgpAwo":{"uri":"/melonJS/docs/melonjs/Math.html#DEG_TO_RAD"},"Ga147w15rxZzC8g2dLTsE":{"uri":"/melonJS/docs/melonjs/Math.html#EPSILON"},"zRlFmd8RJOzOM803mGf_P":{"uri":"/melonJS/docs/melonjs/Math.html#ETA"},"woM7XhyKd8-cuM97ii2T2":{"uri":"/melonJS/docs/melonjs/Math.html#RAD_TO_DEG"},"VMdkz0qePxC0sA3Hxh193":{"uri":"/melonJS/docs/melonjs/Math.html#TAU"},"GYsg9htir7Kd4PCirD_n5":{"uri":"/melonJS/docs/melonjs/Math/clamp.html"},"0TfanRfwGK9HhxIk7MSVP":{"uri":"/melonJS/docs/melonjs/Math/degToRad.html"},"ZFL69QEgmI1YISYbDGRCI":{"uri":"/melonJS/docs/melonjs/Math/isPowerOfTwo.html"},"fsuRFwGB5IPvDAJ6_x2Fv":{"uri":"/melonJS/docs/melonjs/Math/nextPowerOfTwo.html"},"bsXEfC_h6ehKeXK64kjGl":{"uri":"/melonJS/docs/melonjs/Math/radToDeg.html"},"hrGFKLqrsvMh6M7EVg094":{"uri":"/melonJS/docs/melonjs/Math/random.html"},"wpALHu9w8BOlBOhOlLQIT":{"uri":"/melonJS/docs/melonjs/Math/randomFloat.html"},"wPVxsDSWKyxB6FcUMxidI":{"uri":"/melonJS/docs/melonjs/Math/round.html"},"YqLK-VSq-yBaaoA7mSAFN":{"uri":"/melonJS/docs/melonjs/Math/toBeCloseTo.html"},"AMtqnbti1cH-EV9NOqd3B":{"uri":"/melonJS/docs/melonjs/Math/weightedRandom.html"},"eWpdM0DrQ6fGXdmmhJ3He":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html"},"OQMH9NFRI7O1IBcGZIfMb":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angle"},"AVXr3lYpxURERxL787z1u":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angleVariation"},"Cd8-ZdTYTErrzqkBqH9zK":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#blendMode"},"fMkhbI8-sJTtRSoqn1Z5s":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#duration"},"Qs98PHEFg1uZDa8Ccvmc0":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#floating"},"Kxn1FTJIz0GQefM9VKVrl":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#followTrajectory"},"u6VHAR0fvgVGDLb9GIM9U":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#framesToSkip"},"Ciq_NVeX-HL9USagK8gLY":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#frequency"},"t_H1dnbA7gspZ6GxmGzZ7":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#gravity"},"-NrFwCuyg4y9D0kBBJOG8":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#height"},"NfdlKRRnuYSbnIgCkwcGU":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#image"},"wOs8vDvgxGy8hL4KJN4eZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxEndScale"},"enB59lNcGZjwCiaIKJW2N":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxLife"},"Vql0lsEyjAfJVCZEodHX8":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxParticles"},"6U92ft82V3AK6X4-Yg-8F":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxRotation"},"z1rnaHKSWoQ1Zq_iMKr-H":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxStartScale"},"5F8M6hIJEbvzjNVZHSaUa":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minEndScale"},"7HOhyeWSCts2HqbC1X6Mn":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minLife"},"kKyXFmoBD6dUdfRZu-Jjw":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minRotation"},"XCSeN5nuxHciDByfYJPvt":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minStartScale"},"_afoYzW-bGbbF-emrWuW2":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#onlyInViewport"},"yKDFgjmKxDjRkWbv581xq":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speed"},"aHKs2t6QHslktq8tJIJ9L":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speedVariation"},"Y6morlrM0krPlBZhSkIR1":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureAdditive"},"AOsh7-z2ZKVrW9IyiQLvL":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureSize"},"hzT_tAbsv6Ymyo9Pq4pGA":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#tint"},"hvM2xaEnl3zMlb_XmbMQy":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#totalParticles"},"a3gSxSGZr25hjsVNcHQ55":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#width"},"RsWAgD74FCvIdwS6ZJZeq":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#wind"},"JNIZvJxtKuItuOCWVplQw":{"uri":"/melonJS/docs/melonjs/plugin.html"},"5AZXzwRTILL_uAWinDu6f":{"uri":"/melonJS/docs/melonjs/plugin/Base.html"},"JbF-RXd-2lcotaMSYCHyf":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#app"},"g7g2kxqFXTYVbCVqqD_95":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#version"},"bxvMTDlRjglR0wwYa1js5":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html"},"O8QYiZgbJS8Gfq2-2IJrF":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#app"},"EJnT0dntjazGK0_62gavM":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#version"},"GWzlqZS-GttWPSfJNZi9M":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#constructor"},"7r7sm93Vd3Cbhsu0eeX91":{"uri":"/melonJS/docs/melonjs/plugin.html#cache"},"Tc32n5F3jzT1EneGV7BLT":{"uri":"/melonJS/docs/melonjs/plugin/get.html"},"8OeEEq4GM2TiOYmPDVR60":{"uri":"/melonJS/docs/melonjs/plugin/patch.html"},"fbIavmlUpqilNmKOy4chn":{"uri":"/melonJS/docs/melonjs/plugin/register.html"},"EajM2dztQ7n4ncEoicTZb":{"uri":"/melonJS/docs/melonjs/pool.html"},"H-5iTk47qSwG3MLzXizxc":{"uri":"/melonJS/docs/melonjs/save.html"},"SLk8v7-lmglcbVO0ocerh":{"uri":"/melonJS/docs/melonjs/save.html#add"},"Vfai5BfSxLH68ZLp3HRC-":{"uri":"/melonJS/docs/melonjs/save.html#remove"},"88LAp3sHL-hN0eKn0x-Pu":{"uri":"/melonJS/docs/melonjs/state.html"},"qTsWCh3TfTI_prt96am5G":{"uri":"/melonJS/docs/melonjs/state.html#CREDITS"},"OhhiaHJhzeSp9rSkWznDL":{"uri":"/melonJS/docs/melonjs/state.html#DEFAULT"},"HwjygjJNJXj3KJK-d6xIV":{"uri":"/melonJS/docs/melonjs/state.html#GAME_END"},"PqwY2ll2kgQgWvxBO2esJ":{"uri":"/melonJS/docs/melonjs/state.html#GAMEOVER"},"PUwDBvFmkThX-eHCQxBHI":{"uri":"/melonJS/docs/melonjs/state.html#LOADING"},"RQbgo7siJeGAeC1LkmvIp":{"uri":"/melonJS/docs/melonjs/state.html#MENU"},"S6UcR4VSPiM3O3AGBNmuQ":{"uri":"/melonJS/docs/melonjs/state.html#PLAY"},"wDtJzL5Ev2xpMyTbUM0Kz":{"uri":"/melonJS/docs/melonjs/state.html#READY"},"H9bX759iCPZq8Oexxfvz2":{"uri":"/melonJS/docs/melonjs/state.html#SCORE"},"WjJkpAqBnHqm4h-HGlzWH":{"uri":"/melonJS/docs/melonjs/state.html#SETTINGS"},"SmPC9VIcIare4Peq26yAH":{"uri":"/melonJS/docs/melonjs/state.html#USER"},"eKZbk-bFTyDuZ15fjXpbU":{"uri":"/melonJS/docs/melonjs/state.html#change"},"D22Wkd4iiOXpXgKYFD42H":{"uri":"/melonJS/docs/melonjs/state.html#current"},"IJzd31OqgVwT_Ibwf2y6O":{"uri":"/melonJS/docs/melonjs/state.html#isCurrent"},"vjlta5TMJy0EaiwAabPWV":{"uri":"/melonJS/docs/melonjs/state.html#isPaused"},"rxtY7WRBZe9gJkPYGaZHm":{"uri":"/melonJS/docs/melonjs/state.html#isRunning"},"zHiQ2QD0A9SdLO8y4W6JZ":{"uri":"/melonJS/docs/melonjs/state.html#pause"},"Z_xQd10KGNu2pw2i7H1Gv":{"uri":"/melonJS/docs/melonjs/state.html#restart"},"uMd-38JvBJTmOMMXT-cb4":{"uri":"/melonJS/docs/melonjs/state.html#resume"},"_v--Kg3rwfbyBJ669Jdvi":{"uri":"/melonJS/docs/melonjs/state.html#set"},"mvcz68NilZmr205jdddAA":{"uri":"/melonJS/docs/melonjs/state.html#set_"},"NIo0QJ31SQacmtPQrOvRw":{"uri":"/melonJS/docs/melonjs/state.html#setTransition"},"diTUjP2vu_ZXGiZL9Pebg":{"uri":"/melonJS/docs/melonjs/state.html#stop"},"WSEiTA6CJ9_twf26e8loU":{"uri":"/melonJS/docs/melonjs/state.html#transition"},"BSXXNlfvd0oyXKyUUQ3Px":{"uri":"/melonJS/docs/melonjs/timer.html"},"zg1KeseAEJm8Tk1pk8FGs":{"uri":"/melonJS/docs/melonjs/TMXUtils.html"},"m_hjhDAqvSGbi2e2RvZNA":{"uri":"/melonJS/docs/melonjs/TMXUtils/applyTMXProperties.html"},"jMSrceAA9Ixk2K58PoSo3":{"uri":"/melonJS/docs/melonjs/TMXUtils/decode.html"},"NmMZGc6D3gRvO_KTm7w0I":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeBase64AsArray.html"},"RJsRXtjiumpFUMEW9RwTk":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeCSV.html"},"gM24-oKO1ggLMwznJJuPO":{"uri":"/melonJS/docs/melonjs/TMXUtils/decompress.html"},"WexIdz6pKs94cPsUDBfqO":{"uri":"/melonJS/docs/melonjs/TMXUtils/parse.html"},"hPu9j5cExcYv-qM21_itg":{"uri":"/melonJS/docs/melonjs/TMXUtils/setInflateFunction.html"},"5K9xz1fD0OJO4SR-9F8wO":{"uri":"/melonJS/docs/melonjs/utils.html"},"QjuNcUXmKX2Ce3PKmF4sq":{"uri":"/melonJS/docs/melonjs/utils/agent.html"},"osCz0RdafTrhebUL4mGT5":{"uri":"/melonJS/docs/melonjs/utils/agent/prefixed.html"},"qzzvbQ6W5w7P4_k2Z8KTH":{"uri":"/melonJS/docs/melonjs/utils/agent/setPrefixed.html"},"9XaNvyP6LHqgTRcxAVdoY":{"uri":"/melonJS/docs/melonjs/utils/array.html"},"sr-hsF52N0GWidAAWKUp7":{"uri":"/melonJS/docs/melonjs/utils/array/random.html"},"gaS30a6lDYDgl8MvRr7uW":{"uri":"/melonJS/docs/melonjs/utils/array/remove.html"},"A4RuYMgKi5U5B0Nm7L3Oq":{"uri":"/melonJS/docs/melonjs/utils/array/weightedRandom.html"},"eWitSCqQFIglpD5SzbSnZ":{"uri":"/melonJS/docs/melonjs/utils/file.html"},"5_oLPC9Fjv0Xcga4vsqs_":{"uri":"/melonJS/docs/melonjs/utils/file/getBasename.html"},"S62p1r5RA-QBU-qXqBKan":{"uri":"/melonJS/docs/melonjs/utils/file/getExtension.html"},"YMi0zSkxqkN1fEvZ8Q8Bh":{"uri":"/melonJS/docs/melonjs/utils/file/getPath.html"},"51WyFUF2Za444dTdBN6KK":{"uri":"/melonJS/docs/melonjs/utils/function.html"},"aGQ_Nm-GqXJzin2hOCnTz":{"uri":"/melonJS/docs/melonjs/utils/function/defer.html"},"1wWBYGPQ2iLsFPGgwpnrD":{"uri":"/melonJS/docs/melonjs/utils/function/throttle.html"},"_r36YYZpBlsSi_7U3UMNY":{"uri":"/melonJS/docs/melonjs/utils/string.html"},"8Gz01KfMJY-xPsgiG_EYC":{"uri":"/melonJS/docs/melonjs/utils/string/capitalize.html"},"As0kHb7jOPZRo1U151hcX":{"uri":"/melonJS/docs/melonjs/utils/string/isBoolean.html"},"MDGhq61SgpOb7mshiQv62":{"uri":"/melonJS/docs/melonjs/utils/string/isDataUrl.html"},"xQWOtaRPD11O14wYurv4Y":{"uri":"/melonJS/docs/melonjs/utils/string/isNumeric.html"},"AMWkrmbMAvzXZ_H9zX6EU":{"uri":"/melonJS/docs/melonjs/utils/string/toHex.html"},"9I-xYfxN1UXuJ67SNCWUw":{"uri":"/melonJS/docs/melonjs/utils/checkVersion.html"},"9wRRXH72oa1AtP1UHaQNZ":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html"},"NN6HDfPJp5NgpJjSk5obB":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debug"},"mvxISj-bwMOmdJpNWPfWH":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debugToggleKey"},"LxlAqjV2Ru5Vn5lcYlK9D":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#hitbox"},"2ik-RCvE_Ae-qOyZQmI93":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#quadtree"},"m6YZNfPK7zAiuByJF9lRs":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#velocity"},"tEKzlDwBHjJWLP97QLZej":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#webgl"},"dmEcQpI3FhEFfpN8QT7NM":{"uri":"/melonJS/docs/melonjs/video.html"},"tyciq6daXWYmzPsRuqJKj":{"uri":"/melonJS/docs/melonjs/video.html#renderer"},"zX-x8RZ1E4UMiBluFDfQS":{"uri":"/melonJS/docs/melonjs/video/createCanvas.html"},"Nb-S4osRkSmSdzjC47Eog":{"uri":"/melonJS/docs/melonjs/video/getParent.html"},"o2s5GYV-HRkrjL7USzpgq":{"uri":"/melonJS/docs/melonjs/video/init.html"},"cZ2EzSsRNL-QWGPZXRqnB":{"uri":"/melonJS/docs/melonjs/Application.html"},"ou7AMXtuRimXy-cEGPjRc":{"uri":"/melonJS/docs/melonjs/Application/Settings.html"},"Ko41KttTaov9nGZf67TkM":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#antiAlias"},"EXneXB803OwmqTxXpaS84":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#canvas"},"m9e58JECEEX7eBCJDhCgY":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#consoleHeader"},"QBv4NAZMby_Apstzqxl3o":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#depthTest"},"qGP6etSkN7kbAD-6mrQgI":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#parent"},"9whgP2YdYXBkIEo6w6Obn":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#powerPreference"},"22rYub4UI-5s4TxVM5MRv":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#preferWebGL1"},"PwBUURh2Rr9apanqR6g22":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#renderer"},"vmKfi1vxx7mxux4DnW2oT":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scale"},"7XqXxm9p6SQtxfNcnIcTr":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleMethod"},"ytofo0CEmTTlA2lsbRbEm":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleTarget"},"YXMY6wz-KSMli630r228D":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#transparent"},"jzkX_HKZLZ1CDIEyzhiGB":{"uri":"/melonJS/docs/melonjs/Application.html#isInitialized"},"g3pglv-L3RMIdIFjq-eMO":{"uri":"/melonJS/docs/melonjs/Application.html#lastUpdate"},"4ev9fys6r8OmshhvRG_2i":{"uri":"/melonJS/docs/melonjs/Application.html#mergeGroup"},"dyC_hFVXbfMG5HxkcES45":{"uri":"/melonJS/docs/melonjs/Application.html#parentElement"},"HC7Vs48TbRmRXVCCzSFG7":{"uri":"/melonJS/docs/melonjs/Application.html#pauseOnBlur"},"U00rzGdbzxr8WdtMcS3lw":{"uri":"/melonJS/docs/melonjs/Application.html#renderer"},"LtxFOZJ47wbCtN-5DyRLL":{"uri":"/melonJS/docs/melonjs/Application.html#resumeOnFocus"},"de0mAdwUIT6Hl4fya_8mf":{"uri":"/melonJS/docs/melonjs/Application.html#settings"},"3Kd_N5aFbBgIzPQZTX9zc":{"uri":"/melonJS/docs/melonjs/Application.html#sortOn"},"c5HMVUEUHJe03R1Vu3XG8":{"uri":"/melonJS/docs/melonjs/Application.html#stopOnBlur"},"K0prRtBZuOFsiyGsCqsR7":{"uri":"/melonJS/docs/melonjs/Application.html#viewport"},"L0j_AFmOW5F1v314dQUv9":{"uri":"/melonJS/docs/melonjs/Application.html#world"},"MJd6MHo8sa3t62JFb-Fw7":{"uri":"/melonJS/docs/melonjs/Application.html#constructor"},"rzNvVlLYktOCG9ku61S0D":{"uri":"/melonJS/docs/melonjs/Application.html#draw"},"iL2YLbj_nW9eanXGwVV7t":{"uri":"/melonJS/docs/melonjs/Application.html#getParentElement"},"A0MryoV85EtdTK18kfrfq":{"uri":"/melonJS/docs/melonjs/Application.html#init"},"MbvXa2jfIZRfkdkR1PNIV":{"uri":"/melonJS/docs/melonjs/Application.html#onLevelLoaded"},"XlZgZVa1xt-TtYGcQspr5":{"uri":"/melonJS/docs/melonjs/Application.html#repaint"},"xi1nifBwyI7ETOJFIWUeM":{"uri":"/melonJS/docs/melonjs/Application.html#reset"},"SelmxlmHqG6v3CFUWf7Lq":{"uri":"/melonJS/docs/melonjs/Application.html#update"},"cVX5U-2c9XguyPVGFH8Q2":{"uri":"/melonJS/docs/melonjs/Application.html#updateFrameRate"},"m8Yhy0ABF6W3zXRYhXVkY":{"uri":"/melonJS/docs/melonjs/BitmapText.html"},"tYWZSfWHnCpnMUcF2YfHo":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alpha"},"abk6jZdJcSh5dxkc8NKOZ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alwaysUpdate"},"KcnXhDNMRRQo3g0qmEmpb":{"uri":"/melonJS/docs/melonjs/BitmapText.html#ancestor"},"u1JR4fcd69JyOq8mHML93":{"uri":"/melonJS/docs/melonjs/BitmapText.html#anchorPoint"},"0kv5TFA94hx-vEO8vhFAe":{"uri":"/melonJS/docs/melonjs/BitmapText.html#autoTransform"},"LTkOh4tVZw9PzHaHtDYze":{"uri":"/melonJS/docs/melonjs/BitmapText.html#blendMode"},"CT32DNc5jFPdHPJXlscq1":{"uri":"/melonJS/docs/melonjs/BitmapText.html#body"},"d73i7HC_UYPHFHi8adfFX":{"uri":"/melonJS/docs/melonjs/BitmapText.html#bottom"},"ExcdD-XYkiWzrq5MHzxTQ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerX"},"ixYw-QF0qq3haNMeuPHzY":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerY"},"KdDhPZtttLeNt7KqvEApB":{"uri":"/melonJS/docs/melonjs/BitmapText.html#currentTransform"},"etBKpjDdzQujgkGOCtyaT":{"uri":"/melonJS/docs/melonjs/BitmapText.html#depth"},"MZQPfxUdGtPq_i7AYdE8b":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fillStyle"},"v1uW5r_feId6B0YQI3rYS":{"uri":"/melonJS/docs/melonjs/BitmapText.html#floating"},"n6OgQ-OEXs3FduvgdzRap":{"uri":"/melonJS/docs/melonjs/BitmapText.html#GUID"},"wuYw_yd8OPYoDLUE5sZN9":{"uri":"/melonJS/docs/melonjs/BitmapText.html#height"},"28o7HJHmHxlG_O0BGoPAz":{"uri":"/melonJS/docs/melonjs/BitmapText.html#inViewport"},"zjm5sfIO-9wPR4fHL36Nb":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isDirty"},"NtYpyzYaTH3p-00tU6GKF":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedX"},"M-znKYKMwn4ybRWvRVDCX":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedY"},"WPps1ZuBIX1olURiwkruO":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFloating"},"Igr35ewzCyIPM6wBatiKO":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isKinematic"},"--BZFId_ucDaiRAa9nZUK":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isPersistent"},"C2WNt8iZ_Cm5AFBqr0IZ8":{"uri":"/melonJS/docs/melonjs/BitmapText.html#left"},"1xWTBxb8bnPIz4JSvF2-E":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lineHeight"},"3gHNLiRQQUM8QjalfNExN":{"uri":"/melonJS/docs/melonjs/BitmapText.html#mask"},"f2kBNXMEX1uBr3HIk6Mrj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#name"},"0nouidFHpPyGG4FKdiCQ2":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onVisibilityChange"},"4kGSoCQN0SA5ciR6gbzuv":{"uri":"/melonJS/docs/melonjs/BitmapText.html#parentApp"},"rYrYflF6o8R9glD7uj2rs":{"uri":"/melonJS/docs/melonjs/BitmapText.html#points"},"dgoIi2KfIR3T8JdUZ44SE":{"uri":"/melonJS/docs/melonjs/BitmapText.html#pos"},"QcGvG-m0xpaVjhMZ0s5zN":{"uri":"/melonJS/docs/melonjs/BitmapText.html#right"},"pjRSMVrDYCPOH3tbpaJ-2":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shader"},"847X24cPsek06Dwv7RW-7":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textAlign"},"UZbW3IBwxfngRBTF98ptK":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textBaseline"},"kqxwF0_dOamskkSXH_LJ7":{"uri":"/melonJS/docs/melonjs/BitmapText.html#tint"},"Wpe2hvklywMG8EzliBXfW":{"uri":"/melonJS/docs/melonjs/BitmapText.html#top"},"ufua45u1GafFTG69TQMsG":{"uri":"/melonJS/docs/melonjs/BitmapText.html#type"},"me_NffGMVPQSBj3IEeTJd":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateWhenPaused"},"lH3jQ6dupFC5-jbS5TQ56":{"uri":"/melonJS/docs/melonjs/BitmapText.html#width"},"siM1W6sInwuys7hOLt6tu":{"uri":"/melonJS/docs/melonjs/BitmapText.html#wordWrapWidth"},"A00MhA5U3wAa8cYku7jXe":{"uri":"/melonJS/docs/melonjs/BitmapText.html#_text"},"h2yxGgD6pulnBqORr9DNI":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontData"},"PXsdupqgUzl1QP-RxsJN2":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontImage"},"9sDn9Ke9zA0VFDoMaTOyc":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontScale"},"6xEe2w8X7We4_lc6sHkLc":{"uri":"/melonJS/docs/melonjs/BitmapText.html#angleTo"},"Gwvg5Bxj7BTqpaXIXyQKO":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerOn"},"FfDpebzT0VlpxEC5z-x01":{"uri":"/melonJS/docs/melonjs/BitmapText.html#clone"},"vpIWZHZoTOJKZRrw-wdDO":{"uri":"/melonJS/docs/melonjs/BitmapText.html#constructor"},"-nxt4sEnh09c8gK4uQKyK":{"uri":"/melonJS/docs/melonjs/BitmapText.html#contains"},"v8AvYd9Bh-LxT9AP-10-U":{"uri":"/melonJS/docs/melonjs/BitmapText.html#copy"},"iGBK5--WSv_hON03j7t9g":{"uri":"/melonJS/docs/melonjs/BitmapText.html#distanceTo"},"4ImTwisT9elfOWOzIJsat":{"uri":"/melonJS/docs/melonjs/BitmapText.html#draw"},"4AsgjUVzPn-yngtieCR-1":{"uri":"/melonJS/docs/melonjs/BitmapText.html#equals"},"VB3nt2qlZZaQneckFfnuS":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipX"},"7hEVBgGPNYhpcVCj8RlDv":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipY"},"Q-l528kqJFigndiQaIdFu":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getAbsolutePosition"},"t9f-DvGrNLqS4wYqkdJ_h":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getBounds"},"gYCpwEfRY5U48x4CVrWmu":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getIndices"},"1gCB4JM9JiEE6HC4hEPu4":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getOpacity"},"mnsX-JKg1Kc2em2bz4TRM":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isConvex"},"JJOH30hWfGp7wJ8UZlPPv":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFinite"},"g6u98BHD8t6paaU9u99bc":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lookAt"},"W-r7yNSDpwj8OdlJ_Cc1Q":{"uri":"/melonJS/docs/melonjs/BitmapText.html#measureText"},"E6xCDB9LSXg32aw715d-M":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onCollision"},"MwKMfzf6wqquDDEi2E6qI":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onDestroyEvent"},"9tMl5q7vTnM6obd4pONeO":{"uri":"/melonJS/docs/melonjs/BitmapText.html#overlaps"},"rprYRrfbTPC-vJlWJzgPw":{"uri":"/melonJS/docs/melonjs/BitmapText.html#postDraw"},"1msX6VhbLm53nI1iWALVs":{"uri":"/melonJS/docs/melonjs/BitmapText.html#preDraw"},"OiWRODFshOooVYPt9DNrl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#recalc"},"ioI32vpqcnjMkdH2_v3JV":{"uri":"/melonJS/docs/melonjs/BitmapText.html#resize"},"JCw3na1oi60QxctmCSqXA":{"uri":"/melonJS/docs/melonjs/BitmapText.html#rotate"},"fIUyszkp2u63KZDxBEdeT":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scale"},"xvET0ZKxWZm-fY1jcez3n":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scaleV"},"t1CEk3udOTfQh1tzRXrRr":{"uri":"/melonJS/docs/melonjs/BitmapText.html#set"},"P4RFG2GIdVnQryBLMGK7r":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setOpacity"},"vwmPX3sT-s6iPGXrsvyl2":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setShape"},"UpjlFowgNjAdmEYTF5zw7":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setText"},"2YP3soaNoXQICci1ZTOb2":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setVertices"},"NP4S1plKTBveRomXO5vlu":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shift"},"qttgP_nT5ldX3A9RTcFDS":{"uri":"/melonJS/docs/melonjs/BitmapText.html#to2d"},"ERBuGOhBnlPBufC-_ZtwD":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toIso"},"xd_LpE-SV9tcLe1jPX5C3":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toPolygon"},"IUUVxUInrp126KZKzjhQq":{"uri":"/melonJS/docs/melonjs/BitmapText.html#transform"},"jFFgZnT6VE9GBVV-DgBS6":{"uri":"/melonJS/docs/melonjs/BitmapText.html#translate"},"UmDMf6uqmWCYwM_l202fv":{"uri":"/melonJS/docs/melonjs/BitmapText.html#union"},"jct7Nid31LA3Wl1mtYDAc":{"uri":"/melonJS/docs/melonjs/BitmapText.html#update"},"x5H2QerJgdSipjukA340x":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateBounds"},"Irpr4JfAPNrrk5PeQSwTj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onAnchorUpdate"},"FXgTBWAUwQh2DFTP4E1pm":{"uri":"/melonJS/docs/melonjs/Body.html"},"TkSP-CM01P_AsDffZN4Bx":{"uri":"/melonJS/docs/melonjs/Body.html#ancestor"},"cKPG-KsTbAiv0HFDcjkDm":{"uri":"/melonJS/docs/melonjs/Body.html#bounce"},"KKPQ2o-48XpZPHaQprkrK":{"uri":"/melonJS/docs/melonjs/Body.html#bounds"},"w1GLbwAgdUAfpUKXJsrKY":{"uri":"/melonJS/docs/melonjs/Body.html#collisionType"},"7C-RFUxPExo5VyJOvfaKe":{"uri":"/melonJS/docs/melonjs/Body.html#falling"},"Go01edv35uNWrXiCUewCO":{"uri":"/melonJS/docs/melonjs/Body.html#force"},"NlDno0nCff87t5H2CQGve":{"uri":"/melonJS/docs/melonjs/Body.html#friction"},"rUfqPtFnWIihnRTCLUdd6":{"uri":"/melonJS/docs/melonjs/Body.html#gravityScale"},"n2ujQ87z1yAlF_A2bt1-c":{"uri":"/melonJS/docs/melonjs/Body.html#ignoreGravity"},"dQ-FP9uaL0OFlCVHiSPCk":{"uri":"/melonJS/docs/melonjs/Body.html#isStatic"},"edovBnRG7eGkj3GkFlnmn":{"uri":"/melonJS/docs/melonjs/Body.html#jumping"},"RNddblzLJOEYqkbL0cmu2":{"uri":"/melonJS/docs/melonjs/Body.html#mass"},"0IKmLU96NnqFZC-J9nGvK":{"uri":"/melonJS/docs/melonjs/Body.html#maxVel"},"G5gSJGWHggdrGvu8wGFXC":{"uri":"/melonJS/docs/melonjs/Body.html#vel"},"bKpG6R7yLKa8Iaur-FKdj":{"uri":"/melonJS/docs/melonjs/Body.html#addShape"},"ywGWGnMT5YoryLQn5kMsf":{"uri":"/melonJS/docs/melonjs/Body.html#addVertices"},"oboSfu9YeUmVsq77nFWrB":{"uri":"/melonJS/docs/melonjs/Body.html#constructor"},"m-pAGdgq3ymW1IbPVRJkO":{"uri":"/melonJS/docs/melonjs/Body.html#contains"},"V7665lOj5Kvl5p3ats2P6":{"uri":"/melonJS/docs/melonjs/Body.html#forEach"},"lh0nUeKErqwsRDyDgOviC":{"uri":"/melonJS/docs/melonjs/Body.html#fromJSON"},"va8XYDOkNggBqeIN35k5X":{"uri":"/melonJS/docs/melonjs/Body.html#getBounds"},"skAs1HQ9pGj_IBTfm_q0i":{"uri":"/melonJS/docs/melonjs/Body.html#getShape"},"qZbZFooKVIzNXDiq8NpZB":{"uri":"/melonJS/docs/melonjs/Body.html#removeShape"},"_EdWVdswbactAu3vD1K37":{"uri":"/melonJS/docs/melonjs/Body.html#removeShapeAt"},"qn9vSmx3mUhdTx718X0EN":{"uri":"/melonJS/docs/melonjs/Body.html#respondToCollision"},"fAF9D4cKBi4mzOZZRkSxH":{"uri":"/melonJS/docs/melonjs/Body.html#rotate"},"FxKVibzYmEh7_GTKmEjO4":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionMask"},"4K4zNz-h0p2TH0gu8Un5H":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionType"},"xTvJJggbSTenbJrhp3o-1":{"uri":"/melonJS/docs/melonjs/Body.html#setFriction"},"BrPOrv9n17JhAMUpMjsPC":{"uri":"/melonJS/docs/melonjs/Body.html#setMaxVelocity"},"InfNqv0W0LuutKdi5gZU1":{"uri":"/melonJS/docs/melonjs/Body.html#setStatic"},"s4r8s5KrvGKH1xeTqClux":{"uri":"/melonJS/docs/melonjs/Body.html#setVertices"},"F_0n4dpzX-rX7EQDq8oU8":{"uri":"/melonJS/docs/melonjs/Body.html#update"},"lbyVuiQF1XmrKsPNOriuG":{"uri":"/melonJS/docs/melonjs/Bounds.html"},"fzRnfsjIkMAyapdZ2j2aN":{"uri":"/melonJS/docs/melonjs/Bounds.html#bottom"},"IqjNbjlrsQLHDkFqtxv3T":{"uri":"/melonJS/docs/melonjs/Bounds.html#center"},"qXjNgofJSd6cWpC4SI8qV":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerX"},"0OqKOpKS0UBV2Dz6-GFjL":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerY"},"KLIpjtMIe0NSHS4pN2re2":{"uri":"/melonJS/docs/melonjs/Bounds.html#height"},"AxxcEDBYscskYA5ZauGaI":{"uri":"/melonJS/docs/melonjs/Bounds.html#left"},"-5caUBafC4ooHv6UWpnul":{"uri":"/melonJS/docs/melonjs/Bounds.html#right"},"ojY4zXUe1bIlEoHNWGeAd":{"uri":"/melonJS/docs/melonjs/Bounds.html#top"},"ZLljZn9B9mHskY5Df5icF":{"uri":"/melonJS/docs/melonjs/Bounds.html#type"},"r2gIEsHOTPZUFMRj8e_k3":{"uri":"/melonJS/docs/melonjs/Bounds.html#width"},"2hEV_V8xSs4_E2hTHAuQx":{"uri":"/melonJS/docs/melonjs/Bounds.html#x"},"4NbTCwZUcJf97HVpKhnNT":{"uri":"/melonJS/docs/melonjs/Bounds.html#y"},"wfnDh5zgNpVjL3GIJeGPN":{"uri":"/melonJS/docs/melonjs/Bounds.html#add"},"Ee8OohD2Z5GXAQ2a6cQ5X":{"uri":"/melonJS/docs/melonjs/Bounds.html#addBounds"},"tC3FSdnJKNzr-Yzk8zAjs":{"uri":"/melonJS/docs/melonjs/Bounds.html#addFrame"},"sqyTOcjtrnoRzaTxe5Tvv":{"uri":"/melonJS/docs/melonjs/Bounds.html#addPoint"},"B2p8PZRcHgryppJACxSdq":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerOn"},"cK-iwQn1mGqnOjGly-X0M":{"uri":"/melonJS/docs/melonjs/Bounds.html#clear"},"4w0Io5fUgmd8YH_4okEoS":{"uri":"/melonJS/docs/melonjs/Bounds.html#clone"},"vlPasDjB17ak_2skjqSYH":{"uri":"/melonJS/docs/melonjs/Bounds.html#constructor"},"NGYoA4SF8mvc6vCglFh3V":{"uri":"/melonJS/docs/melonjs/Bounds.html#contains"},"6sNqCxBmQNI-cAiaeiRG6":{"uri":"/melonJS/docs/melonjs/Bounds.html#isFinite"},"jx4maIPaILKPnuDHgAKJQ":{"uri":"/melonJS/docs/melonjs/Bounds.html#overlaps"},"z_EH2Uux8yYMOKUjt06vq":{"uri":"/melonJS/docs/melonjs/Bounds.html#setMinMax"},"vBFaqqCrohmrwE2JFd_Gf":{"uri":"/melonJS/docs/melonjs/Bounds.html#shift"},"LaH7RS2whO9x2LvcQV-na":{"uri":"/melonJS/docs/melonjs/Bounds.html#toPolygon"},"Qqiq-aCVAXyUGF0u9hXw_":{"uri":"/melonJS/docs/melonjs/Bounds.html#translate"},"RUno1KaJofW9ZzL8uydXY":{"uri":"/melonJS/docs/melonjs/Bounds.html#update"},"zSmqhy6umJf6Wz6TTbfgf":{"uri":"/melonJS/docs/melonjs/Camera2d.html"},"71uDerwM6lRyV62bJeAWu":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html"},"qZA_tFFtCcC0DNOoUTkqW":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#BOTH"},"hJ7bLLEt-rPfIcXVNYExm":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#HORIZONTAL"},"xZYUFdoxX9l1JNt8newYM":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#NONE"},"ZC8pS4hAKtDbvnDhBThmr":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#VERTICAL"},"OLRN6kbwwuPm8fsvgKYM2":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alpha"},"bhacOteJcm-P9e6Pgrczi":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alwaysUpdate"},"v9FrQGXlIF0hEkVhK2eZg":{"uri":"/melonJS/docs/melonjs/Camera2d.html#ancestor"},"IWOkZY9gpa0yjWClO0Gyo":{"uri":"/melonJS/docs/melonjs/Camera2d.html#anchorPoint"},"w15dGBbfuU_hSEnvTQwuw":{"uri":"/melonJS/docs/melonjs/Camera2d.html#autoTransform"},"dbyCYUiBUhwakdi0vkUUB":{"uri":"/melonJS/docs/melonjs/Camera2d.html#blendMode"},"WgqbrWlV5qrCkre84yeGE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#body"},"yO4YS9mXwFJ5ZvtTkf7Tv":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bottom"},"lkVzEf0KOPu3VsCfDIv4Z":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bounds"},"5pM_KRBgpdJ9WgGt7tM72":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerX"},"kGhTHypEi58b8YULAlFt2":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerY"},"CDP85WbIFw1Z0EDZMD1vF":{"uri":"/melonJS/docs/melonjs/Camera2d.html#currentTransform"},"6aa91obCucYXPKD8BjMCg":{"uri":"/melonJS/docs/melonjs/Camera2d.html#damping"},"SLc2NELfmbdYuP5Oh3pG_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#depth"},"HxCe_LDud55XVOzBchPmE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#far"},"5CETmURcizcLXYQgZ6edV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#floating"},"BfF3I3dJWw1X7yAGV7FbA":{"uri":"/melonJS/docs/melonjs/Camera2d.html#GUID"},"9x6rTmaea7E_qPpyOvMdp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#height"},"u-LL5_PaBEq09XBLws8Ik":{"uri":"/melonJS/docs/melonjs/Camera2d.html#inViewport"},"R21DaEMe7L8I82vwGA5MC":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isDirty"},"CAwq-uVhusS5ulbzT4Mri":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedX"},"AD-aX4POzNUWfiXUiBUQf":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedY"},"7Eznr7ulyD7zdwEzDyucI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFloating"},"AUvSBWTYszf5djawijOw0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isKinematic"},"wUyatOjvA07V01NbQDNSI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isPersistent"},"NrPWc2RWmq7PdMSvRQI7B":{"uri":"/melonJS/docs/melonjs/Camera2d.html#left"},"TjSVrA1mBaBIrpiE9o3d1":{"uri":"/melonJS/docs/melonjs/Camera2d.html#mask"},"r-ywjYq2LsYuO-BUWjTNt":{"uri":"/melonJS/docs/melonjs/Camera2d.html#name"},"f0harunQII_kjizTEg9_r":{"uri":"/melonJS/docs/melonjs/Camera2d.html#near"},"jDws0A3Sl74G841wDSuv4":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onVisibilityChange"},"5D-QaUlYGtCsn_ZaTYE9x":{"uri":"/melonJS/docs/melonjs/Camera2d.html#parentApp"},"eBpcnEcKE0hL7ReGuRQa1":{"uri":"/melonJS/docs/melonjs/Camera2d.html#points"},"oHjyAeV3kjzl2ppK7X-Tk":{"uri":"/melonJS/docs/melonjs/Camera2d.html#pos"},"IOH085P0BS9mVkfgDFl3m":{"uri":"/melonJS/docs/melonjs/Camera2d.html#projectionMatrix"},"el1vqkyruW1b_vRrj7QHg":{"uri":"/melonJS/docs/melonjs/Camera2d.html#right"},"ZCMiQjmvzaFfw1ETfnEIg":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shader"},"t3D0CfXl89Baen14itpBO":{"uri":"/melonJS/docs/melonjs/Camera2d.html#tint"},"YGF_pKKyK1yg6t0Jw53PV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#top"},"Upf-_RnRB7WsWh3PjaP42":{"uri":"/melonJS/docs/melonjs/Camera2d.html#type"},"Rz2RzFlQIgO2WGBDqKAYz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateWhenPaused"},"ZFXNGdkpwCYsmlplONjlE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#width"},"Sfu99NYIUTNfZHSYkQank":{"uri":"/melonJS/docs/melonjs/Camera2d.html#smoothFollow"},"YoKC3oBFIGr3LKP-bQDME":{"uri":"/melonJS/docs/melonjs/Camera2d.html#angleTo"},"8VdrVFIz1bUDRxz5GDOup":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerOn"},"W_OXRIgabwzUjkdJkPPkx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#clone"},"UkgvZnVuxJXuilQB34J-Q":{"uri":"/melonJS/docs/melonjs/Camera2d.html#constructor"},"BqlZYzo5IjdNjsRMkb-Cr":{"uri":"/melonJS/docs/melonjs/Camera2d.html#contains"},"jU0Zz0L7_s3CjK2cmgFJc":{"uri":"/melonJS/docs/melonjs/Camera2d.html#copy"},"c2YQdBSd_uaQfyMJv49QE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#distanceTo"},"73n0eNeAhWwKzX5DQwPkn":{"uri":"/melonJS/docs/melonjs/Camera2d.html#draw"},"ApNN3AgB716SesEk0lVtz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#equals"},"izJetSD98jo_DyK6adB14":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeIn"},"aqRiiXNLZtOcT9s5YpgVC":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeOut"},"sL_fdQCfRzNgqPohvnSRa":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipX"},"NQKXTyPCaY6mA6vjFkhnx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipY"},"1slgNUC3K5y9dZl53bs4_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#focusOn"},"kZA8_D2bRKTtP9mqAlmbp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#follow"},"cfOTu5Wy4ZNv7sKiXBUez":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getAbsolutePosition"},"2e6O4r_TdJHQdqyZlkeC3":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getBounds"},"EP6wDErkLuD4BHET9-LJ_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getIndices"},"nukcSxueeR_5KFZmhYtRa":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getOpacity"},"9mHs1i4CqJQDTzkE81URN":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isConvex"},"mLjaWxjBdrkhJK1f9NAWd":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFinite"},"vnD-ZuruZ60fr_7VjhvxN":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isVisible"},"QIw8wa19U5SqInCQuDb2F":{"uri":"/melonJS/docs/melonjs/Camera2d.html#localToWorld"},"ke_qNiVZXBPVK_8Qnx2nM":{"uri":"/melonJS/docs/melonjs/Camera2d.html#lookAt"},"pLVK3lXOUqig7RQZEjfW9":{"uri":"/melonJS/docs/melonjs/Camera2d.html#move"},"7r-siP_CsWExL8OSadbjf":{"uri":"/melonJS/docs/melonjs/Camera2d.html#moveTo"},"ibCWG52e5wJiVmjb43ZCK":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onCollision"},"IaJrMj79_Ws0C4Rl0n_WV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onDestroyEvent"},"n8DfwC94i9P-PfdjoAdNr":{"uri":"/melonJS/docs/melonjs/Camera2d.html#overlaps"},"5o1RvELv6ZpnbpImCoBDn":{"uri":"/melonJS/docs/melonjs/Camera2d.html#postDraw"},"YZjhQaPZrY3ecpliZX8FE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#preDraw"},"zD3lRm9tsxfxjg3XrJ5-J":{"uri":"/melonJS/docs/melonjs/Camera2d.html#recalc"},"OStZm0s6VuHPREVMCFuXV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#reset"},"Npe4R7P8KXvNJOtQ9DnkT":{"uri":"/melonJS/docs/melonjs/Camera2d.html#resize"},"K5JiRtyT6W_DUu3bASg1G":{"uri":"/melonJS/docs/melonjs/Camera2d.html#rotate"},"7NPgxSGjg5bzCW4_vl-AU":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scale"},"m3cQrTGSHw8JBG6D2YjaA":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scaleV"},"upSNj1Iv-jRLsvPU8efZe":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setBounds"},"kyW0FIuzEkeGc6nKMjDQz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setDeadzone"},"IXFCA7zgY4vaootm-Eofx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setOpacity"},"NcqLTYkIJAK6e-Xsn2ulj":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setShape"},"5mzq-bu3eDqK93bTFBslJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setVertices"},"pKQ9H4_HHRgiEf2ewJcot":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shake"},"J42wrNd_x-ZjcPm077Hc3":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shift"},"g0ZJ6wYFiGzr9pMkA2vzw":{"uri":"/melonJS/docs/melonjs/Camera2d.html#to2d"},"cU8L7XBeQQo-0UQ6bqDDt":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toIso"},"wpWKjIeQthKZD9ycjWyt6":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toPolygon"},"Gg3C0wJBIjSNXpGrdl9yi":{"uri":"/melonJS/docs/melonjs/Camera2d.html#transform"},"VMWS0b4SAzSWm9BqbpHgi":{"uri":"/melonJS/docs/melonjs/Camera2d.html#translate"},"4BWbu9EL1TOYxRz4_aVzW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#unfollow"},"SYeWGOU_fPXyDVHR7ZRMz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#union"},"KX3-_u4X2hqeqAnqCskv6":{"uri":"/melonJS/docs/melonjs/Camera2d.html#update"},"llSqdpTl44er7hxybQmnI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateBounds"},"TddAOeU-QYpc3jttj7u9w":{"uri":"/melonJS/docs/melonjs/Camera2d.html#worldToLocal"},"WtpM_Q75krJXWsqK00Kfl":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onAnchorUpdate"},"6Q9LUIZYeyQ_QP29lOx06":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html"},"8D0Pi3FwRGriksOr0h7xm":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#depthTest"},"FcCFuo868ewVhgVFBTT20":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#designRatio"},"DT6eYAgKN4b_1Z_QApQte":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#height"},"x9c5X4_gtzv1IJu7ORkmu":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#isContextValid"},"tb2dNZLKs5e2Y2QoLT_b_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#path2D"},"V3LE4QxFbjTpKrcFv1VTZ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scaleRatio"},"dyN1MLvSkGgdy1ggG2DTW":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#settings"},"FtcH7aEkZXshLtlUyb2RA":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#type"},"daU7_Yz8gmo7lW72IQtHJ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#width"},"B6n84H-gFYwpQF78v5arY":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#beginPath"},"8O3xi7dneUhsOp4CHylXD":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clear"},"UNWBZwybzdgIa2n_nTSrk":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearColor"},"yqiXpo-Ih99LYbjMOQiSB":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearMask"},"-Hw474ezPN_xshRjn6bLD":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearRect"},"UZkh3s_CqH4HGE4iuv-ub":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearTint"},"trUZdNf0tVV11MS452c0h":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clipRect"},"Umtvtl5bvdxp9S018PY2l":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#closePath"},"9LVYHdBqolqPg5TK4wv7m":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#constructor"},"gYrD9_qp-N2jxIJLt5zag":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#createPattern"},"N-zYmSNKo5JyqolNPPbPi":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawImage"},"j1RQyW4r34hkLKvYE6YNL":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawPattern"},"ViXG9NswZY-pkIibWezYW":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fill"},"BJ0QxcU9AA5tzJiYvBpP1":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillArc"},"3SAGlPV4uLwBGAk6pEC19":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillEllipse"},"4_RTPWNLrjKuyRk9m0OnN":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillLine"},"kHkS-vu0yUdIvam0aPyqI":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPoint"},"d_8YtqXLJVMCcXkqJgO6t":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPolygon"},"ZZ2BYmvWXw_JAgpAsYKdu":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRect"},"SrJOOW6-YHT6iubHie5Pv":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRoundRect"},"Feztr4adFTawG1wYO8sxO":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#flush"},"HspWJmQSFc6xlNcsU9krs":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getBlendMode"},"oR6YZ6lZYgOgPBLwsK6vu":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getCanvas"},"ttiG9H5BM08rJDkjF9Ta-":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getColor"},"EKOnJChxrK8VEUhHERtoW":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext"},"ubRKANqHfI9Rg5y4tN6-f":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext2d"},"NI3dEWQ05I_bnfnDr9yVv":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getGlobalAlpha"},"eL_qm2O5jjYx5Q2BBi32e":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenCanvas"},"_eoUYh_37NJCPH5bD1YqB":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenContext"},"qvRDLXCvzvhB4xz5qYik0":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#globalAlpha"},"v4taxsstSnqxpNE-dib2a":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#lineTo"},"aS3vuaarxUiADAgZpvzbf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#moveTo"},"5tY_vnV2YeYDLh2rm8cbt":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#overlaps"},"Mpr4smTOVmBqNvj4lBga_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rect"},"MKqWaEcvQaIyPyxxbROtM":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#reset"},"lAY59X-9qHCJXnrYBj0GP":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resetTransform"},"H31KSeR5-em30JLOSTDzr":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resize"},"h5oHXzRRQW2ChHFk6UKm-":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#restore"},"oE1P5xKeDGKCHfXYM_0ya":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rotate"},"VgiNPUjCbvWySdn6OEOOd":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#roundRect"},"MCwI_AKj2drFtThY7J3NT":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#save"},"0xuF-qeLYn3Gfoqog6DK1":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scale"},"UPjDupTZhvFLyRmlqN6WV":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setAntiAlias"},"KRwaUb3gNN3PQRTcks3R5":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setBlendMode"},"0e-xoC0Hg7sE3y8xzMHor":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setColor"},"w4PAJHwfUC_DQpEZBNed5":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setGlobalAlpha"},"2HOY7xO6uJ8HExHMO5edl":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setLineWidth"},"j6DTb0xFqRzI3JMsJhGKi":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setMask"},"Vg3DviY5cucWF664uenG_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setProjection"},"ZWE4qgnlzXeo3OdDUOrzw":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTint"},"I-kXiUmtTySKnJ4fatJWQ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTransform"},"_DQiSHchSnUL5kFB2gaE5":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#stroke"},"5kgO70N-DpGxX7AQtAYD0":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeArc"},"Jb9L1V-Q4xjiJ9wGIqZIJ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeEllipse"},"_wuYW4vhnPzxGA-6aUmbT":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeLine"},"zmxZSnSaQTTMw1DKGBNUc":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePoint"},"YLYLnRyvEv7JatGsi1-Y_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePolygon"},"Jssa2h-x7LdI6YcCJjChU":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRect"},"i21FPEnauHu8zwwUIhwkx":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRoundRect"},"lpB-uHA1Y4ZJO3dXXMpYB":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#tint"},"oQjXnhFGkmAdrthiROF_j":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toBlob"},"TWae0SpxtHlXSgEzwy23w":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toDataURL"},"MY2-N0jwPqQT-5lYKAhQI":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toImageBitmap"},"O3PkWHbrQExB_glzaB0T5":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#transform"},"i-3OZDTXzlwPq0flB6uEC":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#translate"},"I40-3RMlUlcCptGi8uvMo":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html"},"g6RN-yNnIh-9lVE2j5K3h":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#canvas"},"u0ukY2vVXTQgCbdeSY_TI":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#context"},"uOhvi3bvnMK5WMbBNGCVm":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#height"},"yIWXZ3WYlC17T7Z9rq2eO":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#width"},"YwWbDlUbO2YDbO_vcyTkl":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#clear"},"82gfausPXbY5Oq4O1IHZK":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#constructor"},"Cgil1l6JC3xnAqXl_QtJr":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#getImageData"},"2k0ManLIW1hwChK0ThYmk":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#invalidate"},"Rel0rjmGd9-VHPQ2VCHk9":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#resize"},"w5L9ePXno9f5NpANbR7LL":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#setAntiAlias"},"JuW_CmPz9mPxetYib1etU":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toBlob"},"Mh6Es5ZOaH8XHP2Fuf4nJ":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toDataURL"},"KIm97kx5FZSNA9pCectpM":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toImageBitmap"},"CC2NPa3CdFeDqgDZUWR2v":{"uri":"/melonJS/docs/melonjs/Collectable.html"},"lM8ZNXX1YzJt-gFy59ify":{"uri":"/melonJS/docs/melonjs/Collectable.html#alpha"},"Xf7dI8z8NGAI6qF_c-Qao":{"uri":"/melonJS/docs/melonjs/Collectable.html#alwaysUpdate"},"MvrANspQraXjQS4vI6P1w":{"uri":"/melonJS/docs/melonjs/Collectable.html#ancestor"},"aRYZ5BF9mJRNBO8ZiBTGX":{"uri":"/melonJS/docs/melonjs/Collectable.html#anchorPoint"},"G7o9H2yrNxiWnqP9bQRgB":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationpause"},"Wiat31ORn7rLpqc4VAYep":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationspeed"},"AUgeTlGIagwls5W1HVm7i":{"uri":"/melonJS/docs/melonjs/Collectable.html#autoTransform"},"ubku171MN6D8WKhg9AC4m":{"uri":"/melonJS/docs/melonjs/Collectable.html#blendMode"},"tZ1Bg_KCKU74tvkrpLQEx":{"uri":"/melonJS/docs/melonjs/Collectable.html#body"},"3tpvA71BBE5MZNg46PMPG":{"uri":"/melonJS/docs/melonjs/Collectable.html#bottom"},"tHL4lK1E0NoL25_zQLwB3":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerX"},"MRhU2im87MZyRMFN8tKvo":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerY"},"1_gYMjLHj7MEsZWORAMm6":{"uri":"/melonJS/docs/melonjs/Collectable.html#currentTransform"},"U7yZV9IXaSy7RZFReazPK":{"uri":"/melonJS/docs/melonjs/Collectable.html#depth"},"1XFGzhavQ9kSFzth4vnpY":{"uri":"/melonJS/docs/melonjs/Collectable.html#floating"},"tG9V33AICl0b7gQzXT5Nq":{"uri":"/melonJS/docs/melonjs/Collectable.html#GUID"},"gaQP587p8VyUsUBV-ntFt":{"uri":"/melonJS/docs/melonjs/Collectable.html#height"},"nJFmxFeNL7R8Uzze1o5UJ":{"uri":"/melonJS/docs/melonjs/Collectable.html#inViewport"},"PqWwVO6PM_q9gNLp8JW7T":{"uri":"/melonJS/docs/melonjs/Collectable.html#isDirty"},"tmv7gJUxi72sTbyKjLj8M":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedX"},"ier6B4iIXzjr6yCTiOidJ":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedY"},"ZhkUSDJZ46Uo_Cf4_MLPy":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFloating"},"PdSsqlA_01JmGJoGFb0k8":{"uri":"/melonJS/docs/melonjs/Collectable.html#isKinematic"},"Y5aGjvWpshWCWoOQ3BdRS":{"uri":"/melonJS/docs/melonjs/Collectable.html#isPersistent"},"9djQYTxpN8bNnsv4jZgSX":{"uri":"/melonJS/docs/melonjs/Collectable.html#isVideo"},"O2WmaUgpLb9qgeWvQcoer":{"uri":"/melonJS/docs/melonjs/Collectable.html#left"},"TyjgfwoODxvtwux1Jw-tk":{"uri":"/melonJS/docs/melonjs/Collectable.html#mask"},"bVX_9DsuqVsB3hZSVReZL":{"uri":"/melonJS/docs/melonjs/Collectable.html#name"},"j3Gzzz5-ZgDlGdzJA3AT4":{"uri":"/melonJS/docs/melonjs/Collectable.html#offset"},"cB9MNUrXFOayTi0oLfj8I":{"uri":"/melonJS/docs/melonjs/Collectable.html#onVisibilityChange"},"fdET0PrGAoayFBlAnWrop":{"uri":"/melonJS/docs/melonjs/Collectable.html#parentApp"},"-TeqxhFd5NmKSRnS1yuLy":{"uri":"/melonJS/docs/melonjs/Collectable.html#points"},"aiG24NoPKom9zzMw5pxqk":{"uri":"/melonJS/docs/melonjs/Collectable.html#pos"},"hDQCXBaK1NSrbUSn5ja9B":{"uri":"/melonJS/docs/melonjs/Collectable.html#right"},"ol5TptwHUHbyHqaktF-i-":{"uri":"/melonJS/docs/melonjs/Collectable.html#shader"},"AERIheKmVculDR32zTssB":{"uri":"/melonJS/docs/melonjs/Collectable.html#source"},"5oLTuL0ppaux4Ayjwr3G9":{"uri":"/melonJS/docs/melonjs/Collectable.html#tint"},"ONNOFbDLO3HzfKb8lWpjQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#top"},"KSF4U1yUcuXkFsM05H-Aa":{"uri":"/melonJS/docs/melonjs/Collectable.html#type"},"WSrGCP1N8rk79k82mN2Co":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateWhenPaused"},"zkMZWJr_k7p0NoWICRbMH":{"uri":"/melonJS/docs/melonjs/Collectable.html#width"},"LQP-1kIpj7bMOFAs7eQXu":{"uri":"/melonJS/docs/melonjs/Collectable.html#addAnimation"},"ampXFH7zL2mnwTdPdE0Up":{"uri":"/melonJS/docs/melonjs/Collectable.html#angleTo"},"RyREbw66kirtI42479lN6":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerOn"},"uZ3aPaEFgyV1l1yQGhliM":{"uri":"/melonJS/docs/melonjs/Collectable.html#clone"},"5L9Ca8V_iNURUmTms5Hrc":{"uri":"/melonJS/docs/melonjs/Collectable.html#constructor"},"lCsyF1DtvaFtzn9CKHIYs":{"uri":"/melonJS/docs/melonjs/Collectable.html#contains"},"_SygGL7AOTygQqYdiVQLV":{"uri":"/melonJS/docs/melonjs/Collectable.html#copy"},"TjV46IOVABLDORCzIWngx":{"uri":"/melonJS/docs/melonjs/Collectable.html#distanceTo"},"AE2CFVfDu-F6ga4DHWJFP":{"uri":"/melonJS/docs/melonjs/Collectable.html#equals"},"fZCKiyzb0dOJ7HDRLobFJ":{"uri":"/melonJS/docs/melonjs/Collectable.html#flicker"},"7Yi3ZOPZBnrMcwfkrZDCe":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipX"},"Rz_uHUTEGrEnge_deuAzg":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipY"},"gkD4DA-_4xI9qigG4fAWv":{"uri":"/melonJS/docs/melonjs/Collectable.html#getAbsolutePosition"},"sxy7vq9BsUiZszNDRf9tD":{"uri":"/melonJS/docs/melonjs/Collectable.html#getBounds"},"DiK5xulv5gUP6HYcw5Ov9":{"uri":"/melonJS/docs/melonjs/Collectable.html#getCurrentAnimationFrame"},"neZ0Xx1zKBbi0T7db7TXf":{"uri":"/melonJS/docs/melonjs/Collectable.html#getIndices"},"7IEImZzHOGc-xr2zqbUjb":{"uri":"/melonJS/docs/melonjs/Collectable.html#getOpacity"},"UJkWDUg1ldFd802hZG1xo":{"uri":"/melonJS/docs/melonjs/Collectable.html#isConvex"},"7YBzkEvyGugjkcKIUKKIq":{"uri":"/melonJS/docs/melonjs/Collectable.html#isCurrentAnimation"},"IsTOkgmq4488StnjHbUnh":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFinite"},"_gD6_sjpDbsqJnurHAmqJ":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlickering"},"lYepD5f-hicyC0RDULytV":{"uri":"/melonJS/docs/melonjs/Collectable.html#lookAt"},"FqtvcAI5v_e3jAufuZkcJ":{"uri":"/melonJS/docs/melonjs/Collectable.html#onCollision"},"n0BXmaU41suWA6t3bvt5t":{"uri":"/melonJS/docs/melonjs/Collectable.html#onDestroyEvent"},"lLx7k06-jRxJ1t37zchfS":{"uri":"/melonJS/docs/melonjs/Collectable.html#overlaps"},"zBVha6NxiQA1gjQYnKOA1":{"uri":"/melonJS/docs/melonjs/Collectable.html#pause"},"NyM1Nek22COwtc5EhpzIi":{"uri":"/melonJS/docs/melonjs/Collectable.html#play"},"CBTVWFGwTHbwu5Gr_a1G2":{"uri":"/melonJS/docs/melonjs/Collectable.html#postDraw"},"XG3jhi8dd1oEh0XjWrJEs":{"uri":"/melonJS/docs/melonjs/Collectable.html#preDraw"},"22aYhFVOAYq2sq-BUFuzo":{"uri":"/melonJS/docs/melonjs/Collectable.html#recalc"},"QDgl4WOzZnmdicR5Hjwaj":{"uri":"/melonJS/docs/melonjs/Collectable.html#resize"},"fpUuALn1UAr1zU_e_oyyT":{"uri":"/melonJS/docs/melonjs/Collectable.html#reverseAnimation"},"I4C9Irbi__a7ZY2k5HpOb":{"uri":"/melonJS/docs/melonjs/Collectable.html#rotate"},"i46E5exyo4mlmu9D3Ic58":{"uri":"/melonJS/docs/melonjs/Collectable.html#scale"},"dX_naunGsVmzXV6RodghU":{"uri":"/melonJS/docs/melonjs/Collectable.html#scaleV"},"xKznsgCOFed5kcLMcPobP":{"uri":"/melonJS/docs/melonjs/Collectable.html#setAnimationFrame"},"IUqahbHYHRam_22MLdW5X":{"uri":"/melonJS/docs/melonjs/Collectable.html#setCurrentAnimation"},"eAPPnZjWGwvWq4O2aP4vS":{"uri":"/melonJS/docs/melonjs/Collectable.html#setOpacity"},"DfSFA3acqADokfW3LEY8_":{"uri":"/melonJS/docs/melonjs/Collectable.html#setRegion"},"SOt9KmNKjR7KdQDxs-DK2":{"uri":"/melonJS/docs/melonjs/Collectable.html#setShape"},"VhZXGyqfN2Iu-DbopBuFv":{"uri":"/melonJS/docs/melonjs/Collectable.html#setVertices"},"A47XSLTKfldHiR7ZQScXC":{"uri":"/melonJS/docs/melonjs/Collectable.html#shift"},"gu-fpwmyE8WVTJzADfTwZ":{"uri":"/melonJS/docs/melonjs/Collectable.html#to2d"},"bclwJuGUZBsOgNusgg-Qh":{"uri":"/melonJS/docs/melonjs/Collectable.html#toIso"},"R6_JJxpEgHMVlTlx4Z8Jo":{"uri":"/melonJS/docs/melonjs/Collectable.html#toPolygon"},"AtFXt0-bxzymC1ObZ_Xq5":{"uri":"/melonJS/docs/melonjs/Collectable.html#transform"},"5M57ClLygwQOOagFeloDy":{"uri":"/melonJS/docs/melonjs/Collectable.html#translate"},"A7z8zfoE-PTuFsAqDvw1b":{"uri":"/melonJS/docs/melonjs/Collectable.html#union"},"5DbktvxEuq-oUWO4i4tS0":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateBounds"},"5AfUlOhRrSHgGJQlZ-xoz":{"uri":"/melonJS/docs/melonjs/Collectable.html#draw"},"4EYjTGDzBvWaPTj4Skk2E":{"uri":"/melonJS/docs/melonjs/Collectable.html#update"},"aeGJ6afwSU-0FL2q6eIOS":{"uri":"/melonJS/docs/melonjs/Collectable.html#onAnchorUpdate"},"7g57nzw2jqBT0avr67EFd":{"uri":"/melonJS/docs/melonjs/Color.html"},"DPaKXgUdjMA77bfIFTxZR":{"uri":"/melonJS/docs/melonjs/Color.html#alpha"},"Dhr6ZT0dt3vPdKrd2SEPN":{"uri":"/melonJS/docs/melonjs/Color.html#b"},"rWnXcv5XIFvyTNhtovm7_":{"uri":"/melonJS/docs/melonjs/Color.html#g"},"hMzIuKZm6DHu5oQ2cFlkD":{"uri":"/melonJS/docs/melonjs/Color.html#r"},"aPvh_WXIkkLKOLRH5DQ9V":{"uri":"/melonJS/docs/melonjs/Color.html#add"},"hf1YoFQe1_H8ccA09kjcj":{"uri":"/melonJS/docs/melonjs/Color.html#clone"},"9xhZL7jhSa9DNq1QoYVlg":{"uri":"/melonJS/docs/melonjs/Color.html#constructor"},"n8aVzzAimNR9fl-oObWAO":{"uri":"/melonJS/docs/melonjs/Color.html#copy"},"Cw5BYmc0u0253hPPvE8nL":{"uri":"/melonJS/docs/melonjs/Color.html#darken"},"xS-YuAvHkxGkWVPRWY2_E":{"uri":"/melonJS/docs/melonjs/Color.html#equals"},"5rrwhQjJOLbwyqv53dAqA":{"uri":"/melonJS/docs/melonjs/Color.html#lerp"},"Nh6PlmZdV4vY9IbIU5fQv":{"uri":"/melonJS/docs/melonjs/Color.html#lighten"},"4rWDLRzxh6x30dlhZYcgi":{"uri":"/melonJS/docs/melonjs/Color.html#parseCSS"},"kaweT4GcVfMCvRVa3g1Ok":{"uri":"/melonJS/docs/melonjs/Color.html#parseHex"},"POyzXulBAHEQV6qZaK99-":{"uri":"/melonJS/docs/melonjs/Color.html#parseRGB"},"jhML6Pgi4WZiYDK8HEQCp":{"uri":"/melonJS/docs/melonjs/Color.html#random"},"wuuHy2bNXXVOii5iqZazG":{"uri":"/melonJS/docs/melonjs/Color.html#setColor"},"l1Idfded12S2-WpgI80vQ":{"uri":"/melonJS/docs/melonjs/Color.html#setFloat"},"TgsviEJfXTe84ZWz9J8Tf":{"uri":"/melonJS/docs/melonjs/Color.html#setHSL"},"SnQvRKFgkeOZ_cMTGIXfA":{"uri":"/melonJS/docs/melonjs/Color.html#setHSV"},"7gzIBNtgF2H8Ll6g2VREK":{"uri":"/melonJS/docs/melonjs/Color.html#toArray"},"CzoWccMlvJmDYCmSAP0Wl":{"uri":"/melonJS/docs/melonjs/Color.html#toHex"},"eiw9OfkO9pgIhVbc-875g":{"uri":"/melonJS/docs/melonjs/Color.html#toHex8"},"hM_alAC8PwlrNL71nAwmk":{"uri":"/melonJS/docs/melonjs/Color.html#toRGB"},"Aw7oi125K8YIjxhoxeDIX":{"uri":"/melonJS/docs/melonjs/Color.html#toRGBA"},"739HS5y58Tnbqo2qUXuPL":{"uri":"/melonJS/docs/melonjs/Color.html#toUint32"},"5_uKX6XNz0U1LwftAWz81":{"uri":"/melonJS/docs/melonjs/ColorLayer.html"},"Uf-9VrEYj3bv0esRdkfop":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alpha"},"4_hK3ncS0WpBZVeQIzhbO":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alwaysUpdate"},"J_zRplsqJ0Nf4cTvFIiMU":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#ancestor"},"FMuKcvvePL7nJvO8BrmRl":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#anchorPoint"},"kDQWB3A2odpuZjpR7f7zn":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#autoTransform"},"1eNPBz3qMdOzvU_vXLuoQ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#blendMode"},"7a1xS2H8UbeAdupMSmMJJ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#body"},"pH1DjDR7v1RLohP6ffE5j":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#bottom"},"HWrHSLSPUK0g3S80E8xPS":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerX"},"SNBVK7stuzqHioOYXaS6e":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerY"},"UijhpufPzAqXlDM3B85i4":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#color"},"n76a8GtqfKtC51BnsNp4A":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#currentTransform"},"JjJCA6x2wH0JVMTeRw5jj":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#depth"},"kTRd4o1ld8T-X2G6SQUzD":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#floating"},"OL-G3CQQJEByKQlEdRHmd":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#GUID"},"Rn0Jtjb3Z7sc9GdpNkmXy":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#height"},"OYJ-ZuqX7x5pk4cdv_apS":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#inViewport"},"Xo_uf_qTvCbpzzmrSvjUm":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isDirty"},"RpRtTmeTim-BunIubXfxg":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedX"},"mnkxGSNmqoVzzfEWy6ldr":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedY"},"ICAPk42bjyD-6e45qwgvv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFloating"},"033irB_TP_RRwDsOhb_gv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isKinematic"},"mqCGiVKPUgOwsTWVsvgjU":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isPersistent"},"OUZ5TZBzbU9Z_BdnoNKoR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#left"},"M4Y3iBjV-dmxHKXpFE_TN":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#mask"},"fOJsbP9LWVZRYC90mFbRY":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#name"},"qWOKNvKAI1Irq_o7kII-1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onVisibilityChange"},"ujqceJnT3Y7912sB1h-Rt":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#parentApp"},"kRN2iuwbwruoD1vJmVYsT":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#points"},"bOmv3m4jI8LoPUsSO7tGy":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#pos"},"JvBvx6K-Oecpp_gQ_e1HG":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#right"},"m4WiPKhjpzr8JMqNi5ttZ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shader"},"AcYXRccsF6w6wSlf_3qXX":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#tint"},"Wn5RJ_m08q71EVanQPvnW":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#top"},"boNWE6uMad9GgPp5wXWPd":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#type"},"b8xtWzk7l7HpDgFUxnhLz":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateWhenPaused"},"unn3asncBBbWe_orh6zUv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#width"},"iTnXWufFxLmA7UlHIXxsF":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#angleTo"},"cjZh6msb_TWJiCrb4n_K0":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerOn"},"NyF5Nb6a6ym-GzaZDoYLi":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#clone"},"CZ4Upo4lO0UMBpBIcZwWC":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#constructor"},"SbLaccFIy1S-WK2yxpo53":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#contains"},"1nBAaw3Wj3yl_MTSLeOpX":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#copy"},"AZqCDn-4EmmEisT8ZYEvV":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#distanceTo"},"qX37UD1vPOiEzy95c9Wlv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#equals"},"FWN-HiuptChzz9a4pajfq":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipX"},"ucFAAHWQMGEI5wMshjvwX":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipY"},"eMVdcql6L0G17jU7ZAHkM":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getAbsolutePosition"},"rKpltfKHoQeUBwo0QGCgu":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getBounds"},"5d4sGmofx5taRcALJkfni":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getIndices"},"sBjxuw_BAatcbROghH1Ap":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getOpacity"},"ISvERj7jzCy_Fp2ZfUr8i":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isConvex"},"fza3MjxRhukjaL3Co0RuV":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFinite"},"3Zm-SCeG6htZu4fpLq7A1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#lookAt"},"eiHdTtdtUxxqrtNysG1Ur":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onCollision"},"m-YNjQfyX0ySVxySjrPbD":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onDestroyEvent"},"K3eaO611Diwlg41C4hSmN":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#overlaps"},"DQKsMMVS6pUZrF7Yk5BdC":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#postDraw"},"AXQIY3FXEO7eqtis37RcK":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#preDraw"},"_iveh8GNch1m8YIcSvhd8":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#recalc"},"5PLYbz3ZAY0rUrxCSmUvw":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#resize"},"jwEIuPzIvvwZGmD17yMCr":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#rotate"},"BPX1iyMwctDK8IX-NEQEE":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scale"},"7xsJydxbh0fd8q5esqSci":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scaleV"},"HoE3Kfk6YuPhikTWLQeuK":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setOpacity"},"qG_T9_dcS2GqmDNxuU47h":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setShape"},"_Lg2Np85aWzuLEzf8HZEW":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setVertices"},"IG7WA2ekW5mwXw3KrKqVd":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shift"},"6yl4X0O57XrW7PdTxlrP9":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#to2d"},"cuVUYkTlGft6RMVQkSbsz":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toIso"},"UHKx-Ib-4QhxZadhQ7M6k":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toPolygon"},"rrYeKPJS_Akp_rFPuPLbx":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#transform"},"DwbnJnKwdshBS6KQAiRXO":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#translate"},"MYzopSylHPy6nVsdNkA2x":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#union"},"YrjogLlhIfMUlLN9fSCLx":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#update"},"cxBMWuPAEitWDC7KgiWlj":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateBounds"},"aMnj7fzTzzxob--lFtgoy":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#draw"},"qBQj3hxrbTsmrSBPkcr0m":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onAnchorUpdate"},"uen1OZAEY70_yTFvkKAOx":{"uri":"/melonJS/docs/melonjs/Compositor.html"},"d4_8epZ57i7rOnzPhRO91":{"uri":"/melonJS/docs/melonjs/Compositor.html#attributes"},"HfuRChHTYMoIg3tugC_sj":{"uri":"/melonJS/docs/melonjs/Compositor.html#currentShader"},"CCB9VPm5wHhG-vl53da8r":{"uri":"/melonJS/docs/melonjs/Compositor.html#defaultShader"},"kFxejhzl9QzOrNVhhocmW":{"uri":"/melonJS/docs/melonjs/Compositor.html#mode"},"hrI6bGghrFoRH4Icb4xNq":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexByteSize"},"tkxqyJSrAK_SLkDS6JYKY":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexData"},"mKfffpmNoUaPC6QC4tBta":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexSize"},"KhCqY46AIa6-qW6l8bIbE":{"uri":"/melonJS/docs/melonjs/Compositor.html#addAttribute"},"PQLGZTdjISKa-HW2bNTVR":{"uri":"/melonJS/docs/melonjs/Compositor.html#bind"},"x0N6gAoFs29p-6thjBvQP":{"uri":"/melonJS/docs/melonjs/Compositor.html#constructor"},"YVNesNEw_HEmH6ZJLc9pS":{"uri":"/melonJS/docs/melonjs/Compositor.html#flush"},"tC1VoWkurXSFlBh2RnW4L":{"uri":"/melonJS/docs/melonjs/Compositor.html#setProjection"},"o4AuVS1U7I-Os6-yO3xbm":{"uri":"/melonJS/docs/melonjs/Compositor.html#useShader"},"bL2FnZfIW4YAZuaP7dgYy":{"uri":"/melonJS/docs/melonjs/Container.html"},"fzzak2VffSH8BEEvgBNF3":{"uri":"/melonJS/docs/melonjs/Container.html#alpha"},"14HLgNYJHKqPFh1dQDQnq":{"uri":"/melonJS/docs/melonjs/Container.html#alwaysUpdate"},"Er8LA6RY3QiLurTLd5vXY":{"uri":"/melonJS/docs/melonjs/Container.html#ancestor"},"6GhZEQZRrfsdkNg9JdbAi":{"uri":"/melonJS/docs/melonjs/Container.html#anchorPoint"},"quxcAaby6_d_NPI3Aa2Ib":{"uri":"/melonJS/docs/melonjs/Container.html#autoDepth"},"FY8oS7LYhWfOECr_Q5mxD":{"uri":"/melonJS/docs/melonjs/Container.html#autoSort"},"ngZl4gZW_yLq8JcC_0gq2":{"uri":"/melonJS/docs/melonjs/Container.html#autoTransform"},"v_OizOXEdRj_xvmkhvcJg":{"uri":"/melonJS/docs/melonjs/Container.html#backgroundColor"},"r0HqdMHNdb2rbshTdHt1c":{"uri":"/melonJS/docs/melonjs/Container.html#blendMode"},"l80DFFyqSQfPtWTuwCl9C":{"uri":"/melonJS/docs/melonjs/Container.html#body"},"QlWDw9NE7pQ4raZtiGHBt":{"uri":"/melonJS/docs/melonjs/Container.html#bottom"},"ozv8rI1LWYSstS48t_hux":{"uri":"/melonJS/docs/melonjs/Container.html#centerX"},"UjvydB3Fa8HHaejVeXh4G":{"uri":"/melonJS/docs/melonjs/Container.html#centerY"},"u6sOsQ6UptpXNeHa7mmw3":{"uri":"/melonJS/docs/melonjs/Container.html#clipping"},"YaiK2GbWw_xOvlwT2Xfr6":{"uri":"/melonJS/docs/melonjs/Container.html#currentTransform"},"W67Vj0cq7c5jVDhPbQUxR":{"uri":"/melonJS/docs/melonjs/Container.html#depth"},"Ge51YWrOGj_0bRNLmWs-h":{"uri":"/melonJS/docs/melonjs/Container.html#enableChildBoundsUpdate"},"7AZDOKiulbmbvszTCXnTO":{"uri":"/melonJS/docs/melonjs/Container.html#floating"},"powmxQASKJfmyXeWT3KfT":{"uri":"/melonJS/docs/melonjs/Container.html#GUID"},"l1FC3y52gvih-sdlM2-O-":{"uri":"/melonJS/docs/melonjs/Container.html#height"},"GJl2wyN9Sf32wKrPkabIv":{"uri":"/melonJS/docs/melonjs/Container.html#inViewport"},"rzzB2YoFiiP-uECO5u-Qn":{"uri":"/melonJS/docs/melonjs/Container.html#isDirty"},"HA6JTOv7pFmu-i7YUk_3C":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedX"},"bU2CMDlYH5pVvbuGomn-q":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedY"},"V--3uHnGwiAK9N3C3mW5f":{"uri":"/melonJS/docs/melonjs/Container.html#isFloating"},"eMIetomN-YUVlIK-8YCgS":{"uri":"/melonJS/docs/melonjs/Container.html#isKinematic"},"M_StZYii3Cw6G-SQMfulx":{"uri":"/melonJS/docs/melonjs/Container.html#isPersistent"},"L2gkc2rxvkq8mBGmd510I":{"uri":"/melonJS/docs/melonjs/Container.html#left"},"JdH5pmEacafz5GET8fbVg":{"uri":"/melonJS/docs/melonjs/Container.html#mask"},"2RdngOafzVQsaEtmYFRdX":{"uri":"/melonJS/docs/melonjs/Container.html#name"},"irjiUDub_SuxRN-vPXtL3":{"uri":"/melonJS/docs/melonjs/Container.html#onVisibilityChange"},"nKMTwNHee_IuvOp4QmELv":{"uri":"/melonJS/docs/melonjs/Container.html#parentApp"},"8gZ1EjrOplSU90wgWSW0_":{"uri":"/melonJS/docs/melonjs/Container.html#points"},"4uLLteSMjAqKlXHb07myQ":{"uri":"/melonJS/docs/melonjs/Container.html#pos"},"pE0KZCyhTFN6dtJ1mO6io":{"uri":"/melonJS/docs/melonjs/Container.html#right"},"RDhwj4I5CxIemDN3zssT2":{"uri":"/melonJS/docs/melonjs/Container.html#root"},"REbcfnILFW_RVzBikMFgM":{"uri":"/melonJS/docs/melonjs/Container.html#shader"},"0BGleDi1UR0Gzdn3N86bX":{"uri":"/melonJS/docs/melonjs/Container.html#sortOn"},"v-uljs_05CVre7JaDenbQ":{"uri":"/melonJS/docs/melonjs/Container.html#tint"},"fZRt7ft-7XUoCbWo9RDaF":{"uri":"/melonJS/docs/melonjs/Container.html#top"},"CABRMLAn241Aox-rpAbQD":{"uri":"/melonJS/docs/melonjs/Container.html#type"},"LZQXCwEwDh3duZthHGFKN":{"uri":"/melonJS/docs/melonjs/Container.html#updateWhenPaused"},"qz97Yb2uzBE771-KMhLPH":{"uri":"/melonJS/docs/melonjs/Container.html#width"},"vblqzw79Ki77EZ3WMiK_n":{"uri":"/melonJS/docs/melonjs/Container.html#addChild"},"8-82u3C8RPsI0Ebn8kSPG":{"uri":"/melonJS/docs/melonjs/Container.html#addChildAt"},"SppEdU4FnQAnxGDGrDdN7":{"uri":"/melonJS/docs/melonjs/Container.html#angleTo"},"GskuZ0Zz46O4I-a1dZuHL":{"uri":"/melonJS/docs/melonjs/Container.html#centerOn"},"_0heJ0FEmlDw-zVhb4rbx":{"uri":"/melonJS/docs/melonjs/Container.html#clone"},"IXL4VqwXspJXnZwSBlj_X":{"uri":"/melonJS/docs/melonjs/Container.html#constructor"},"1plDre1zXiJ-x33HLw0_d":{"uri":"/melonJS/docs/melonjs/Container.html#contains"},"HHcHd-dQX_M7VU1DSAprf":{"uri":"/melonJS/docs/melonjs/Container.html#copy"},"n5qM3F9x-1OxRxAFtlx2-":{"uri":"/melonJS/docs/melonjs/Container.html#distanceTo"},"b8qzoR9U3t9pWOtasSDlN":{"uri":"/melonJS/docs/melonjs/Container.html#equals"},"z-vFO5BkhZVgeia4ckp7s":{"uri":"/melonJS/docs/melonjs/Container.html#flipX"},"46P9ltcKrN8jwtOHRHUqi":{"uri":"/melonJS/docs/melonjs/Container.html#flipY"},"C2-FtDakzA_ptVWVadNeU":{"uri":"/melonJS/docs/melonjs/Container.html#forEach"},"Di3EMcpT9Wa6ATA21S5vS":{"uri":"/melonJS/docs/melonjs/Container.html#getAbsolutePosition"},"1ouYMoepsLvZw8Ie_Tnxd":{"uri":"/melonJS/docs/melonjs/Container.html#getBounds"},"HBtAkel8x7hwWiOI-uuPe":{"uri":"/melonJS/docs/melonjs/Container.html#getChildAt"},"i4G1TrhChwbDH3gy3C2wD":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByGUID"},"gcXIpRWRQbEbDtf5k2vN_":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByName"},"8FxPmMHlmhu7mT7KK6x5D":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByProp"},"NedoU0Y7j6FB_xaqFsD5e":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByType"},"ENr7c81VxHRumulsJBM76":{"uri":"/melonJS/docs/melonjs/Container.html#getChildIndex"},"9H9-8XEpWSnZMDjWPLLHm":{"uri":"/melonJS/docs/melonjs/Container.html#getChildren"},"lDZPin6Y2jRsKe95pFQk7":{"uri":"/melonJS/docs/melonjs/Container.html#getIndices"},"j5F1DS3WXceCcR_J8nVg_":{"uri":"/melonJS/docs/melonjs/Container.html#getNextChild"},"guVkJQYrhsgUPTDfPt_kh":{"uri":"/melonJS/docs/melonjs/Container.html#getOpacity"},"0HphEVJwwjol3XO86LTzw":{"uri":"/melonJS/docs/melonjs/Container.html#getRootAncestor"},"OgENHUKCCvqOY13wMUVA8":{"uri":"/melonJS/docs/melonjs/Container.html#hasChild"},"a6cvlkAWeo-hEH1p1JTyn":{"uri":"/melonJS/docs/melonjs/Container.html#isAttachedToRoot"},"D-UgOKZyzwbOnNMplPO5B":{"uri":"/melonJS/docs/melonjs/Container.html#isConvex"},"6LXFQDZ1kRRT0ak7v_wfg":{"uri":"/melonJS/docs/melonjs/Container.html#isFinite"},"drcWtaGQ5HDSU6Km0FRM6":{"uri":"/melonJS/docs/melonjs/Container.html#lookAt"},"KVRrUblk2bigmDS2OMQoW":{"uri":"/melonJS/docs/melonjs/Container.html#moveDown"},"FxHz-Vjdjbn89iQItY26n":{"uri":"/melonJS/docs/melonjs/Container.html#moveToBottom"},"2dr4lnYO_6g07IJeMAyUx":{"uri":"/melonJS/docs/melonjs/Container.html#moveToTop"},"hcwtahS-k2TJRhvU96677":{"uri":"/melonJS/docs/melonjs/Container.html#moveUp"},"0DD5oDkDkV-jM9ozqyW9R":{"uri":"/melonJS/docs/melonjs/Container.html#onChildChange"},"rL2a0cC03hqwyAUnwFPU-":{"uri":"/melonJS/docs/melonjs/Container.html#onCollision"},"5ZzqB73QKCNqsbAZCTgzs":{"uri":"/melonJS/docs/melonjs/Container.html#onDestroyEvent"},"YNl5A40Hun-lCMgXiyi1T":{"uri":"/melonJS/docs/melonjs/Container.html#overlaps"},"lvaMhjF1GVZF9WcxtXhGy":{"uri":"/melonJS/docs/melonjs/Container.html#postDraw"},"v4q13klQAM7zfJhNlFixx":{"uri":"/melonJS/docs/melonjs/Container.html#preDraw"},"0ehrhw5hkBhLBvCkltHUy":{"uri":"/melonJS/docs/melonjs/Container.html#recalc"},"ZXCdAcghkB93onA_t1SWR":{"uri":"/melonJS/docs/melonjs/Container.html#removeChild"},"9ur9hEG7cBqM7bxz5Z7cD":{"uri":"/melonJS/docs/melonjs/Container.html#removeChildNow"},"UO8irbeoZf0tQgsXVNnhT":{"uri":"/melonJS/docs/melonjs/Container.html#reset"},"GOHLAuvz4W6jfarc8RfdT":{"uri":"/melonJS/docs/melonjs/Container.html#resize"},"mNgU2pHIleMmMdDWatkOT":{"uri":"/melonJS/docs/melonjs/Container.html#rotate"},"f2U-A3lwiGpCJJgGmVDQw":{"uri":"/melonJS/docs/melonjs/Container.html#scale"},"fnCxyAiZ6HHe0ZWKn7AL9":{"uri":"/melonJS/docs/melonjs/Container.html#scaleV"},"boYCq5BOXlGtr7SggVaRN":{"uri":"/melonJS/docs/melonjs/Container.html#setChildsProperty"},"OLsQnUNQcGUb-bquOEPLM":{"uri":"/melonJS/docs/melonjs/Container.html#setOpacity"},"8vIEBXrrDgK4mv6Cu4iy6":{"uri":"/melonJS/docs/melonjs/Container.html#setShape"},"lHa4B1GR1BaWtweC_AQOG":{"uri":"/melonJS/docs/melonjs/Container.html#setVertices"},"4qesxtgGK16bqjrqYbE3k":{"uri":"/melonJS/docs/melonjs/Container.html#shift"},"umV8PbOGvwuxjmgNar4pZ":{"uri":"/melonJS/docs/melonjs/Container.html#sort"},"4RrPujolCAeeJQszBa_CY":{"uri":"/melonJS/docs/melonjs/Container.html#swapChildren"},"Nv25OQ8QjaVAfhNVYYi85":{"uri":"/melonJS/docs/melonjs/Container.html#to2d"},"smyaGPN2dwNWcgbOQyIid":{"uri":"/melonJS/docs/melonjs/Container.html#toIso"},"NGKoglGG8Kf0LfGjL9kaH":{"uri":"/melonJS/docs/melonjs/Container.html#toPolygon"},"WcZjGWC-Fh7q2AO4glsH9":{"uri":"/melonJS/docs/melonjs/Container.html#transform"},"4cR8WjwYuLrvSHe-7lPIU":{"uri":"/melonJS/docs/melonjs/Container.html#translate"},"g3QE1oIrwt_uCxXo2sRkU":{"uri":"/melonJS/docs/melonjs/Container.html#union"},"x2FndWRQmMFNeBQeSbSNb":{"uri":"/melonJS/docs/melonjs/Container.html#updateBounds"},"Iji3vTScxTqWpA0s1vbBd":{"uri":"/melonJS/docs/melonjs/Container.html#draw"},"DsDbrYm9eX8YBd1lmp3La":{"uri":"/melonJS/docs/melonjs/Container.html#update"},"0kOkZT3jxXGDw3hk730KC":{"uri":"/melonJS/docs/melonjs/Container.html#onAnchorUpdate"},"MV9B1x--mTmPTSNoXyYTy":{"uri":"/melonJS/docs/melonjs/Detector.html"},"S9bsPQaW6tCmF_PQvfp3E":{"uri":"/melonJS/docs/melonjs/Detector.html#response"},"Gij6a4yUoagZxD5gisQTG":{"uri":"/melonJS/docs/melonjs/Detector.html#collides"},"V3hSUh75VriZjdYqPEJZq":{"uri":"/melonJS/docs/melonjs/Detector.html#constructor"},"11sDXeME_JludkYO0oJBS":{"uri":"/melonJS/docs/melonjs/Detector.html#shouldCollide"},"ny6ru4IYtwpbxwfPZKE3c":{"uri":"/melonJS/docs/melonjs/Draggable.html"},"E7t_Qpz56bf-WcLH0qA0P":{"uri":"/melonJS/docs/melonjs/Draggable.html#alpha"},"zfaOkhl596akrjaXsjEb1":{"uri":"/melonJS/docs/melonjs/Draggable.html#alwaysUpdate"},"_DEcanDFS7pbDIOGewztB":{"uri":"/melonJS/docs/melonjs/Draggable.html#ancestor"},"418lLk0pMS2M_8MA5dzU_":{"uri":"/melonJS/docs/melonjs/Draggable.html#anchorPoint"},"qJrc87EDJQBA70CItHjdY":{"uri":"/melonJS/docs/melonjs/Draggable.html#autoTransform"},"in9prPd5Co245RobCErkw":{"uri":"/melonJS/docs/melonjs/Draggable.html#blendMode"},"xotldL-DL9PtqDkwNiHXY":{"uri":"/melonJS/docs/melonjs/Draggable.html#body"},"oPZKVRKisVrxronpWqW0j":{"uri":"/melonJS/docs/melonjs/Draggable.html#bottom"},"pKhOtCPM-vd_UvdE8bDtJ":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerX"},"zhGmTD5wZj2QA0B19wm1B":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerY"},"wb46YcSQR2gNOTOEISxuf":{"uri":"/melonJS/docs/melonjs/Draggable.html#currentTransform"},"DARecPRZbctbldJsCmyPo":{"uri":"/melonJS/docs/melonjs/Draggable.html#depth"},"AxktB_g5zPgyHrP86rnJD":{"uri":"/melonJS/docs/melonjs/Draggable.html#floating"},"TLg3ibFjyICLpXxkquGhj":{"uri":"/melonJS/docs/melonjs/Draggable.html#GUID"},"H1UlzmH4Ru4uzHSzS2Cuv":{"uri":"/melonJS/docs/melonjs/Draggable.html#height"},"JjvgK1abKdgrUg1Fl0Sfy":{"uri":"/melonJS/docs/melonjs/Draggable.html#inViewport"},"LINCS4z8QTAxo1JJW9FBx":{"uri":"/melonJS/docs/melonjs/Draggable.html#isDirty"},"LCD-G6voIQ9MYw2v04ffF":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedX"},"uDvsKPzJhUjHiep98V9FD":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedY"},"EG-YT9O9teTy0EopN-Ghj":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFloating"},"OQjgdlGW0VfnSaH3LQd2W":{"uri":"/melonJS/docs/melonjs/Draggable.html#isKinematic"},"1qzNSkhNmOLR_PYKDuQz0":{"uri":"/melonJS/docs/melonjs/Draggable.html#isPersistent"},"j261dbBFSY139n5eF_oAG":{"uri":"/melonJS/docs/melonjs/Draggable.html#left"},"CUVj0IhrzFF92jyFSWywI":{"uri":"/melonJS/docs/melonjs/Draggable.html#mask"},"dNNC3SEBgoMc5jPxLtq8O":{"uri":"/melonJS/docs/melonjs/Draggable.html#name"},"rnYooGzCFcx-sfym86NLV":{"uri":"/melonJS/docs/melonjs/Draggable.html#onVisibilityChange"},"X5Eg8baB2ZOmceusd8Zu9":{"uri":"/melonJS/docs/melonjs/Draggable.html#parentApp"},"Q3SbzRxvagDXuvF6ZdWjk":{"uri":"/melonJS/docs/melonjs/Draggable.html#points"},"OuFT9c47e7EQWcP7Cmsw6":{"uri":"/melonJS/docs/melonjs/Draggable.html#pos"},"5v6Kj9VpfJoyH1T5iDh0u":{"uri":"/melonJS/docs/melonjs/Draggable.html#right"},"ylQCM7tFzAK-dntZGrPsY":{"uri":"/melonJS/docs/melonjs/Draggable.html#shader"},"Pi8-ZAMpHPdSyy0SMGq0Y":{"uri":"/melonJS/docs/melonjs/Draggable.html#tint"},"gpIBRlarjGOTexrZYBlAw":{"uri":"/melonJS/docs/melonjs/Draggable.html#top"},"R5IHzBtLUeY5GZ3ma6SAS":{"uri":"/melonJS/docs/melonjs/Draggable.html#type"},"w04_0OgjwEBX0INuAFqMT":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateWhenPaused"},"J0r4n0bMYgMLywLLkEMEX":{"uri":"/melonJS/docs/melonjs/Draggable.html#width"},"nXPTOVZeYnde9jNBO8ZqO":{"uri":"/melonJS/docs/melonjs/Draggable.html#angleTo"},"J30NX7BaivFIwXxn4Mj7-":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerOn"},"_vAs43Vjlx0n1Dz-Vtf1e":{"uri":"/melonJS/docs/melonjs/Draggable.html#clone"},"2-Dhp4uxiv2VShf4KqUfk":{"uri":"/melonJS/docs/melonjs/Draggable.html#constructor"},"OtN2w8lcmnmPFTUTv5_2q":{"uri":"/melonJS/docs/melonjs/Draggable.html#contains"},"8kcT6weL0gxXN4BB2Nwbt":{"uri":"/melonJS/docs/melonjs/Draggable.html#copy"},"8CHbJh1jsDr_wQwYes7gw":{"uri":"/melonJS/docs/melonjs/Draggable.html#distanceTo"},"WoCt2DVwWwNuqElVhTE2a":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragEnd"},"GLW2Gi3eQjpkwU0x7xXEc":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragMove"},"QsvmxlZl3sPRmyrMw8hwd":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragStart"},"4D5tVPusvCWFrbmniuRg1":{"uri":"/melonJS/docs/melonjs/Draggable.html#draw"},"4L2feQpyYtbVlSZ9dkXhr":{"uri":"/melonJS/docs/melonjs/Draggable.html#equals"},"YePazmqBPEizZbQqpKaaJ":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipX"},"PxD6YSxOuwgfNrb3llTIC":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipY"},"53r-c8sRv6JtFaodfQp4c":{"uri":"/melonJS/docs/melonjs/Draggable.html#getAbsolutePosition"},"Dhovb1eDEda5yQvloiUDW":{"uri":"/melonJS/docs/melonjs/Draggable.html#getBounds"},"-X6CogYC7edBW-idTcmdE":{"uri":"/melonJS/docs/melonjs/Draggable.html#getIndices"},"4aJDPagAg3pa6_9HO2dFt":{"uri":"/melonJS/docs/melonjs/Draggable.html#getOpacity"},"xR51PIFCCK3H7KPptVaim":{"uri":"/melonJS/docs/melonjs/Draggable.html#isConvex"},"KpECH7T52zE3c-ZyyA7Pe":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFinite"},"Xl5ZEGfg1EsvHZ3Us84uW":{"uri":"/melonJS/docs/melonjs/Draggable.html#lookAt"},"1gb3wu7bY8yUFTaNY-9oJ":{"uri":"/melonJS/docs/melonjs/Draggable.html#onCollision"},"IzGSkB8pCKp5zxrDyRlL4":{"uri":"/melonJS/docs/melonjs/Draggable.html#onDestroyEvent"},"By1FuRoeVklmCKvuroLOU":{"uri":"/melonJS/docs/melonjs/Draggable.html#overlaps"},"eyX7hFD3kCUlqPdbJUbqH":{"uri":"/melonJS/docs/melonjs/Draggable.html#postDraw"},"Gwd9Se58xC4E-yMNIQ2I_":{"uri":"/melonJS/docs/melonjs/Draggable.html#preDraw"},"iaJbJGCBZIJUFEiKorsvr":{"uri":"/melonJS/docs/melonjs/Draggable.html#recalc"},"9ejLxvbXlvF3zSQdI6pwS":{"uri":"/melonJS/docs/melonjs/Draggable.html#resize"},"7s-nflmWgYLM6nZR7WstI":{"uri":"/melonJS/docs/melonjs/Draggable.html#rotate"},"D8HzphGD5BJ_giiGg9nly":{"uri":"/melonJS/docs/melonjs/Draggable.html#scale"},"WuQFXftSwjem8N_o6mDIF":{"uri":"/melonJS/docs/melonjs/Draggable.html#scaleV"},"N_ANyo-V1XQCMzUStv75M":{"uri":"/melonJS/docs/melonjs/Draggable.html#setOpacity"},"98WMxqj2zY6LjFoXhJ0Gp":{"uri":"/melonJS/docs/melonjs/Draggable.html#setShape"},"38hOA2gB7Im74P9pZ7xQ0":{"uri":"/melonJS/docs/melonjs/Draggable.html#setVertices"},"gQd_0p1cx1k2HSppPlnn_":{"uri":"/melonJS/docs/melonjs/Draggable.html#shift"},"eCNBMCsl6mvW_bSvJOZmf":{"uri":"/melonJS/docs/melonjs/Draggable.html#to2d"},"t2yRhet8IwWPrxq57Jm3I":{"uri":"/melonJS/docs/melonjs/Draggable.html#toIso"},"uHJ4pXohBkjBGkP7AHLki":{"uri":"/melonJS/docs/melonjs/Draggable.html#toPolygon"},"JiiPt5UwA0m-HG_iTvfsu":{"uri":"/melonJS/docs/melonjs/Draggable.html#transform"},"TgPoqytbO3OZETV2X22T6":{"uri":"/melonJS/docs/melonjs/Draggable.html#translate"},"tkeMC-gG-RLtqAKCVALcs":{"uri":"/melonJS/docs/melonjs/Draggable.html#union"},"3Bn4NL6g3X_kGZXWqwp2k":{"uri":"/melonJS/docs/melonjs/Draggable.html#update"},"YU9LAPJRGS3RA_06YJvDe":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateBounds"},"8-sh1A8-bGk1kNiXAuYcG":{"uri":"/melonJS/docs/melonjs/Draggable.html#initEvents"},"GZC0K3QEr7XUQhrnqfncn":{"uri":"/melonJS/docs/melonjs/Draggable.html#onAnchorUpdate"},"Tgmx1jNdM8UBHTIOUDeHr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html"},"A0e044i6Nbi5Hvm1F05sL":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alive"},"4_GHxSLyYcXQRgX7Ou5Zy":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alpha"},"pU4UF0Sb6oDwN5o2-ZDGH":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alwaysUpdate"},"9iWuGcs2EOFSpe3UOY2a2":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#ancestor"},"fC9Lch_znDt0wAhImC41X":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#anchorPoint"},"WckgtBTSz3Ylsgz53yl45":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#autoTransform"},"v1iL9m_-VC7UqQ4ZpaA9n":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#blendMode"},"cm0e138zKjezEuWvNbwsW":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#body"},"EjDQHbQeCRi5S6vmWRGLg":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#bottom"},"g7BGJ2uQDMepOI8f1ZaaP":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerX"},"1jkuPPVZPMQ9KE6kggrCw":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerY"},"NrOhrwqYqUSiHzxAySwT4":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#currentTransform"},"LzHofBGA9dlRnPqDH70Td":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#depth"},"G0dlPpYfGHVwm4ZhcHTdy":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#floating"},"7fEE3f9dIhox1m_KRZH6t":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#GUID"},"7hxNmX3ig9wcMTUw8Bqkl":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#height"},"-CfLLILjti4vFf2XmVTuk":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#id"},"rlplOj5p3MyLCd7LwuAxj":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#inViewport"},"ssdev0bSiojaxcME_QH4Y":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isDirty"},"EB_RrAXEQw1PLsmCuQsNR":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedX"},"7dlu2D1w1ClwmKfnZpcpc":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedY"},"G6DpV0NiuZciUBW9XGs8o":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFloating"},"Rw8pSDiXxA0KHN6NFdQjz":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isKinematic"},"uhF5khtCBwSpo5HLuli4v":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isPersistent"},"uUMfJuJJJ4KTp3N7Hth9Z":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#left"},"Y848hPEFwCZwkUj67TS80":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#mask"},"wXNdgFNaPanK7hO7f6QnV":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#name"},"04R3efhcK-sHYaXKpetWe":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onVisibilityChange"},"0Fo0a8w9Ma41zN6vYNz8_":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#parentApp"},"u5jE_iHhloBTlAroMPyev":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#points"},"BfibiDqjQzjsvBk4DQ9xR":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#pos"},"RyaWcu1YM0DMjPErKeqLa":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#renderable"},"t8Z0ZWJqajowkyGhknrM4":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#right"},"c-RlDiD1qsTwQGWW_0mPY":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shader"},"9d1f2OE6WmZQHpM8ceIej":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#tint"},"Yk7HU41UzyG5iKnoFY6SG":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#top"},"FEkVSZaPPlpg0WqoiA9UJ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#type"},"j-6UQRGQSo1tvwunpj6uo":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateWhenPaused"},"atg2b3UnIT539KabcfoA-":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#width"},"yXvbTF9PsAb_hAEY-cCRZ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#angleTo"},"x617N8tQ1vkKGut9X_hqI":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerOn"},"BRLzOZQ_k8iBCGxVg8mys":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#clone"},"Okv0ihQIJAhkHQ3WUZFTV":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#constructor"},"pM4QMWH8_58CTBDZL216H":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#contains"},"B7QYtGR7bcOJfOVGUHsHL":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#copy"},"vDa1tDaiO1D0ZkwZldQ6x":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#distanceTo"},"L_Hhro8relSqHEjS2CtaE":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#equals"},"0UMb-TyBX2GJECnTY1m1P":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipX"},"opJYmhYF8l8YIApuDIqCo":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipY"},"looafGnDZ3jql0EGw_F7M":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getAbsolutePosition"},"CXpc46t91M54GU4Pi92Ro":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getBounds"},"88j18Y2akTlRkBofIXQ1D":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getIndices"},"s-aYPGaLjP0XQFTdJonH0":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getOpacity"},"aKQzJPao7OG9GkKKO2HNN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isConvex"},"pzYbQAOcbmIywzSd_txGN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFinite"},"9JX8qb-j8PhmmB2w7f04Z":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#lookAt"},"Pf16W0RdKxodhPLuIGWj7":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onBodyUpdate"},"WvI2F_9r_GAMTrKcwfoY9":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onCollision"},"BFXYJpvKKNn0QIs9aDZcQ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDeactivateEvent"},"iYbzH3HcP7J2_SxcflsqN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDestroyEvent"},"42p5MDVbvCufjPeDf_dRl":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#overlaps"},"S-zgykrvJfW2WaNnPGset":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#postDraw"},"9AYTNiTZlqsYuNT1cBuRm":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#preDraw"},"MV0Orpgy72u_K9wd5yZoJ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#recalc"},"On3o1NBUrJh-fnQAVtEJx":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#resize"},"PTIea8avAtgM_U2rl_mYK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#rotate"},"p2tiGMFSCT8q3QHQsaxft":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scale"},"p6yNjdusS3zRI_88FWIIr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scaleV"},"v7pwQh5FibC7dVu6NrfO_":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setOpacity"},"KGZ6A1pOj3zypH6-qSV9K":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setShape"},"ztfo2qDotQRG9Pkbwkj8G":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setVertices"},"wa9UBnmWn44rRkqarZ7bG":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shift"},"_ykQW8kHnWxebGNbf4jRw":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#to2d"},"PPLyclcAyZtBHQQF0R2u2":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toIso"},"SoQG3ji76A6bfWuln4oI7":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toPolygon"},"pwgt2VSLXHLARX4JhY9r5":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#transform"},"ULhX78y_avzVCS0XkuH8h":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#translate"},"QD32meDYTDnc1ELXVCRgu":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#union"},"Uf0MG0OfAV9zF22zkTAjS":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#update"},"WS4HGbI0fMcDvtODbSdnC":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateBounds"},"BWY8Wo23zQmozEpL69ur2":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#draw"},"7LpZTB8BlrzCAP_Rt_UWz":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onAnchorUpdate"},"HU-vcKNeh4acdiNMeXOiX":{"uri":"/melonJS/docs/melonjs/DropTarget.html"},"S0qQLrLlqCDRf3fhD4F1r":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alpha"},"NrbZ-Z4y5qCpg3Mee4WeZ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alwaysUpdate"},"I6dFBa_MRi2zQ2iFEqETL":{"uri":"/melonJS/docs/melonjs/DropTarget.html#ancestor"},"otSEwvvQ75KWfJpi3Z4_n":{"uri":"/melonJS/docs/melonjs/DropTarget.html#anchorPoint"},"gNrr9ledlhaF2PXAsAhrZ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#autoTransform"},"q1palaR5awLhyWvLfhmp3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#blendMode"},"Jk3-ppiG7HUUMBFidetQ3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#body"},"jVZkNVNZxurYJCLsAMnQK":{"uri":"/melonJS/docs/melonjs/DropTarget.html#bottom"},"u-H-C6sIKdLnAwTQGX9_a":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerX"},"sALYkdqnvlOpM6V0ljMyL":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerY"},"Oji8rHal4b9HKX-HLuu64":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkMethod"},"Htl3FtksXKGU2SKstaMxk":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_CONTAINS"},"1fcdHDpFdtbOX5gsL-qhD":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_OVERLAP"},"pujxV1N6BlXgYcvck1PGv":{"uri":"/melonJS/docs/melonjs/DropTarget.html#currentTransform"},"qMhHlfdlmStp-afgnEg48":{"uri":"/melonJS/docs/melonjs/DropTarget.html#depth"},"qAAZfH4VzlwUtoOAcOEd8":{"uri":"/melonJS/docs/melonjs/DropTarget.html#floating"},"s2_G5Kfb0f16ZRZpBz3zu":{"uri":"/melonJS/docs/melonjs/DropTarget.html#GUID"},"0jltblCGToALUfJcwfYDk":{"uri":"/melonJS/docs/melonjs/DropTarget.html#height"},"_tNe0L_kh2dGzlK_DW7zV":{"uri":"/melonJS/docs/melonjs/DropTarget.html#inViewport"},"PSS_EpGqwZqLs2VNLHZvW":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isDirty"},"SDCVdHxbqgEBp3Xdt97uU":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedX"},"3cAlYM3ie1_FtrN1lj8L1":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedY"},"ydlZ0OIjJo0Yu6zcbDv_F":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFloating"},"eT6TfZc8NAf2BU3-UP5DF":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isKinematic"},"5lpWVX8tP2ruUuTaI5W2l":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isPersistent"},"bsLKUpeYWFXLcx1tz8wAp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#left"},"ab5nKrhfAAIIMkaVWoqAb":{"uri":"/melonJS/docs/melonjs/DropTarget.html#mask"},"kXBgJvqgNi4abx1z6W-3p":{"uri":"/melonJS/docs/melonjs/DropTarget.html#name"},"2plmingSnV-YwKdMo7WAC":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onVisibilityChange"},"4k4SEqZWikNo0wqcNhaMw":{"uri":"/melonJS/docs/melonjs/DropTarget.html#parentApp"},"tHqFyIOi1_ZlXe4M8t4fP":{"uri":"/melonJS/docs/melonjs/DropTarget.html#points"},"PiugxYpfO40_J_EkcSiqM":{"uri":"/melonJS/docs/melonjs/DropTarget.html#pos"},"Ktdqa32-A99vSaATjOUIA":{"uri":"/melonJS/docs/melonjs/DropTarget.html#right"},"x7564ktd7Qq6eC-ktP93i":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shader"},"15G7u9eCskIBSxVdAK194":{"uri":"/melonJS/docs/melonjs/DropTarget.html#tint"},"0Ydd6wJ0IX7aCZBq0c_iK":{"uri":"/melonJS/docs/melonjs/DropTarget.html#top"},"U3LXqiFSpR0P_UHt25k1V":{"uri":"/melonJS/docs/melonjs/DropTarget.html#type"},"mFpdUzwrWhL6F1hzV4XXX":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateWhenPaused"},"KIEKyrJDVe7XAhuNoQofV":{"uri":"/melonJS/docs/melonjs/DropTarget.html#width"},"QWDFmimHiFR8rMfCrD-IC":{"uri":"/melonJS/docs/melonjs/DropTarget.html#angleTo"},"6eziQS6o-Y9MzZzrDpb_3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerOn"},"fWDqpr5Kopn9geaHJ9Zca":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkOnMe"},"lKAAtDO-ejn6GRL--TK0B":{"uri":"/melonJS/docs/melonjs/DropTarget.html#clone"},"S3g8RUJAObrGYHVnfayFX":{"uri":"/melonJS/docs/melonjs/DropTarget.html#constructor"},"XCHxjb4qq0dxIPMLT4rFf":{"uri":"/melonJS/docs/melonjs/DropTarget.html#contains"},"RlrHsc2hrb59fBVUpzpuD":{"uri":"/melonJS/docs/melonjs/DropTarget.html#copy"},"x6NzIa_0IFVqlQgCmBjvH":{"uri":"/melonJS/docs/melonjs/DropTarget.html#distanceTo"},"xEz_kkH2LffXLeVkHYS12":{"uri":"/melonJS/docs/melonjs/DropTarget.html#draw"},"Vmxw4T4GmR2gVqGm3UAUv":{"uri":"/melonJS/docs/melonjs/DropTarget.html#drop"},"btYTnhz8CkpE5_gYKkcS7":{"uri":"/melonJS/docs/melonjs/DropTarget.html#equals"},"iqQ36nD8Dl_per6uXOKUd":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipX"},"83NpykqMNk2DWjAUq4uyE":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipY"},"dBes9aVklU3fNIJ1T2s2C":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getAbsolutePosition"},"M_PkTb5I5ZQxvMYx5JOiX":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getBounds"},"qmwaDIFl9-LQVmXbMLlcW":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getIndices"},"e2zy38sf-C0KHHpn_tqGb":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getOpacity"},"K7vRkpkNnkkNjKK9BqNLf":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isConvex"},"kPs3CE8Dh3bGNl8q-A8sm":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFinite"},"aQgY80eBP1E5IEy-38-5f":{"uri":"/melonJS/docs/melonjs/DropTarget.html#lookAt"},"IOoswJIArKL572vnttE0h":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onCollision"},"Y_pzBP_LrJRNZEBOXl56z":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onDestroyEvent"},"7KG788TKGbrhDbnWAX31L":{"uri":"/melonJS/docs/melonjs/DropTarget.html#overlaps"},"6zs06C91tVng6KZCx6pGw":{"uri":"/melonJS/docs/melonjs/DropTarget.html#postDraw"},"UrsY8EBhw-IUppvnn0Jzd":{"uri":"/melonJS/docs/melonjs/DropTarget.html#preDraw"},"MAuYD9A8OJ-7P1kkZGCrD":{"uri":"/melonJS/docs/melonjs/DropTarget.html#recalc"},"VNElMsCtHcNrHjjbLpqtO":{"uri":"/melonJS/docs/melonjs/DropTarget.html#resize"},"pGcD0ttVW7ixFxM5lVOeq":{"uri":"/melonJS/docs/melonjs/DropTarget.html#rotate"},"QKfkF-zsEg7PbR-aS9ePs":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scale"},"dFOlbpNABqhiLW99nPjUg":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scaleV"},"2YFB9_GV-jDkw282xXlsN":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setCheckMethod"},"Aj_dPx7Iswv07wDd7LT15":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setOpacity"},"tZGAxg27bOqfkoa11hgso":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setShape"},"W8lNTU3KTlPui0rt8UYH0":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setVertices"},"Z8bdWLEqdVdd8s5KTaLHX":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shift"},"780YFAwfrBeEiXB-KAto-":{"uri":"/melonJS/docs/melonjs/DropTarget.html#to2d"},"9sZOVAJfX_JlTVNePDzzI":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toIso"},"P-5qb3Uy6mLesgS60u0d_":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toPolygon"},"OFwmq8BLod2-65fTqXAfp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#transform"},"7hIrkJkAoM9Ww-R49o8bo":{"uri":"/melonJS/docs/melonjs/DropTarget.html#translate"},"odDm7DKELwtJzAD3lAZkd":{"uri":"/melonJS/docs/melonjs/DropTarget.html#union"},"Vnk2ugfU0sAIeWmScsvZr":{"uri":"/melonJS/docs/melonjs/DropTarget.html#update"},"5L92pGp1B-mEexkCsyJS3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateBounds"},"gccmW6bLRT9afaADr3WeQ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onAnchorUpdate"},"2BCEZUx0I4fj2ESx3eMrj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html"},"YUFVU-LmgQMVIjwfLGiJb":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alive"},"0uX_UX6CDJFQ1ngJfkfHl":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alpha"},"NR01xInTPt2_NIlI-YbXt":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alwaysUpdate"},"FfIu6HQAhSYPuKRhbMah6":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#ancestor"},"jC_l7EfHi-QVi3DmVQ3Il":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#anchorPoint"},"C33hgeNXdh-vHpR_blxKk":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#autoTransform"},"HzV3P8WIZXKcYWpKp7TkS":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#blendMode"},"_ndlupoTqVdGdMAhEI81y":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#body"},"FP7SxCoGdvBmttbf0WvnE":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#bottom"},"Jn-w-K0UKxVnNZi-lO4FT":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerX"},"iHCZB1FPZIMf5QTMnuLLm":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerY"},"WYuXrmm_5p4OGSAQm8sRy":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#currentTransform"},"TU84ELGh35Na-0T59mvWP":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#depth"},"o3Va8g0nMjtcVM25BnnW5":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#floating"},"OdnIWKMhXEUpVYm7p960f":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#GUID"},"xWVmAzApxj60HO4CAK4kl":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#height"},"81by_OLkwKHN7OELhlt9C":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#id"},"AYtPwa3-xsoeoyqCzbyVn":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#inViewport"},"N-ruCM7f3QVPyXidBLVqV":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isDirty"},"VGbtB0yZrnl_vUKtbC-bg":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedX"},"CPtKfS7ZW2UMsKwBTb4Py":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedY"},"8vntxE5FPo9CGi5qCHsrK":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFloating"},"A-U_CiX8SK5un8KBSbG3X":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isKinematic"},"QM8ITM0yL4p7-ZEguawFW":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isPersistent"},"e-JSeHWiaP3-g0d7ebyQ1":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#left"},"9S0mki6GTl5oy27TBF10B":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#mask"},"yIRlD7xvkSZaj825mllPj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#name"},"I5NcG9JhWrT78VdhhcsbM":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onVisibilityChange"},"kNuQfdryRiF5pfOimpSaG":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#parentApp"},"j5hlFkHtKxoAZv2Xahakb":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#points"},"Lq0rS8SrdC04EPRvtCNqm":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#pos"},"tl3tCIov84pcfLt043mS8":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#renderable"},"K9PcSvEp7orKEhCldJIq0":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#right"},"Bv5ZRlbxizYOyFIEFMd5S":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shader"},"2TcYmbUD5IeLvlNfHebSl":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#tint"},"l0ofLFLgSueaZNNDrlEKD":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#top"},"itxmrfUr6O-rc1HYInrrM":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#type"},"7Q5nZLAlrpp2ALFxje73i":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateWhenPaused"},"vb0BVi5DRj0RAi7nfuW9B":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#width"},"3GRKdr_kMjShqUVaBUB1a":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#angleTo"},"PR3Ke9cBdjrU6LSASajpD":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerOn"},"qlb9mDj-SYX8mEZ3466jS":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#clone"},"LzF5YhTx-uouCQkBNufuP":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#constructor"},"-MNqm8m5xF5TF4NUXvwMH":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#contains"},"psxEQ_XYMnCeycy3GKpjR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#copy"},"Qh1I3kRP9IvC8qaM8zQ80":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#distanceTo"},"IfpDMWTFLL35COjqLXl7y":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#equals"},"QRl8s5m3zuZVuhSfuonHH":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipX"},"-sdFW2qPbzgH7p5MKoODO":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipY"},"HZzuH0g_l4_zix2J6JNj7":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getAbsolutePosition"},"OcikYRs-TAXtaepPokmyV":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getBounds"},"9gZlI6pCInagorK2zfc7l":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getIndices"},"_9yY8D514LyDhotaW_8Gv":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getOpacity"},"z80CxmRVxdp2VztZYX6Rs":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isConvex"},"uZ5ECTy-sOFtl3IjtKabR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFinite"},"CgPaDn6CJrLOU2LGte_qu":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#lookAt"},"hMJtQArdcouXRBETVtM1N":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onBodyUpdate"},"T79DbmQ0jUfSz9mlZLFn2":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onCollision"},"iynrM7_WhtBah6QymJb2l":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDeactivateEvent"},"xn9f-eA9RBqNQNM0WKDbd":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDestroyEvent"},"DOpz6BCPXBGAFUNptHUGy":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#overlaps"},"5fbOrdW8jmQiarE3r1Gbl":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#postDraw"},"SyVl1_H0KCWNGzySaCXTR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#preDraw"},"2gWfudhMZ4Q36VLHYvEdF":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#recalc"},"Pftzrm64mY4H7zs-wptB1":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#resize"},"nCf8pthDlEkX53Ghd2sjC":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#rotate"},"xVwmTSO8pwtmZi_loDMmp":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scale"},"JC9-6wlprdEO8PwQiRsQL":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scaleV"},"QBt-8KlH4HwHzTFm_ikdj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setOpacity"},"gfATZxiYJWM6yhnfFlgEN":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setShape"},"plOBYD11YX2dqy9zz983-":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setVertices"},"X5L75YpD3NMRmt0IX1PAC":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shift"},"4VajzA6sn_W31th8DmyWf":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#to2d"},"3wewkqpeOII5ENNSlGW2u":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toIso"},"I2G7FrKo2QafLiP7HFwx8":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toPolygon"},"0BJWBKdOCtjQFzayBr4FO":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#transform"},"gkfwyWpr2wuXevq5CCUjj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#translate"},"Paw9p1A0C_mlmkfUwYCOp":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#union"},"0QVxycPOwy5udP7buoI7v":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#update"},"SVYTJxAbYFJ5Wppc305o5":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateBounds"},"ldX44xxUAT6IOP6-Ruzph":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#draw"},"QBEsPwVE8Mozx8oEqyEz-":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onAnchorUpdate"},"ANrxbw3cERU8wvosqDl9B":{"uri":"/melonJS/docs/melonjs/Ellipse.html"},"Jb03-Vh1UWWglzhLssKQj":{"uri":"/melonJS/docs/melonjs/Ellipse.html#pos"},"3gj0XYfNOaAOxRBesauwX":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radius"},"rKO5hItC1Fd3cYNIAe3vq":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusSq"},"yMWeaboiNrmNHrWlfEEyO":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusV"},"s8xy8lD4jp8_7Dw_2E9If":{"uri":"/melonJS/docs/melonjs/Ellipse.html#ratio"},"BjK4zDba7W_9LjYcooe4s":{"uri":"/melonJS/docs/melonjs/Ellipse.html#type"},"PveqFnjj8cKuQEoy2gVOj":{"uri":"/melonJS/docs/melonjs/Ellipse.html#_bounds"},"BmmHxACLSD4OXmKkg1UHI":{"uri":"/melonJS/docs/melonjs/Ellipse.html#clone"},"KYzcEQLLEVqCyOXqcZKsM":{"uri":"/melonJS/docs/melonjs/Ellipse.html#constructor"},"C3WzjSZPFqil82K3G8bcw":{"uri":"/melonJS/docs/melonjs/Ellipse.html#contains"},"gGxGqkzBg-By1yoed1fwB":{"uri":"/melonJS/docs/melonjs/Ellipse.html#getBounds"},"2qrexcUtoyhL0YvE7NMQ1":{"uri":"/melonJS/docs/melonjs/Ellipse.html#rotate"},"9TWsF5t9VfQFp8aCDjI4A":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scale"},"qLC5qzUiAi4RAYjcFuzfB":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scaleV"},"H-I8Ot0uxUKS8WCdqP0V5":{"uri":"/melonJS/docs/melonjs/Ellipse.html#setShape"},"iy5SPwlMSSlQ_2XvW5dBz":{"uri":"/melonJS/docs/melonjs/Ellipse.html#transform"},"In0RREYFArEnfFfJlHiNT":{"uri":"/melonJS/docs/melonjs/Ellipse.html#translate"},"hpvOf2kFTsvmM3zdbIdjf":{"uri":"/melonJS/docs/melonjs/Entity.html"},"tkI_eXyFO214hLDWB5boH":{"uri":"/melonJS/docs/melonjs/Entity.html#alive"},"jpSxX87ousTuRxtiTh_FX":{"uri":"/melonJS/docs/melonjs/Entity.html#alpha"},"vNdi1xiHVzM3obeKC4NBx":{"uri":"/melonJS/docs/melonjs/Entity.html#alwaysUpdate"},"dOw-6RiJRVWMay-LUkPkR":{"uri":"/melonJS/docs/melonjs/Entity.html#ancestor"},"PK6dX_fF-IX6NCo_3IBnb":{"uri":"/melonJS/docs/melonjs/Entity.html#anchorPoint"},"UoX6lzzAmDLrqi8lNYswO":{"uri":"/melonJS/docs/melonjs/Entity.html#autoTransform"},"IjuzooMHfDfbqbTP1zc1d":{"uri":"/melonJS/docs/melonjs/Entity.html#blendMode"},"ZP7omu5dUSUDZLyXQVwkJ":{"uri":"/melonJS/docs/melonjs/Entity.html#body"},"TUXOw6w13rY7Tdqo5Fuka":{"uri":"/melonJS/docs/melonjs/Entity.html#bottom"},"rnEig5zqBola_5orVRxiZ":{"uri":"/melonJS/docs/melonjs/Entity.html#centerX"},"aySUjz8FsP2pFXYn6iO77":{"uri":"/melonJS/docs/melonjs/Entity.html#centerY"},"ncWnnlYuhDSx4UwLNX8Ir":{"uri":"/melonJS/docs/melonjs/Entity.html#currentTransform"},"fR_z0hII2HAPFdizZ7YxW":{"uri":"/melonJS/docs/melonjs/Entity.html#depth"},"d0b6BbI6dYpLeqWn_wu6b":{"uri":"/melonJS/docs/melonjs/Entity.html#floating"},"ZfWQyTyTFtp3_y6SnP9Iv":{"uri":"/melonJS/docs/melonjs/Entity.html#GUID"},"WVtXICp52LhbcHdlffUEL":{"uri":"/melonJS/docs/melonjs/Entity.html#height"},"rI-68kDVe6XxDKhMpYmCS":{"uri":"/melonJS/docs/melonjs/Entity.html#id"},"vHPQzCHBXWTvIyTAw7YR8":{"uri":"/melonJS/docs/melonjs/Entity.html#inViewport"},"s-nGJNXc4V9UDwTS0fKNB":{"uri":"/melonJS/docs/melonjs/Entity.html#isDirty"},"NYDo3b-th1QF8QxQBIFE1":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedX"},"Rekpm9WJPwKRjs775fdoB":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedY"},"IPG235n8b_yPu6ouTyfPq":{"uri":"/melonJS/docs/melonjs/Entity.html#isFloating"},"-MMehWT_7Ov04no9YF3uW":{"uri":"/melonJS/docs/melonjs/Entity.html#isKinematic"},"5bzXWwz5oVrMxboL-QpeT":{"uri":"/melonJS/docs/melonjs/Entity.html#isPersistent"},"NJYAIF1ScDy4-0ZhdgAcM":{"uri":"/melonJS/docs/melonjs/Entity.html#left"},"2kIf5rBOLBtjd3nzQevih":{"uri":"/melonJS/docs/melonjs/Entity.html#mask"},"AtvJlDa8xpkyFRYJKI3va":{"uri":"/melonJS/docs/melonjs/Entity.html#name"},"-kLTXkDeAZuHkB7N0xNWR":{"uri":"/melonJS/docs/melonjs/Entity.html#onVisibilityChange"},"3ptO4GwfrxZqQ_wGuE-5z":{"uri":"/melonJS/docs/melonjs/Entity.html#parentApp"},"RYN7kzAgn5v1UxLlUCA8n":{"uri":"/melonJS/docs/melonjs/Entity.html#points"},"xBjAUxoNC6dWPPkjR3MsT":{"uri":"/melonJS/docs/melonjs/Entity.html#pos"},"fn8j6WftctdiR8zWPLJOZ":{"uri":"/melonJS/docs/melonjs/Entity.html#renderable"},"iSAfVA0GK4oxkVb8dRBi8":{"uri":"/melonJS/docs/melonjs/Entity.html#right"},"jXRHYTqcj0bEr6WT0YlNI":{"uri":"/melonJS/docs/melonjs/Entity.html#shader"},"OrF47mjF4ZviPV4j35ATR":{"uri":"/melonJS/docs/melonjs/Entity.html#tint"},"cf-wY3Zms5HEbaxntWIg1":{"uri":"/melonJS/docs/melonjs/Entity.html#top"},"b6xqST-zfCgPYWgnOkSdh":{"uri":"/melonJS/docs/melonjs/Entity.html#type"},"b-9RmbHwYhig8tf324Xh8":{"uri":"/melonJS/docs/melonjs/Entity.html#updateWhenPaused"},"eJIWdkqU8TIEu8kxLP0hD":{"uri":"/melonJS/docs/melonjs/Entity.html#width"},"7x94h44RpjkC9rZl7CtI9":{"uri":"/melonJS/docs/melonjs/Entity.html#angleTo"},"Y8WNdyttgRnb_8lXm7try":{"uri":"/melonJS/docs/melonjs/Entity.html#centerOn"},"WTeUb98DOT4wk_4yjIvDs":{"uri":"/melonJS/docs/melonjs/Entity.html#clone"},"1efIX37YaWGXn9cPA9l1X":{"uri":"/melonJS/docs/melonjs/Entity.html#constructor"},"7gYuGhT2NjdllfGKldNUh":{"uri":"/melonJS/docs/melonjs/Entity.html#contains"},"T2qwU1eudTGmEiPyqx865":{"uri":"/melonJS/docs/melonjs/Entity.html#copy"},"rmTdhby6j1Uj3XsWybJRO":{"uri":"/melonJS/docs/melonjs/Entity.html#distanceTo"},"nAo4FVlgHv2axGyX9Af3o":{"uri":"/melonJS/docs/melonjs/Entity.html#equals"},"nGS0HPSz9Ns7TYDW_ziJI":{"uri":"/melonJS/docs/melonjs/Entity.html#flipX"},"vd_58EkSqVMMSxTti50X7":{"uri":"/melonJS/docs/melonjs/Entity.html#flipY"},"TQicPcCKWbJXEzLypdJBS":{"uri":"/melonJS/docs/melonjs/Entity.html#getAbsolutePosition"},"zysG1FSb0hVYUuHdNhsls":{"uri":"/melonJS/docs/melonjs/Entity.html#getBounds"},"IFq1pQne3G39gK8HtKDbU":{"uri":"/melonJS/docs/melonjs/Entity.html#getIndices"},"Ya0QnZNOggYayuJawq2FV":{"uri":"/melonJS/docs/melonjs/Entity.html#getOpacity"},"TQZ3dclEaM3yfP58mkic2":{"uri":"/melonJS/docs/melonjs/Entity.html#isConvex"},"KQuHO6Eh4FDB5ZRmm649Q":{"uri":"/melonJS/docs/melonjs/Entity.html#isFinite"},"JVvDc6R7gbU8Lnb9qKHTh":{"uri":"/melonJS/docs/melonjs/Entity.html#lookAt"},"_VAZSN6hLBOlrj0EXtW5O":{"uri":"/melonJS/docs/melonjs/Entity.html#onBodyUpdate"},"UjKvcJ7iKJ1c4bdf2Z5eQ":{"uri":"/melonJS/docs/melonjs/Entity.html#onCollision"},"0ER56VNf22SqH5XJKjOs_":{"uri":"/melonJS/docs/melonjs/Entity.html#onDeactivateEvent"},"J7G0Jevn1kMYJkiNzx0I1":{"uri":"/melonJS/docs/melonjs/Entity.html#onDestroyEvent"},"YPB0Kt5pGq7extGKn5ezn":{"uri":"/melonJS/docs/melonjs/Entity.html#overlaps"},"H_ZluB_c6TIKQKNS0pXlD":{"uri":"/melonJS/docs/melonjs/Entity.html#postDraw"},"qSerxBrPyXzaot4276moX":{"uri":"/melonJS/docs/melonjs/Entity.html#preDraw"},"-oMNRU2iPHF9b7LxYV38J":{"uri":"/melonJS/docs/melonjs/Entity.html#recalc"},"7-Z9w47hB-sJCuRrUgFx2":{"uri":"/melonJS/docs/melonjs/Entity.html#resize"},"IUkkvPPD2xngpVPkWA5iO":{"uri":"/melonJS/docs/melonjs/Entity.html#rotate"},"Ls9NNimRBxs_UCLrKZbPm":{"uri":"/melonJS/docs/melonjs/Entity.html#scale"},"oZJg7j8h5AboaBqAczO0e":{"uri":"/melonJS/docs/melonjs/Entity.html#scaleV"},"fOAifDqTvvEQthO0M_255":{"uri":"/melonJS/docs/melonjs/Entity.html#setOpacity"},"hHuNZxSeJFkSIDB4RmfSH":{"uri":"/melonJS/docs/melonjs/Entity.html#setShape"},"HXAJ9oZlDLzrJ4lSdIFEK":{"uri":"/melonJS/docs/melonjs/Entity.html#setVertices"},"yeiJs0YPe50BcbOnWc8ad":{"uri":"/melonJS/docs/melonjs/Entity.html#shift"},"HE7vSg_3HEc8UitznWm7x":{"uri":"/melonJS/docs/melonjs/Entity.html#to2d"},"GQ9s24dloauqWeZO_U-SC":{"uri":"/melonJS/docs/melonjs/Entity.html#toIso"},"f7OTMw20ABhSFf3xgq1g3":{"uri":"/melonJS/docs/melonjs/Entity.html#toPolygon"},"nun9SvCM_PD3yCDH4HEjt":{"uri":"/melonJS/docs/melonjs/Entity.html#transform"},"vbGks7SM9VEFhiqk3ix1P":{"uri":"/melonJS/docs/melonjs/Entity.html#translate"},"c5wmDJly5iR53xY7f2AVn":{"uri":"/melonJS/docs/melonjs/Entity.html#union"},"pDVbZ1ITGOg3ygN3Kysmb":{"uri":"/melonJS/docs/melonjs/Entity.html#update"},"X0XjowN-XFIPXijjjcRep":{"uri":"/melonJS/docs/melonjs/Entity.html#updateBounds"},"1eTvNooFBO6WTVCdOBznk":{"uri":"/melonJS/docs/melonjs/Entity.html#draw"},"95hnQLa3kqJoOUD6fy2FB":{"uri":"/melonJS/docs/melonjs/Entity.html#onAnchorUpdate"},"6xoHCAeZ8gKrNht5M0aVm":{"uri":"/melonJS/docs/melonjs/GLShader.html"},"cORqQixK-9ttgXTGcBUd3":{"uri":"/melonJS/docs/melonjs/GLShader.html#attributes"},"FMM8gK9kMkMu9jCjtwFkL":{"uri":"/melonJS/docs/melonjs/GLShader.html#fragment"},"GW401g0dDQ_RaJnIuUmUr":{"uri":"/melonJS/docs/melonjs/GLShader.html#gl"},"hD8bVfOYpyZnRgOXDc-oY":{"uri":"/melonJS/docs/melonjs/GLShader.html#program"},"M858eL4Qu6u05Ac9LTrfo":{"uri":"/melonJS/docs/melonjs/GLShader.html#uniforms"},"0anohAJYOaE23c5Jp8Uj_":{"uri":"/melonJS/docs/melonjs/GLShader.html#vertex"},"ZCgDteHjU6bKg1WA8IOgj":{"uri":"/melonJS/docs/melonjs/GLShader.html#bind"},"WgJsNughhDMsW0WQT7fAL":{"uri":"/melonJS/docs/melonjs/GLShader.html#constructor"},"SLElkoDxd-vqgWmX4ynUc":{"uri":"/melonJS/docs/melonjs/GLShader.html#destroy"},"kIx-K62fNgKgmj-oJJdee":{"uri":"/melonJS/docs/melonjs/GLShader.html#getAttribLocation"},"4oY3DJzFcSouv71F-W1ud":{"uri":"/melonJS/docs/melonjs/GLShader.html#setUniform"},"XcmQc8ZWmIfURw245W6Nb":{"uri":"/melonJS/docs/melonjs/GLShader.html#setVertexAttributes"},"UNkMGKVtUZbVJcpy_u_I7":{"uri":"/melonJS/docs/melonjs/GUI_Object.html"},"iKu2ZZ-mfqcSeAgbR7GiO":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alpha"},"H8xRjQWJEAZm39KodHzBj":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alwaysUpdate"},"qkPGZtMYp7o-J7vjvwPtK":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#ancestor"},"Pw-5DO60BSx08Xan65CSI":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#anchorPoint"},"EamB6FLqsuLpjCTw7o0QF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationpause"},"tAGCrHb7FXINx7-K6F8vw":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationspeed"},"dfgiknC4n6NuYyBypbB_e":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#autoTransform"},"g9Y7CKorUxv69EKg9xbft":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#blendMode"},"UAe_pw1NVojY6BcuqZWq7":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#body"},"Gmt_OYVW_dRPuouNuLgSu":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#bottom"},"Y1KQzYEa_V0cF320fIYtF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerX"},"KPtjnn7xPXygjp9pvjQOb":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerY"},"tHnAESjsktM8FD64KfQXJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#currentTransform"},"b4ltcnIDLVl5rEjNMKbUq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#depth"},"rA-DVBYhTWutWKaHsRmo2":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#floating"},"txfbZSm5r1J54qtW5JGSD":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#GUID"},"amwNUticoWJYA4g1HpXl5":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#height"},"vkLOsQ0RABc3Z7fB0fieX":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#inViewport"},"8HkADcUpoiSs8hzZ-NJzt":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isDirty"},"3gALDekSe_FNW7oOT1VOS":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedX"},"GLC3i6R2NHsvaDXN8O-ZQ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedY"},"AtOL8Dp4tSbVMD3ITsJVD":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFloating"},"eNgH1t0iLZzhXO5tRca_p":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isKinematic"},"It3kpMKlQPiseisFtpARv":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isPersistent"},"YG4m31NC88aUzhoFVQA7o":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isVideo"},"OyMD8V9XUei_uD1vj3C0_":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#left"},"hbEbf3s82aRlOhWEFCVfe":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#mask"},"KRwThRueMK6Ypq4miviyv":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#name"},"Aa18aUKhm6xFPgXOTRTT9":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#offset"},"s1JorNMtBsTJwi-Mno-cK":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onVisibilityChange"},"1xsD4e4gr-I4igq0UjWOg":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#parentApp"},"loCzs-UZYAOKF3bLsrntB":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#points"},"aKSMFNT8gD-UUhPnqwr0v":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#pos"},"4lzQR5Bzb5XWDS2N_o5CI":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#right"},"1h5n3ANJd_pC1hFh8SqeU":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shader"},"JGmazbk3z9uFx-7Js9mSE":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#source"},"1dIh8XQ9VWLXYUE55AkBg":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#tint"},"OlhTgsuK29hhXxD9rSUyN":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#top"},"F1iRGTsAkUuFRjl4NPZxJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#type"},"xKQxTH-8RCULmwGb6XNHq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateWhenPaused"},"fEYSVxMdDp6fGhyHIizxK":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#width"},"-HVHjbFj59Qq_FbHTAfDa":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#addAnimation"},"kaVXe1dUhX4dEJBoMHXgq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#angleTo"},"LArhyFVjoI3lO78UZevjb":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerOn"},"pQpSfs1O51mCBusFZRby0":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#clone"},"KpaBUBWBQu09FP9tojKLK":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#constructor"},"RfSpVmdummuOW_us9XyIL":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#contains"},"EGA6FPs_Cu1-JRSrwfDJd":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#copy"},"qysuT-v9zZkLoPWroKh4G":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#distanceTo"},"8r25GLhRbbfDUpoui31-Q":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#equals"},"9hqPSI4X8I3pVXG06ToPp":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flicker"},"BdasFZ_Op_bKYfdQHPWFc":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipX"},"VVQkdE5UjHwlUJu2_1R0I":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipY"},"XWDEfTO0vfK_6VryZhoez":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getAbsolutePosition"},"dshZYKjE1FDwkjfqWywZB":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getBounds"},"d1NA-S3ugQ6tDrBeplLMF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getCurrentAnimationFrame"},"WDs4OEheDM8IitZORB4AB":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getIndices"},"fU1D3W-x_bwPOgKQgRkuw":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getOpacity"},"zfVwsc5QSl3jYuprf_Fwx":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isConvex"},"knEtrsMVTOqWZNaZIrfO1":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isCurrentAnimation"},"NL1NtUHx9z4wu4YUok5w-":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFinite"},"ThjQVi-g2lxgLAGtt_yWb":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlickering"},"oeApWPQ3DyIKGzCKhVSid":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#lookAt"},"scvKBaec5PJp-TMGamraK":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onCollision"},"LZ1nhD1EQR1YABjix1BpI":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onDestroyEvent"},"QLXoxYExunkslJ8pk_Tyj":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#overlaps"},"J3RkwWB_77FIzkH6WD2WS":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#pause"},"XDhr9R-QZcObbdEsIB5ZH":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#play"},"Okc-_eMm0li7mKdbP3zH0":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#postDraw"},"HJCFmPObiI3UwZXkRb48E":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#preDraw"},"xyHQhgI81OHOQQsaSz1nF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#recalc"},"PLSOogi3R2sn0sjLdIFJv":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#resize"},"94uX9BoevuxKCYPZEGl2c":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#reverseAnimation"},"Js2nQuyL0UW3gq3Wha_-G":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#rotate"},"I_SEBWV1FcQp1xkzfjpQ7":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scale"},"kiuusxk30mZy4HA6ewaiu":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scaleV"},"K2hm6b8hPE0RBlQnUkohZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setAnimationFrame"},"4MlMoS3t1JP0Xv0UXYDDw":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setCurrentAnimation"},"o4vffo1_wdGT8M88bg4_I":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setOpacity"},"AnCNpwF6oUSyyKo7oNGrr":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setRegion"},"-qLHGsmQ9HHQsHBHT7BZZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setShape"},"Mn_nwjjk1_4mlsHKNFII5":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setVertices"},"uUxWUEppLHclQHT502H6w":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shift"},"gvfSfthEESVk5N3IH_0L4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#to2d"},"a8-zLpB0YMfU6Yg0J4wWF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toIso"},"Lp2pYcbHcOkK7WHPW8y7H":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toPolygon"},"BL9v333oa8FpWqkWdp3qr":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#transform"},"ouffAArE1iuYd965N1ZL-":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#translate"},"Hwz73olSKVE-fqXRaqQeC":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#union"},"NFYZkRck1ve4kKmwWY_aR":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateBounds"},"ZzLByhGvcjPWF2AQfU8bM":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#draw"},"3QqZh1qJqLSp5e90G2lKT":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#update"},"YaOjNYvj37qgu9Tl9QDam":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onAnchorUpdate"},"RON0cKhKJzDj0qX4A1FPz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html"},"O7bf9l5uNO5rZ-_30CwRd":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alpha"},"RuSaNb-pK4Zz6xpc6IR8L":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alwaysUpdate"},"jm1vJxjoBOOWrxJiAGwFG":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ancestor"},"qg8ysaswaVma3cG-5e0ry":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#anchorPoint"},"IBJA2EGf6h1i3YNH3gwQ-":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationpause"},"ObfuKLleCo1pAWaeKhRkw":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationspeed"},"YrHMC2OjC7jiOnGPFnJOG":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#autoTransform"},"B2qbmc918NuLpOBkORLqz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#blendMode"},"ji_ud9DuZhriNx6MRV3Jm":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#body"},"5Zklh41D-ul_nfQpH5tEs":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#bottom"},"X-p1-KikkPRjuAwcPvZLl":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerX"},"UmFtHTtRRhxDch3wu1kwB":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerY"},"I-NWcA9MfepekGfr8TB6o":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#currentTransform"},"-v1V8J1qBwRoB1XmmBXZg":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#depth"},"Uxzm18qs0veqkTWNWnS2r":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#floating"},"DKHHHin0nZDBMBYIhmjaV":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#GUID"},"yqVLy_8_uW3rctwiXM_bc":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#height"},"m1UdqiwqQmdCcTjhOgbG_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#inViewport"},"HhErAY7W-6x1xmj8zfudH":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isDirty"},"qlV45vHcSMKtBRCVHCYUm":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedX"},"-WlkWvDEjCKNLevdOE5GG":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedY"},"dk8T6t2K7si1BTZCb7ddP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFloating"},"jVCxdb9hwuIUq4o-fMvL5":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isKinematic"},"rx92-DyGbTyTJGHSVVaps":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isPersistent"},"CXDHdOUW2EFv_oY56RTnS":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isVideo"},"k96_1V2VZur5Ntf5iEDJ3":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#left"},"FEfg2LYzJEH4NL6Tz_HnZ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#mask"},"btErMDuJi4tnYeUAZmDM4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#name"},"5BbVaTgUgxxeFbz_X-5eW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#offset"},"6qBuGvrVkdbfOZuDhOc5V":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onVisibilityChange"},"g0_ZgW1MVtqmCrhR3_e7K":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#parentApp"},"4Sa0sJ1h1RlG9s8BX08Pa":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#points"},"QHYXoRCDs5L-vdhF9fRiU":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#pos"},"nFyXlcuZhIKFmdDyZaPg1":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ratio"},"oHqVEB63r3wF8LFrIt5Ib":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#repeat"},"2212PwowHobXpGuhgb6A4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#right"},"d4h9JI0xpND8nInT8nPOe":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shader"},"3uwgLdLht7w2ufjXFp1AK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#source"},"w56MX5N3QDmGkqZ3A9vjz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#tint"},"-6DJuw8z7864D4YFlfH_8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#top"},"pfipBtUIDbs674S3Fzv93":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#type"},"JMbY4ATc1Xl1Vv_HtVmsY":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateWhenPaused"},"7yEoeO1xCTUWh9t6K3x5m":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#width"},"qHhqntR7c_ae0O5mQR8L2":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#addAnimation"},"vlIOQ-MDY2HVKp9yLogby":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#angleTo"},"9oQgymhtTsVgxAF6EZQo9":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerOn"},"5GlSRvCVzhe9c3puqm_8p":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#clone"},"ZwEifEWKH7yD1CwZFjlkV":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#constructor"},"9w72Dxd_sQpW2aFK5wYVU":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#contains"},"LrBIDD14O0S4OGO-fi9lj":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#copy"},"EAOHlj8HEIjBepx8jsLUv":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#distanceTo"},"8_tpui3HocduNjnkGEiwe":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#equals"},"IslWvtOttw2A5cPbk0l_n":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flicker"},"GGSKT0_eD3yaBO2xtmJn_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipX"},"ajovoiIrOAtlQtOfbiZ9m":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipY"},"ewSSvqC2UinSEzeFu1Z23":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getAbsolutePosition"},"IqYDh1A5S2Y_YBQtBVdNu":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getBounds"},"nhBCtOpzk17fszllOhYEh":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getCurrentAnimationFrame"},"3MBGR5iOalg3ZHkSmp9U0":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getIndices"},"2lWtsmK1_syRvMhDiL2My":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getOpacity"},"xp-JUEW8zbw5CcduwGpDk":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isConvex"},"JqYuhe76NAr1Csf4UvDxU":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isCurrentAnimation"},"hE4RHeWO7aaCbALNplV6o":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFinite"},"ez9mmFKikvD89EOwfAVra":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlickering"},"1_wivpLmk55doR3gtrdN5":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#lookAt"},"SnrQnJ86TfOWSAKaYFxAw":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onCollision"},"pb55OAhLMyoYT73F8K5EQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onDestroyEvent"},"Fh5dJmqEx8-weVYv4kXIk":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#overlaps"},"eNz1S-vcOqYnOEBKBfCV_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#pause"},"YsL2m2vpWB4TCDcxZdo81":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#play"},"R4vyrjjtR7yRvv4WmqhoA":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#postDraw"},"fb5v7xxIyi6grFgQzddPp":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#preDraw"},"Hw7vqtNbGVILtiQwIzHJx":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#recalc"},"O1CDd-oI8YcFKHf4gfG2d":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#resize"},"a01vIX60w7hlQqTz6lY8o":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#reverseAnimation"},"5CSWw66chif-PWxVSU1Pn":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#rotate"},"QVhlZcUr5Cd4oa5VY0Iv_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scale"},"3CGjWrhVbX9MvvS6QNOpx":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scaleV"},"vFmcksVt0oXFh7GVkmQT_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setAnimationFrame"},"TU6Ot8zy0JvrA8rgEFd8r":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setCurrentAnimation"},"DdAkxI2tQxMTTRb2M4W4P":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setOpacity"},"WV2nCoYlZu6TBP2HGIif1":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setRegion"},"joNQOEpJNg4rk99O_GQdK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setShape"},"yl8x0UVvWWSVi01kGAVRP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setVertices"},"xS-AhR_-gEsZ9OlLJKh2l":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shift"},"dYtiQ2xjrS7-OwTQdeJ7J":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#to2d"},"U0buc--RvMksF9pripiIy":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toIso"},"iw4vtAEKPJNnqMuOVH1vi":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toPolygon"},"scMlyg0x07iECuB451NfT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#transform"},"wPjhjz0apvPClTpWgLyrp":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#translate"},"38CYZuveWYhIVFMDTgP6P":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#union"},"HPth7EZdAKth_8FuU7sE8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateBounds"},"POOgo3dWmKalrszX8C14D":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#draw"},"WKSGuCD-M9vzjHLtIS4lL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#update"},"_L_ffxNol9AZL52pTlV3L":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onAnchorUpdate"},"URsG5YnlVIpq7CJcRH1f8":{"uri":"/melonJS/docs/melonjs/Light2d.html"},"I22WNFZ6cln8zc2Mjk6Cy":{"uri":"/melonJS/docs/melonjs/Light2d.html#alpha"},"slnwjhOPqehJEoihH1bjH":{"uri":"/melonJS/docs/melonjs/Light2d.html#alwaysUpdate"},"6dUbCo4r3L0Exh6x379bB":{"uri":"/melonJS/docs/melonjs/Light2d.html#ancestor"},"UNsewztQZIG4kZFwtVGOZ":{"uri":"/melonJS/docs/melonjs/Light2d.html#anchorPoint"},"euePWaoLyZJjiagE4BcAn":{"uri":"/melonJS/docs/melonjs/Light2d.html#autoTransform"},"dkOJT1MD9OzoKoYcKWZgz":{"uri":"/melonJS/docs/melonjs/Light2d.html#blendMode"},"Xz0rf3_mrdGYxtHKDtY3E":{"uri":"/melonJS/docs/melonjs/Light2d.html#body"},"zJNFMX5y4ZUA236yENZ13":{"uri":"/melonJS/docs/melonjs/Light2d.html#bottom"},"xzRyRFYxYuIYkqiKCtlBL":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerX"},"AeueCv3fUy-rPj2NMLd2d":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerY"},"LrCtZyqolEnd8BywuQGt4":{"uri":"/melonJS/docs/melonjs/Light2d.html#color"},"4AJF6ys0O9_YVeBo1xXmM":{"uri":"/melonJS/docs/melonjs/Light2d.html#currentTransform"},"-Du0UKZ3Qg7T0zJIxjveg":{"uri":"/melonJS/docs/melonjs/Light2d.html#depth"},"KG-KIiLe7yAto_-flSsvb":{"uri":"/melonJS/docs/melonjs/Light2d.html#floating"},"tQ4HgYI8fgz2rw5NwVvTM":{"uri":"/melonJS/docs/melonjs/Light2d.html#GUID"},"oJwUS_4mPqAMChLfPr2PO":{"uri":"/melonJS/docs/melonjs/Light2d.html#height"},"6FtRwIpeGlfl3g6Js9yrY":{"uri":"/melonJS/docs/melonjs/Light2d.html#intensity"},"KLuJHJaAUl_a1--OnVqpO":{"uri":"/melonJS/docs/melonjs/Light2d.html#inViewport"},"xOlzxXt4kSxmvJjrWu6EF":{"uri":"/melonJS/docs/melonjs/Light2d.html#isDirty"},"CrXDAGnHvwaB_oypxyuSN":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedX"},"dUQoz_aCNJj_pupbw3yeg":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedY"},"5O76aIqBobVdww-mzNmsI":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFloating"},"w5Dnw88Q3Z1hQBYEfjKud":{"uri":"/melonJS/docs/melonjs/Light2d.html#isKinematic"},"x_3WukFKZUOJBCUErfGL2":{"uri":"/melonJS/docs/melonjs/Light2d.html#isPersistent"},"a-aDud-J3VSL2SdtggMZ8":{"uri":"/melonJS/docs/melonjs/Light2d.html#left"},"vGrQ-dgauwQNKrx9Itzg3":{"uri":"/melonJS/docs/melonjs/Light2d.html#mask"},"RchZgHSfj8nA5JVEs7qqs":{"uri":"/melonJS/docs/melonjs/Light2d.html#name"},"C2cR_KGRCITyAQevRDeJD":{"uri":"/melonJS/docs/melonjs/Light2d.html#onVisibilityChange"},"Hcg-Pvc0T0evEXWewGFzG":{"uri":"/melonJS/docs/melonjs/Light2d.html#parentApp"},"lTmqOMLoVctHs57B2QRml":{"uri":"/melonJS/docs/melonjs/Light2d.html#points"},"hzQ9rsXS541qfOXm2Ff32":{"uri":"/melonJS/docs/melonjs/Light2d.html#pos"},"udkOg2zs17FO5WS6T7Szt":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusX"},"hTVXpiwzV2h-zj3BuFNZF":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusY"},"dnAXKvtS2TTPUz5ooLyIB":{"uri":"/melonJS/docs/melonjs/Light2d.html#right"},"qBs2Hq0s7zldj1pLlF2NJ":{"uri":"/melonJS/docs/melonjs/Light2d.html#shader"},"jcgSq2NYqF_f-qI-A06lZ":{"uri":"/melonJS/docs/melonjs/Light2d.html#tint"},"T_NoTsFiIr40XQ0G0MOv0":{"uri":"/melonJS/docs/melonjs/Light2d.html#top"},"LrvV8lay0JGgZK6Ub4PfB":{"uri":"/melonJS/docs/melonjs/Light2d.html#type"},"w6AeSy_bD6U6UQXuylBC1":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateWhenPaused"},"7s1CoIZiNrpWYmpRAfD_J":{"uri":"/melonJS/docs/melonjs/Light2d.html#width"},"h23unsp1enuVU-410I6Zl":{"uri":"/melonJS/docs/melonjs/Light2d.html#angleTo"},"nON7u-GJBnbuDTxKBbt2c":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerOn"},"qVbYX7ssASQZv7EMCshxl":{"uri":"/melonJS/docs/melonjs/Light2d.html#clone"},"D6n9xtY9H3i0pvHgSYOXj":{"uri":"/melonJS/docs/melonjs/Light2d.html#constructor"},"-EIJs6U37jLBKF9gq3Gin":{"uri":"/melonJS/docs/melonjs/Light2d.html#contains"},"WknY4L94c_3T6NhmneIhz":{"uri":"/melonJS/docs/melonjs/Light2d.html#copy"},"0IDwyh7FGSg-PmEMe6adj":{"uri":"/melonJS/docs/melonjs/Light2d.html#distanceTo"},"pyjcGDsRXFlgqifPWITq4":{"uri":"/melonJS/docs/melonjs/Light2d.html#equals"},"cR4yZ_VP-uWBt5NCL-XBp":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipX"},"upYtofT9NtybWfIY0yxo0":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipY"},"9t6WrwIBpQ6UjMke-Z1LC":{"uri":"/melonJS/docs/melonjs/Light2d.html#getAbsolutePosition"},"-l2r0TqS5tMbMqF04obX5":{"uri":"/melonJS/docs/melonjs/Light2d.html#getBounds"},"gHC2PzihE1HjLCWLlLQRq":{"uri":"/melonJS/docs/melonjs/Light2d.html#getIndices"},"XB0Z4lEGxuLDGgf9NBPQ5":{"uri":"/melonJS/docs/melonjs/Light2d.html#getOpacity"},"61pPouF9c438f28_ZoyRP":{"uri":"/melonJS/docs/melonjs/Light2d.html#getVisibleArea"},"UGkiBqPsPtzLA8hxJd22x":{"uri":"/melonJS/docs/melonjs/Light2d.html#isConvex"},"-StfJk_DW-RTJREJC-Bon":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFinite"},"wKkHT9UakgRG6q9jj-uYc":{"uri":"/melonJS/docs/melonjs/Light2d.html#lookAt"},"SJEeUS9rn0wNskzsSTHuz":{"uri":"/melonJS/docs/melonjs/Light2d.html#onCollision"},"BaS5uBWCrTA4C-BxVyfAX":{"uri":"/melonJS/docs/melonjs/Light2d.html#onDestroyEvent"},"moDKm5RVj87Kg7dr6IRCq":{"uri":"/melonJS/docs/melonjs/Light2d.html#overlaps"},"t2pLuWDo6rpe8F_AFxkO7":{"uri":"/melonJS/docs/melonjs/Light2d.html#postDraw"},"T3M0Tv8WckBINV-kfinW6":{"uri":"/melonJS/docs/melonjs/Light2d.html#preDraw"},"Xf5bNVCoRECVx1m0TcJcR":{"uri":"/melonJS/docs/melonjs/Light2d.html#recalc"},"jujUB-0e7BjvMNZwhAWNA":{"uri":"/melonJS/docs/melonjs/Light2d.html#resize"},"vZh2mIaAfvMXOam10_29g":{"uri":"/melonJS/docs/melonjs/Light2d.html#rotate"},"SIKus-t2SnZ5gJsAlCEAs":{"uri":"/melonJS/docs/melonjs/Light2d.html#scale"},"KEw0IuPIC2sFyEYMUY2h9":{"uri":"/melonJS/docs/melonjs/Light2d.html#scaleV"},"mUC1eE3j7u4LMS31tFsi7":{"uri":"/melonJS/docs/melonjs/Light2d.html#setOpacity"},"_TlXMVOfhWJIbXj9fYNDU":{"uri":"/melonJS/docs/melonjs/Light2d.html#setShape"},"PIiAhRIRB_xnZb2oznu99":{"uri":"/melonJS/docs/melonjs/Light2d.html#setVertices"},"zM16Il1ljsmW-r8QTuL4q":{"uri":"/melonJS/docs/melonjs/Light2d.html#shift"},"PQ9IkP2xqExxg1c1kpxUR":{"uri":"/melonJS/docs/melonjs/Light2d.html#to2d"},"0fMLmYUEyqGQHPWqnTe0i":{"uri":"/melonJS/docs/melonjs/Light2d.html#toIso"},"zWjEPD6RyLglWOu6ip9qq":{"uri":"/melonJS/docs/melonjs/Light2d.html#toPolygon"},"bUj-eyaC5AxFrUUU4etr1":{"uri":"/melonJS/docs/melonjs/Light2d.html#transform"},"WDeoJ2BSWO_lkjdW9G74Z":{"uri":"/melonJS/docs/melonjs/Light2d.html#translate"},"JNLCbfzdTXTHVVCKZOaw3":{"uri":"/melonJS/docs/melonjs/Light2d.html#union"},"XQTMofS7dbH5ZPCIIQZho":{"uri":"/melonJS/docs/melonjs/Light2d.html#update"},"_Su0GGDqiRdparafZzBnr":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateBounds"},"93l4gDfJc1yMnIwxQw1Hf":{"uri":"/melonJS/docs/melonjs/Light2d.html#draw"},"gXmrXCi_j3C3ACckTrUSg":{"uri":"/melonJS/docs/melonjs/Light2d.html#onAnchorUpdate"},"euhLJEMUfQl50MI1vZC-T":{"uri":"/melonJS/docs/melonjs/Line.html"},"FKmVnCkh_2GQbBiEF1wtw":{"uri":"/melonJS/docs/melonjs/Line.html#points"},"FzacciXoMJ5NQLKR2aaP7":{"uri":"/melonJS/docs/melonjs/Line.html#pos"},"Kr5qbe3mTOU_dWQSPn0_0":{"uri":"/melonJS/docs/melonjs/Line.html#type"},"1g50Vpch7ppqcNce_1Sae":{"uri":"/melonJS/docs/melonjs/Line.html#clone"},"nxmyUwtDBJQd9GlfBNF3V":{"uri":"/melonJS/docs/melonjs/Line.html#constructor"},"d_m68eWykAcRCdQhpG2pm":{"uri":"/melonJS/docs/melonjs/Line.html#contains"},"QfVeQPa7pt8s29fVDEpdP":{"uri":"/melonJS/docs/melonjs/Line.html#getBounds"},"0QDeMUH23sHmqsOSU-IKA":{"uri":"/melonJS/docs/melonjs/Line.html#getIndices"},"5dhLXyNoIqx_V_xdwH18D":{"uri":"/melonJS/docs/melonjs/Line.html#isConvex"},"1tXt5Boydtkv0DvP6iuca":{"uri":"/melonJS/docs/melonjs/Line.html#recalc"},"kWHpLiaOP-rtvqxj_IrIr":{"uri":"/melonJS/docs/melonjs/Line.html#rotate"},"doAQfP7gdC1xPJyaNCZ0f":{"uri":"/melonJS/docs/melonjs/Line.html#scale"},"qv6nOsLi57VZX4kGtHbk4":{"uri":"/melonJS/docs/melonjs/Line.html#scaleV"},"xcFGyIboHY0Rmxz2fAY6Q":{"uri":"/melonJS/docs/melonjs/Line.html#setShape"},"fLgqZ_LS4MgMcwd5-jqwx":{"uri":"/melonJS/docs/melonjs/Line.html#setVertices"},"tyUJLeIxivgqBHfkRL_fe":{"uri":"/melonJS/docs/melonjs/Line.html#shift"},"TXTYlgElkKIRGA4n0rTX0":{"uri":"/melonJS/docs/melonjs/Line.html#to2d"},"2NegWVVjVO9xFu1Gn59H6":{"uri":"/melonJS/docs/melonjs/Line.html#toIso"},"YhaZEpZle_K2Ej1h_4g-E":{"uri":"/melonJS/docs/melonjs/Line.html#transform"},"EO7yyZd4UFA9iAd9QiQ82":{"uri":"/melonJS/docs/melonjs/Line.html#translate"},"qRctUOiLFrrqozYdkmX5s":{"uri":"/melonJS/docs/melonjs/Line.html#updateBounds"},"2IaQHb9vcie0pxceeJ4lM":{"uri":"/melonJS/docs/melonjs/Matrix2d.html"},"jClQ_KHjIemG59togMFTR":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#tx"},"rUj8f26zK4Zj34yPmXCRx":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#ty"},"WIGfitXmPdycD2KUDznw0":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#apply"},"648NNkLOarjvebO-trbMp":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#applyInverse"},"xZoWvD6MZpf_fUFnwZZ8j":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#clone"},"WsYKfD_ZJ6ZK2nYEjPOcE":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#constructor"},"VHRbmZDEQqdlVZpPmREVU":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#copy"},"M8J51P7juKTiVPAkNjZ76":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#equals"},"G_c7ooeXDuekmNCQpdvfn":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#fromMat3d"},"RO79-fUvkVX17BZOhaR76":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#identity"},"Jjw61EVKmdGNxwR_5gVSl":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#invert"},"WX8QisyHYpL-7xy8ljz6Z":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#isIdentity"},"GeXVij_a3MV0v6OvZftG2":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#multiply"},"d7buY01tL2zyY8RNis2PC":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#rotate"},"_YpOkxAgoXhWqowL2ycnv":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scale"},"inyFtUDMhTLbDV8WKbhzU":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleV"},"L7NR2VpzgYiwU1phnI89J":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleX"},"0rfYzOBN2BmuQnQFOpIHx":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleY"},"huB_uhsmlaisXi0i7wkp0":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#setTransform"},"AxoCYNLrCnSRb6dDtj0pd":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toArray"},"1I6vRz7PMwdpiT0kG67OB":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toString"},"CL-e25AV4yiGsDyVKx0uv":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transform"},"Z-gp6DI0qE99oy8xQk0bE":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#translate"},"n-qRzhpAyzlb41H0PcBfN":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transpose"},"XngvomhtYEjG0gTLbGIjz":{"uri":"/melonJS/docs/melonjs/Matrix3d.html"},"1TVz_-dXO1oLCXyIGqii-":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tx"},"JFnxgiOKOqr1oYu7MDxPJ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ty"},"L9olZzyr7nP-BcdmiTnki":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tz"},"Y-iqQoHrKS8uQv7bpGeez":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#apply"},"cf-_RPv7MigzOp_gNLCYA":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#applyInverse"},"2IHgZA_MDk7j8gOECnFPg":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#clone"},"S3K9124qSTdwH4YuMwQi5":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#constructor"},"a4gmLuYzeW6M0EVrF0rSJ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#copy"},"rD8vRuhHd2Zk6uNXF970S":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#equals"},"U-A5boD0_KRv0WDYDG3f_":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#fromMat2d"},"gRtPKJF6_oBoaGTIqfuPT":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#identity"},"yfab29Lun-Sf7RGkVgvMd":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#invert"},"ZVNkCqr_WfBmPrWOBcUdP":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#isIdentity"},"T0fNyaGmEI7V-RyfESvuo":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#multiply"},"0Dz-CzibzVkmjJUUAYgrS":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ortho"},"xmc33rnwXztmXA2PnhxrG":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#rotate"},"VZppfhicvfP-Ki_jh-BXJ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scale"},"L4TaTAHDv1qrd8winSfFp":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleV"},"ignx9cEhK-uh8HgCJltRf":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleX"},"nIlYJcEm4NZk1PX5FqdWb":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleY"},"YhjZFNUBRCsZul_yDJeZF":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#setTransform"},"Oc_RRLgALd1Y-Hg3Lh9OZ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toArray"},"TBmAMCjbk9UJXqpYsGTCT":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toString"},"Q6NzKOUjpOol9jPBnZLjC":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#translate"},"g0H6vGgOPHFb7o8fdQ2-5":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#transpose"},"5PzSO4UygwcjbUnD8jglF":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html"},"9uK8llzGssOjlACpzDhKG":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alpha"},"rvc5pWX1VUXc851u5mi6J":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alwaysUpdate"},"2sbWtg908dX7RMh3ARke4":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#ancestor"},"u8TMQ1QAzqudrjkgqIawT":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#anchorPoint"},"xIccliz9DNZ3s-m9-6Xm1":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationpause"},"TpuFNtohEX4aiOgTguP5j":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationspeed"},"HNvLFIrmiZtDwmxpV1k-r":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#autoTransform"},"Xd8rGAtev_2vYMJUWjQ1H":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#blendMode"},"oljlYULl7qew-rIrs5J6E":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#body"},"tSXw37U7uPVT7IDpNxcFs":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#bottom"},"MDRdmwBWL5Bu1g2pXX-OR":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerX"},"E0I-3F_aLSNU_E6BVgf3i":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerY"},"IhY3XIt2ZiPw1IdYz5E6b":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#currentTransform"},"IhIGPTX3k3eFYM5j_f-zk":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#depth"},"SwkUFmdqPn8QoZybWhvoW":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#floating"},"-LbutexUV7kda4k_mYJ92":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#GUID"},"lDnxnNFhAHGgVVWYBPPei":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#height"},"mHGpuBHx2h_VmQZxDjyZ7":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#inViewport"},"GR5YM1HZQvpCNLAJ6JLdy":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isDirty"},"sOCkX_Ra46dPredL9bpU0":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedX"},"CF5R48d1Mfw5WUoE5xEje":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedY"},"zw8HisYPBrW_dzNSNjKdA":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFloating"},"5jmqewm9nC76VkvW0HWic":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isKinematic"},"RqJiOs88eU8UU_NP3wYly":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isPersistent"},"nyIlBjbby-yIQqE14rfxK":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isVideo"},"3IqqAP9O1-K06m1DMI_VQ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#left"},"hKZn5s6SIMQISZCS37F1q":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#mask"},"9NToDxt5c5Oqg7AZ54mTD":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#name"},"A0i8R8-WxQ-_rT4H3VbrC":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#offset"},"11V0JZqvWvvBPssHnavac":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onVisibilityChange"},"bhxQDFAQJVXpZeczT-gEJ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#parentApp"},"y5Gpuegi1-qJfY-tB_5v-":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#points"},"RE_3shXIHXlIk9SFV-7um":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#pos"},"n6aYXIeckYd4wup9BgFCx":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#right"},"E-dscyYcu6Kq2nSs6lpQC":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shader"},"-wKprCkMyoabkIRIGI8hX":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#source"},"XWE0ayZFOkogPAhO0d5F2":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#tint"},"T55nOU0bjkwoS2KuH1rKV":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#top"},"jEzz50kABhioQgUGx5TUs":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#type"},"uUccTngE6n3NrkRnsIo_r":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateWhenPaused"},"72_joNKpBwPOaFxAsWygB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#width"},"RvQR96_e2g4JV5WJLmjn4":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#addAnimation"},"xQmd2P_--UOPf9Tqd_zzB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#angleTo"},"TgNlSv78D63mgdffedlDi":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerOn"},"H4QZ4TbHhei42he6cX5ux":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#clone"},"de0I536rSoB0nbvsTN49h":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#constructor"},"wURTz3NlmOXpRnS1qg_0C":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#contains"},"r_giPLifmxLUyciSUI7z1":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#copy"},"u6UcTJLdcrBnidKlSkFP6":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#distanceTo"},"uQxB1xBLJKnfTH350ZWNG":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#equals"},"c3_P2j0Kfu6wE_jn5teQb":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flicker"},"Q17hzNoKDpTOJ8wEhGSPn":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipX"},"ZpDL1wMMA-yq6PbuVUuPa":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipY"},"oumFnysnAbwncoZIuLORA":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getAbsolutePosition"},"ThXZUAqQMhvz8DHK_5ILM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getBounds"},"Kc_exOvpQjk_8N1V9860y":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getCurrentAnimationFrame"},"Bf8seq8N4aqlLzFY5dqKg":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getIndices"},"nbWmQd4A4874EQ7yRsFkc":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getOpacity"},"T2hp2rGzwD7fsBoJnvYpI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isConvex"},"Ukuj9oALvXtKIh0kOypXT":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isCurrentAnimation"},"w6BlnUP5XmICacJ1UZw4j":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFinite"},"W5-5N56neQmAev2Hw6qFB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlickering"},"UhrLeSMfhsseTOjKt75ic":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#lookAt"},"2dL3DBCj3NhXyKRQXJt6d":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onCollision"},"yKyU3AiqE6-5HRnZouSOV":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onDestroyEvent"},"fH3vYd6waY65ZbEHsdYXd":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#overlaps"},"s_X8YJ6JpPZFKCx0AIeng":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#pause"},"dTqXGkOkm_DFsvr02y_qo":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#play"},"CLvTR7JMyRMeol4AtujF-":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#postDraw"},"BVKSXLsBZNKXU6_l_pR0Z":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#preDraw"},"blJRZVuj4Mt7ryHk48TCD":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#recalc"},"ECiDUiAmU76cU1tQtb_dH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#resize"},"opzz3_EWvGRNJpc0RBKVD":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#reverseAnimation"},"xL_02IDoihgWUwYQDG_uv":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#rotate"},"5nT3puqgzsJEMKu1HEI2h":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scale"},"cRmpv4qBJ1hohOPNf3kgr":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scaleV"},"h5lRQjxJCvbMp36AFrwGb":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setAnimationFrame"},"ok66tRzzOpWyhCFA0ZukI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setCurrentAnimation"},"pB9xz3aYf8-qax5bt8pA9":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setOpacity"},"2IUxavLreajqGvuD__oGR":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setRegion"},"HuZjLZjUKktsRan5kQv8R":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setShape"},"6vQDlbQmxb33wv626IihF":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setVertices"},"AY-Qehsx-Cbaf82oKyPcr":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shift"},"5fFC7Of5oxvUTPwX7Jk_c":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#to2d"},"kvPT2zMo3SM4XqpwCuTuF":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toIso"},"faKqXNntLMSQYUMA1eabM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toPolygon"},"G6D7I5binQNPfgm5ZkOmg":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#transform"},"P0msbI_DHsbPKLer_D4iS":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#translate"},"WF_OFsCS4zDVEN2i9P4gL":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#union"},"qJSKyNO36Q2jy8tavFSLr":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateBounds"},"9OpuDVvaHzKrZX_Bv5VJ8":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#draw"},"i2-yRIV68e4t4AdT0d9H9":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#update"},"UbsFuWBwrGzOaySgpttoE":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onAnchorUpdate"},"-_lJOhnqhFiUigBpLA92k":{"uri":"/melonJS/docs/melonjs/ObjectPool.html"},"OifmFnEEIaHBQ7ui_oFx2":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#exists"},"6D_u0IKSWESxedfljSNx6":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#getInstanceCount"},"mfd6peGgY5qy3OCKDWxT8":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#poolable"},"iBEFxTzY8S9h6qAvyWQ7j":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#pull"},"wMCKA15YucrILjxgi6tSr":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#purge"},"RO1KDUp18k07sPlN5BxyO":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#push"},"gOF0sP0WdRgpvsLc1_5VL":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#register"},"mZg5Ung3sjY10hQfKAmin":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html"},"YACFR_JelhiIx3b8vHjOY":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#x"},"mbBXKT07GHOhX2xLzvzj_":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#y"},"wlmoYyfotCL_oOCxoBwl2":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#abs"},"ahJEM1XUv8LHMuGVQ2S5O":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#add"},"lBKKHuvYnbVQeRON3csKM":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#angle"},"MPfUmCa5_w9yS0ayCfWM3":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceil"},"xAvBJYmSZN-0pYgSdR9bT":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceilSelf"},"x2145MkVvFn4TicRWPCFM":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clamp"},"dTeyHtDaSU5NdrnoAcUNo":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clampSelf"},"TeM7lgH_OxTj1QcpZLzxh":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clone"},"w7c1qim6SIB5ZOvREQsIT":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#constructor"},"CWEShrE15hfwINIpr3CKQ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#copy"},"lcLO37mG8bddB3UoGyqqN":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#cross"},"Nsbqcd_ff42iSztujsmMR":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#distance"},"ceDJfT7KTUTEa60063PkM":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#div"},"D9NPJ4ngXyySmAqEvSnsP":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#dot"},"nBXv5MAMJ11LgMSqt3MUu":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#equals"},"bW0rot-aROv3Izdfsx49t":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floor"},"iAR7AMGTktB40TrQ2bxr0":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floorSelf"},"iN44mEvV-NAyWFQQG8Bij":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length"},"y_3nZ9b3v7EI2U3Q8Pp4q":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length2"},"slTAadtDsREkwE8A9ylGD":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#lerp"},"wySlyTG-hzTSI2FueeFhS":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#maxV"},"AC-d6HMgMmWpfd3B4jfiJ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#minV"},"uoZ2lKhkw2nw0v2R35cZI":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#moveTowards"},"vruel-PP4oseIM11ZzAP7":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negate"},"q61UmGaZ5LOc59Lk_8sL6":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negateSelf"},"ubSebtP_ZSIeQbnlhjVzc":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#normalize"},"thBY2HNNFHyMxvMPOWrRd":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#perp"},"sUi1Oi8BdhjqzBSmqaaEp":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#project"},"0disccHjiRKQ-AoIyXt2K":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#projectN"},"6EzXVES2haU3z6a7NvI8I":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#rotate"},"yHt28OLU--w0h8dVWqMrw":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scale"},"IDbV5J-QnkaZH6qYi5Wie":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scaleV"},"KKuHDnMwPBHMw-yGoH4c-":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#set"},"9sOVK3KlpB_zPnjrNmUXh":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setCallback"},"oxtqJumghPOqtvLlVPm8u":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setMuted"},"sUnx7sGgrXs_YSqglB6PU":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setV"},"GYUAijz9LuWhv1Drq0wQ8":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setZero"},"qZ66C9kbZfTr_QfBvALO1":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#sub"},"XUln4FKifmzicNMsuEA4X":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#to2d"},"gC0fhMeXiVR7zFrSYJ8ld":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toIso"},"ys2sgIMzzGiJNdYIphLM8":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toString"},"HaKo22bT6ypPNieecMq10":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toVector2d"},"Ft6-I-YOn1qitNnlhLhX2":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html"},"NCklLh66OehaHT8mZcji9":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#x"},"18EUOXPCWIr8Y1TvnNN8y":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#y"},"ScTDxrI_dn2F5zRLB4_Q6":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#z"},"ZnzgWErEz46dmrz9M216X":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#abs"},"ZGEnkxNoDtHXAzfHc5LH5":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#add"},"n46Xee38aF3AE7SXTAXKD":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#angle"},"3NtXA1rb14pQeuEGBFIVj":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceil"},"4mRFBeBP9aLNBkn5F4IaF":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceilSelf"},"q7X4WSXerECRg-aAl6l0M":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clamp"},"oPEG5Y8ZVan8aNUlZmOtZ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clampSelf"},"8jkKAted9wE7J-GFs5d5G":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clone"},"ZeyPd9o0U47ANX0KX4zT4":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#constructor"},"1f7g-Bef-50MPcZj6CjOZ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#copy"},"qjiWLu0tsffskSE10jZkA":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#cross"},"sHPEvMeJXyHfEAXb-jXN_":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#distance"},"s85axGnVdB_bk2rA-abOc":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#div"},"ihbcgWnwsBaJuySNcjXTf":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#dot"},"CLKCyUrKF4OtAoGFYZ90J":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#equals"},"kFpDsex7WpQcdlJLLOigX":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floor"},"J9YmHeucrBpbjUm7VIktv":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floorSelf"},"hyN-wURHUXVqEwbPySgrL":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length"},"WKTYdrGA6GK_OL8MLmd-A":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length2"},"CsKlJYNJ3ZvCVjRV9YeqP":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#lerp"},"mQoZcDNwsg6CaoNG8q1ML":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#maxV"},"OM9dHDj9TKGF3IyJYTUib":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#minV"},"HQjUlJRJ4pgZuawhyLlY5":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#moveTowards"},"azEGoGYm3mvfvd87QY4VK":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negate"},"m-GtavQ-GMkNY6jT-PIpD":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negateSelf"},"_5KlfgEMt68xUbJuldn38":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#normalize"},"SctCa7CtZzyF4dUt914WQ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#perp"},"f0J6eUWKab0R3i0WFia3P":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#project"},"c1q0bGrPxiWO_zVm-ZC65":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#projectN"},"laBalwEdZoY3H6e9w8lal":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#rotate"},"eGVsBG1YtJ85UncgG14n4":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scale"},"4VtAN5Dp6rTF9-zE-zDrQ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scaleV"},"r-kJc7s6akXirj40rxXTN":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#set"},"1gUzdy7bwIpdgEZPtvVyC":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setCallback"},"jpJZWjSkSL4ROb3aF3GJ6":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setMuted"},"uQ4taeEU_a1vzqF31W3cF":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setV"},"ulCHW5hF9y0AqnpkFMmh1":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setZero"},"8jafzH36RUe460_oRmzJB":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#sub"},"sKZTr3r1SA8b0Vh2vARjj":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#to2d"},"VNoM8tqd4uJ4gMlk1Gjid":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toIso"},"hMlbOUpT3qCPTn-aGCWM3":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toString"},"ydI0C74714RkkgpOg6Ulh":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toVector3d"},"G-JOIl_nJxPhSI8DM5ZMH":{"uri":"/melonJS/docs/melonjs/Particle.html"},"_nGqRB96fDxvPEG2CnzSh":{"uri":"/melonJS/docs/melonjs/Particle.html#alpha"},"ZYyDTHVgpoD-N2EgtvQbD":{"uri":"/melonJS/docs/melonjs/Particle.html#alwaysUpdate"},"1nlAVdAQI_ezapPBN9pUx":{"uri":"/melonJS/docs/melonjs/Particle.html#ancestor"},"uB-HzeXJxpA9K-_XUMtd7":{"uri":"/melonJS/docs/melonjs/Particle.html#anchorPoint"},"8-GdhVwSQi3YKtlMKYciv":{"uri":"/melonJS/docs/melonjs/Particle.html#autoTransform"},"hTjsQ0zHhU290S6y5VW5T":{"uri":"/melonJS/docs/melonjs/Particle.html#blendMode"},"OuuL20FTMAf7EAtWFR6H_":{"uri":"/melonJS/docs/melonjs/Particle.html#body"},"T5EAv-yz3ATeC6uL4WOj8":{"uri":"/melonJS/docs/melonjs/Particle.html#bottom"},"PPV54du-uiOaF-I8YudVL":{"uri":"/melonJS/docs/melonjs/Particle.html#centerX"},"d3SLb6OjtSkXRgZ5DTUpY":{"uri":"/melonJS/docs/melonjs/Particle.html#centerY"},"plLSXhTwq_n6k6sldCKOU":{"uri":"/melonJS/docs/melonjs/Particle.html#currentTransform"},"7zX1CvVR0uQN4JMjO83Qq":{"uri":"/melonJS/docs/melonjs/Particle.html#depth"},"tfnk_pYkXZzbYwrpkVXmH":{"uri":"/melonJS/docs/melonjs/Particle.html#floating"},"wbO0GmPlZVlWXEmuby09b":{"uri":"/melonJS/docs/melonjs/Particle.html#GUID"},"LNvmN_x8aARJiT58u67DM":{"uri":"/melonJS/docs/melonjs/Particle.html#height"},"q3YoUWoArzwBepfW_LeIP":{"uri":"/melonJS/docs/melonjs/Particle.html#inViewport"},"UTvztyQlf0uLjve7Lwgw3":{"uri":"/melonJS/docs/melonjs/Particle.html#isDirty"},"DTP-2r41nv-Ea3UELGGGl":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedX"},"wPX6MEzmrUY1Cv7IJ4DhU":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedY"},"E_Ig4wlg77VNIpooKas4S":{"uri":"/melonJS/docs/melonjs/Particle.html#isFloating"},"zMa23B9BXL7D_Lf6HaMeF":{"uri":"/melonJS/docs/melonjs/Particle.html#isKinematic"},"bBIg5siZGeyZ4vcC6eM5Q":{"uri":"/melonJS/docs/melonjs/Particle.html#isPersistent"},"h9egxsHkIp12J5SVaCpNK":{"uri":"/melonJS/docs/melonjs/Particle.html#left"},"G-wLMRTnxwY3v30QWLW4H":{"uri":"/melonJS/docs/melonjs/Particle.html#mask"},"1OMixaT1xpG4_jhsYaZIn":{"uri":"/melonJS/docs/melonjs/Particle.html#name"},"q3rY555jVxd_TLgouSTbK":{"uri":"/melonJS/docs/melonjs/Particle.html#onVisibilityChange"},"arU8BPDlN-XS3mjNj5WWo":{"uri":"/melonJS/docs/melonjs/Particle.html#parentApp"},"Cb1Dm0KL-c1ItZgZue8EB":{"uri":"/melonJS/docs/melonjs/Particle.html#points"},"bi-fGlKEqTs0uHqcbxzIS":{"uri":"/melonJS/docs/melonjs/Particle.html#pos"},"CbHjK5bkki9JBPE5NyzdK":{"uri":"/melonJS/docs/melonjs/Particle.html#right"},"IXps5TqsN0uLa19wIF0qx":{"uri":"/melonJS/docs/melonjs/Particle.html#shader"},"GyjwS8HLPhQA7IO1yEr6k":{"uri":"/melonJS/docs/melonjs/Particle.html#tint"},"-b5sL2mCHi9UfTeD60wn1":{"uri":"/melonJS/docs/melonjs/Particle.html#top"},"AB7Vnb8u8uCueLJmr5AiR":{"uri":"/melonJS/docs/melonjs/Particle.html#type"},"jo80UGkQDFVjdtxpmkFT7":{"uri":"/melonJS/docs/melonjs/Particle.html#updateWhenPaused"},"_zUVy97XcllZ2SuZmMioc":{"uri":"/melonJS/docs/melonjs/Particle.html#width"},"Qf-eryogAqzUSN_OLCHzt":{"uri":"/melonJS/docs/melonjs/Particle.html#angleTo"},"F82lp3q_57nI310hllBoR":{"uri":"/melonJS/docs/melonjs/Particle.html#centerOn"},"1bbFJ9T6utCreM-5A5CUT":{"uri":"/melonJS/docs/melonjs/Particle.html#clone"},"ucT3vVeBCLAEl0Q06b86p":{"uri":"/melonJS/docs/melonjs/Particle.html#constructor"},"AXFcX5jQr_JMPPFn2nnxs":{"uri":"/melonJS/docs/melonjs/Particle.html#contains"},"mBlUBbr78Ol8kLOh6AYXk":{"uri":"/melonJS/docs/melonjs/Particle.html#copy"},"zlbsD3N7RJ_ZFc0SMypbT":{"uri":"/melonJS/docs/melonjs/Particle.html#distanceTo"},"1X-1H2MMcUkbJjTaehIrf":{"uri":"/melonJS/docs/melonjs/Particle.html#draw"},"derTDrByRVcaybDKWvDQW":{"uri":"/melonJS/docs/melonjs/Particle.html#equals"},"Lu72PlABFGJK0A0pJhBmq":{"uri":"/melonJS/docs/melonjs/Particle.html#flipX"},"XArEcCJWZBXJ1pQEI18oy":{"uri":"/melonJS/docs/melonjs/Particle.html#flipY"},"H3hFDqmyiALdh-CQQBt1c":{"uri":"/melonJS/docs/melonjs/Particle.html#getAbsolutePosition"},"2zM-LMCFJStM1h6VOAVCO":{"uri":"/melonJS/docs/melonjs/Particle.html#getBounds"},"1kQOleXRI8tFZwPUDWec6":{"uri":"/melonJS/docs/melonjs/Particle.html#getIndices"},"QF3ynU1L-ZH87pBgecuPT":{"uri":"/melonJS/docs/melonjs/Particle.html#getOpacity"},"lFqD6wmKidEFX0kCvXg-b":{"uri":"/melonJS/docs/melonjs/Particle.html#isConvex"},"2sHadMvFtS0bwZ_t1xfEE":{"uri":"/melonJS/docs/melonjs/Particle.html#isFinite"},"Bh_5FuNuPqvwPjgdqK3GO":{"uri":"/melonJS/docs/melonjs/Particle.html#lookAt"},"5UMyUqtGCe6ADULmieBQQ":{"uri":"/melonJS/docs/melonjs/Particle.html#onCollision"},"R0weWUNtGtI3-iKTL-grL":{"uri":"/melonJS/docs/melonjs/Particle.html#onDestroyEvent"},"r26vjU8rSBgKF-5Bt0fYi":{"uri":"/melonJS/docs/melonjs/Particle.html#overlaps"},"zjSghhPezsdgRHdIdDLqp":{"uri":"/melonJS/docs/melonjs/Particle.html#postDraw"},"LD75h90jwqSfwr-QSyFm2":{"uri":"/melonJS/docs/melonjs/Particle.html#preDraw"},"xXsddWSXa7U56c11nxY-L":{"uri":"/melonJS/docs/melonjs/Particle.html#recalc"},"nq_lpJOab_irf8P-82hBC":{"uri":"/melonJS/docs/melonjs/Particle.html#resize"},"zzsFrtMPmZHou_zYVO-5L":{"uri":"/melonJS/docs/melonjs/Particle.html#rotate"},"z9ulvDLn-K8lYocy7GNze":{"uri":"/melonJS/docs/melonjs/Particle.html#scale"},"3MBb0Ub0ZoDa-7oTFRnI0":{"uri":"/melonJS/docs/melonjs/Particle.html#scaleV"},"0NyvGPsg7gd0AXTqeckmI":{"uri":"/melonJS/docs/melonjs/Particle.html#setOpacity"},"uDuPfnEem5JVi5Ae2mI_D":{"uri":"/melonJS/docs/melonjs/Particle.html#setShape"},"k-gDq7y9kEgKW0lfhktGL":{"uri":"/melonJS/docs/melonjs/Particle.html#setVertices"},"9dF8EGUHUeejWE6_eU4Mo":{"uri":"/melonJS/docs/melonjs/Particle.html#shift"},"ED2etpf9yxELZLLtjAlQ_":{"uri":"/melonJS/docs/melonjs/Particle.html#to2d"},"Z0e0m7vocHOZ9iLGAk4RI":{"uri":"/melonJS/docs/melonjs/Particle.html#toIso"},"yRNiZ-1sdqltQOc3QYZWX":{"uri":"/melonJS/docs/melonjs/Particle.html#toPolygon"},"_u3vQFFyPO8hxprONargf":{"uri":"/melonJS/docs/melonjs/Particle.html#transform"},"igdvxk_W1_fykpbmZ7atN":{"uri":"/melonJS/docs/melonjs/Particle.html#translate"},"zJSVB825vW9fTkz2FuKng":{"uri":"/melonJS/docs/melonjs/Particle.html#union"},"eeIaBEurNMaKR1psdrYPM":{"uri":"/melonJS/docs/melonjs/Particle.html#update"},"Sp1UeHQNJfR9jbScqYmPa":{"uri":"/melonJS/docs/melonjs/Particle.html#updateBounds"},"sQvGs3WA_uz9INyCyC6He":{"uri":"/melonJS/docs/melonjs/Particle.html#onAnchorUpdate"},"UaFTHbuGVtqVLbAmGeCcm":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html"},"nKgZvWpvm7cMchoD14Qck":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alpha"},"rKgKRSmOwVNbJbPkU2USz":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alwaysUpdate"},"JqpXvkE4Li8qgr82MNuNw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#ancestor"},"4JsxetGEir2SoxE2VVlUx":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#anchorPoint"},"dse5x0YLe5HgJ45rOmACa":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoDepth"},"jK0z6TmwNfWkreRi_KDX1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoSort"},"HQbCO_TIsGZIzKbCG7pmv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoTransform"},"aPQQU57FsQ46VbPO-7EhX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#backgroundColor"},"uGRgaKkDcAKskpvN1kyww":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#blendMode"},"w0yyXjgeZp9YZ_HDTBaj_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#body"},"YiC3ILunh78-sPiHCPZfT":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#bottom"},"2hG97IZb0yuF3n-S983a6":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerX"},"cW4NhxAnj3LH-G4gzj0l_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerY"},"GcATQEIc5vj9r_I_EWVaF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clipping"},"1piVmW9c3oyxt-tp5gOSC":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#currentTransform"},"BMxrOd2-gI3XGEOV6LpyW":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#depth"},"Aw3GhetW_oARQJPiKk_NX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#enableChildBoundsUpdate"},"R9ttrXBLNDm4P7gfHDHQ6":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#floating"},"z5MeqhmuRdmF5kPdmLyES":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#GUID"},"QiU8QB0rG9J75r65OV3F5":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#height"},"kjR8B9hY0H-fT8Uf-uxEV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#inViewport"},"smKsi3A21N1zx9EAMtBgf":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isDirty"},"9aBwqvQVc0iulMGNz2WmS":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedX"},"ABPn_8RnPsZ3ZXuRlscUr":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedY"},"APcIpeLOJ92M4ie6LGLuo":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFloating"},"RSq4xUb_hb10y1VVPbdXG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isKinematic"},"2KcAH6GqqaP9ADNh0lZZI":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isPersistent"},"oJSGOaMFqiHUDjmVEkbIA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#left"},"QEIROJ9VP60YQWn3r88EJ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#mask"},"TrYGeBqqTMB9ejM-_c22E":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#name"},"lqUS7XppmUejp-14Vp_ST":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onVisibilityChange"},"ddMuij6TYW-B3k6O9co4r":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#parentApp"},"yBCZzOuEUY3s5i7R7zM5A":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#points"},"RRt1UHkr2-a4ckTuhhV7B":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#pos"},"3FRNqlB4qs08WqU_bEF0C":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#right"},"6BE-4pGPV71jLiUd4bZ7U":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#root"},"lBCUHtRzI_4TDKnL2zL2r":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#settings"},"PG_yfvG1YVwvLRaYrkl8e":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shader"},"TNUuTdmsAdh4CxaKJsOBG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sortOn"},"T1nEDiOVbRqTtxtre8zLO":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#tint"},"bhHOAFYwK9ookWICckdiz":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#top"},"KEZXFIMuq9UFRPWkM2t2F":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#type"},"bUdOYhWMLMirCoeixKNhW":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateWhenPaused"},"t4jGPB97xASM_JZ7qVK8X":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#width"},"wtcitOvk4UBaeRPOxk8Mo":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChild"},"41wcjVzvxVlU-LKPmEn_u":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChildAt"},"Gvi-FGXIhqoKkNiNDGlft":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#angleTo"},"36uP-qF5xT8pv2zTP0ULw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#burstParticles"},"9mHwvXpdKG9wfUCB0Id0E":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerOn"},"ip9eoxhrQZZlSGcLPDELQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clone"},"sVUo4a1533ChwdxaLM_2O":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#constructor"},"fusWzWGTtCZoBYMiMiGjF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#contains"},"t4b-7cIN65AUgn7e2Ur3D":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#copy"},"ZqF5SyZzL8hHUa3ZkN31h":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#distanceTo"},"kIhmV7AcDd4MZ7Kr3bl2g":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#equals"},"scPoYPsVkplhyC6MYVhzu":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipX"},"Z3SNDh45Nl1lSzLM3f-G8":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipY"},"JKGXGZgD2Duju6j3pXOKA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#forEach"},"CuqCGW1cWqc4wyYQsNQha":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getAbsolutePosition"},"Fs94zX_fLoI-QWzUh6GUh":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getBounds"},"gjBE0MKE0QTuScm8ZyT3_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildAt"},"N-p6PdogULpvCaXEXwcYt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByGUID"},"r5TTqqB-kUAwhDX72h0_6":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByName"},"325TUq8FNPML7HQjjJH9w":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByProp"},"j0p1dWOTGIWw6ttwmlw2d":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByType"},"eckalFPJVAR2ILkhRx6Sb":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildIndex"},"VD72vuCOe6rKO9eyPAipG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildren"},"-4yv6ZfcISYKBFkXpBAL0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getIndices"},"402nQkG0HqfSdtTusQNvU":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getNextChild"},"TwoS7lkEZNA4ECA96J6pU":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getOpacity"},"OvvztM6TjTxpGHHeppzkv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointX"},"9G7y73kpOSlVXDyM4EeZL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointY"},"03rUaSZihm3nx9yBRcNDX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRootAncestor"},"x-Cl31CBhK_r-1x-6xYvh":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#hasChild"},"uEUzQR2NSadCiOyQbleQ2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isAttachedToRoot"},"D1BkFvlbzZ2y2ij3I4hMf":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isConvex"},"6vA6D4VkTMA1-LrfXhhbB":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFinite"},"pWDvm5ATvOLdFIpe1QWiN":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isRunning"},"1KIub2wsfmC1_8MVVnI7L":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#lookAt"},"KIBlCpJw8brQb03lWRWMA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveDown"},"LcJTSLCj943f_OCqBIOta":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToBottom"},"snwArG8X8ThGFNGf0euzC":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToTop"},"PWopfYuUqx3DhM71bM60p":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveUp"},"jEVkzkp-mUDMnwj4Wdu4Z":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onChildChange"},"TfyCgY3Do-5hKAoE-7pED":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onCollision"},"L9wVWFXLRxUW7EkA7L6DS":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onDestroyEvent"},"GSH_Kn-9wE1J4zLZC4y9U":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#overlaps"},"kwXKWeZVo6I5K2qYnmPwl":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#postDraw"},"ohzacAgKNcNDZ7_8eEYOm":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#preDraw"},"qzoTTMfPbnGHZUYJoTAQL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#recalc"},"uA9TzEiBFHNUOnw1mY5w0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChild"},"yF1xyhzmWy7OCTFQgFN5s":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChildNow"},"yzUymWGLzBc1m4URpmkca":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#reset"},"QxfjIavcKEeqDkiJt3hCu":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#resize"},"uw2Di8iLXuJFHrSgfy7fw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#rotate"},"ie6L-gM8tOeRtfGDZjMyh":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scale"},"W_ZgFhBEK6dBtCv4CpCCe":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scaleV"},"ySyLYZT4kGcmlNUvALMQ9":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setChildsProperty"},"HVdLk3H8c6vvjavZ9uKF1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setOpacity"},"taKZKRvCk8lMCVhNCJ15L":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setShape"},"7FP1tXcpsZn2BLaPynQKS":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setVertices"},"as1XBmUXmZpUY3E2KTf_w":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shift"},"D_MK07fv-zCLT00PWEdDQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sort"},"YiQIoZn5Y1VTnKgZrCIiq":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#stopStream"},"9pDenINnSfKZVQneP6iM_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#streamParticles"},"Jd4X4AowpSFmoT8kMGB5V":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#swapChildren"},"hmIfdNQXc6LGvFsvAW0jw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#to2d"},"g0hITBKf7OJUNdNnjY3Sr":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toIso"},"Jm6lLY5Zx-T4s4VcT-OAN":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toPolygon"},"6EGLBsJGqqfU8Inr7i8wi":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#transform"},"4RE_QJfQio8qw8WcNbqzM":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#translate"},"KftpomKeZeoDtg4dhfzFY":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#union"},"FVqDNGusdvQWE0vOP5EGL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateBounds"},"R_ua7j7Uc_UaCfqmCPbyV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#draw"},"sAUPkyMESUmNwHYlu_hPv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#update"},"Uf_VG9sWPS4MhBf8r0NIb":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onAnchorUpdate"},"AiMer498DNIVMepm101vZ":{"uri":"/melonJS/docs/melonjs/Path2D.html"},"MUYKkO4YNAgKFIIBmbquy":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcResolution"},"OJsQNID8-LU8LsOmRPDo9":{"uri":"/melonJS/docs/melonjs/Path2D.html#points"},"TzGWew779b8FaoC27bYCX":{"uri":"/melonJS/docs/melonjs/Path2D.html#arc"},"LSaOR1Jx2grBn0GVzyH-u":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcTo"},"29pA9rNdFcjeW_LeG9yQA":{"uri":"/melonJS/docs/melonjs/Path2D.html#beginPath"},"Ol8UH4NO0ieSUbtRKgrPh":{"uri":"/melonJS/docs/melonjs/Path2D.html#bezierCurveTo"},"q9gXK82yG0b7oyoC46LD6":{"uri":"/melonJS/docs/melonjs/Path2D.html#closePath"},"TgnURVvWbXmNiOjHpDyOs":{"uri":"/melonJS/docs/melonjs/Path2D.html#ellipse"},"GKwewCt9rg4mGAKwXd1fS":{"uri":"/melonJS/docs/melonjs/Path2D.html#lineTo"},"xKes1_DcLp2sUNAlamjwG":{"uri":"/melonJS/docs/melonjs/Path2D.html#moveTo"},"-vc8g187tfLlAdNWeN6TV":{"uri":"/melonJS/docs/melonjs/Path2D.html#parseSVGPath"},"LySIldONb-8lhi4dWZgLA":{"uri":"/melonJS/docs/melonjs/Path2D.html#quadraticCurveTo"},"2Z4iHmD1mQPANIgVKuik4":{"uri":"/melonJS/docs/melonjs/Path2D.html#rect"},"tAmHaBYz39Hry6o-LxhDa":{"uri":"/melonJS/docs/melonjs/Path2D.html#roundRect"},"ndb1w7u6ACW8tnjoztxYN":{"uri":"/melonJS/docs/melonjs/Path2D.html#triangulatePath"},"R3EflEz2ltqFyZCP61cpx":{"uri":"/melonJS/docs/melonjs/Point.html"},"zq--zv72iE5m4GBewgqtA":{"uri":"/melonJS/docs/melonjs/Point.html#type"},"IKATn29az2W8r0FGyiY45":{"uri":"/melonJS/docs/melonjs/Point.html#x"},"Kq72dAWDxzRR2KJE0g0V9":{"uri":"/melonJS/docs/melonjs/Point.html#y"},"XZsfB2e7vTNk07_H54Iq3":{"uri":"/melonJS/docs/melonjs/Point.html#clone"},"IQ7CXuVR_uxtWTuIIjlk0":{"uri":"/melonJS/docs/melonjs/Point.html#equals"},"78sCSGwT_Ciz9XRn4r4Xl":{"uri":"/melonJS/docs/melonjs/Point.html#set"},"uznQzwSiNKZUovjoDGXWQ":{"uri":"/melonJS/docs/melonjs/Pointer.html"},"yzWDMimOI1L2CeQo1Hvbg":{"uri":"/melonJS/docs/melonjs/Pointer.html#bottom"},"obNPUPxvOCmTeGblLcO2e":{"uri":"/melonJS/docs/melonjs/Pointer.html#button"},"qospH8C24ajDSqHFSR27e":{"uri":"/melonJS/docs/melonjs/Pointer.html#center"},"CCPO1A1XCCANEorPZTlI0":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerX"},"nzAuQCd6FpEKxDvtBCdR3":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerY"},"7_9uxy4tF7mItiaQ0nv4F":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientX"},"2heJtZ7bV5EOpbu_EEp6o":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientY"},"0TB9YMhtlkTPcWTiyrXhS":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaMode"},"WgXOd2Pd4iYQ66cMyjjLq":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaX"},"-ZS2FmDCqFMSyamX7lofU":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaY"},"6r2V697ikL6buUPZc85Gc":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaZ"},"mZDFovLEWBS6bw5BSGdku":{"uri":"/melonJS/docs/melonjs/Pointer.html#event"},"cQP1YmgaGUt5JB9t2fA3N":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalX"},"fuPnK4fAP-GK4Zvbx4dka":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalY"},"5emqutOdkehLi4PmwlpdW":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenX"},"I78UNLf95KaUuaJvpStHa":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenY"},"7u_KP-sWNzCsqYGbjYxyN":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldX"},"8gEfWu8ZxPSj9OcYnncm7":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldY"},"y6gYwWv1lb0e8QM40NVHK":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameX"},"S6tjo8vOAbyjz01h-no62":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameY"},"3O6GYQwnMYxSP7ktTuxkT":{"uri":"/melonJS/docs/melonjs/Pointer.html#height"},"9RLmmZSfSoE-7m6FBQ-nN":{"uri":"/melonJS/docs/melonjs/Pointer.html#isNormalized"},"MbPdIXKCBGPM_xxgUy50Q":{"uri":"/melonJS/docs/melonjs/Pointer.html#isPrimary"},"8PHfEmjC_ti9ibszMca8o":{"uri":"/melonJS/docs/melonjs/Pointer.html#left"},"Y9ax-QQjd6cBEpeneMNkK":{"uri":"/melonJS/docs/melonjs/Pointer.html#LEFT_"},"7DqxzvxE71urQDs0EyDoi":{"uri":"/melonJS/docs/melonjs/Pointer.html#locked"},"ybthEYyCbZ_4jsHoGz-bh":{"uri":"/melonJS/docs/melonjs/Pointer.html#MIDDLE"},"TtyiRxcJNnb2zEwYBcCR0":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementX"},"o4XtFBIWG1qUn7OBJr-mX":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementY"},"Bf0BNbt3aALf-TzIzTvJV":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageX"},"E4iybxm6nB4jVJpUEZitF":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageY"},"ov2HRrR0XAhRAk2tFVEys":{"uri":"/melonJS/docs/melonjs/Pointer.html#pointerId"},"78C87zerzojR7kTRbW6a_":{"uri":"/melonJS/docs/melonjs/Pointer.html#right"},"qCJD3U-tafPeapPQaZZAD":{"uri":"/melonJS/docs/melonjs/Pointer.html#RIGHT_"},"yX5Rx5xWw0qpONICvZEr7":{"uri":"/melonJS/docs/melonjs/Pointer.html#top"},"lfKS_l0OrF4cZhTxIlaFt":{"uri":"/melonJS/docs/melonjs/Pointer.html#type"},"w5fNps1FUSmetzeqmYrab":{"uri":"/melonJS/docs/melonjs/Pointer.html#width"},"rzaTiUm7sOVSo7_bFlOeV":{"uri":"/melonJS/docs/melonjs/Pointer.html#x"},"bNiM8zzp5brZD2Bgi_FTG":{"uri":"/melonJS/docs/melonjs/Pointer.html#y"},"xLxpvWJMe3wp4Sa2MUQoY":{"uri":"/melonJS/docs/melonjs/Pointer.html#add"},"PFlMmOZI-z6XFgMadBBJW":{"uri":"/melonJS/docs/melonjs/Pointer.html#addBounds"},"SLWr0vRnoHuvSHZ_Z_7yS":{"uri":"/melonJS/docs/melonjs/Pointer.html#addFrame"},"FsOZK5NwJ3fiyC7Irf7rF":{"uri":"/melonJS/docs/melonjs/Pointer.html#addPoint"},"O5IbLxq7Jv2NS3d5gozGo":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerOn"},"6_xQor3UiT4yOH9T5cISP":{"uri":"/melonJS/docs/melonjs/Pointer.html#clear"},"sy4mW0hLhV71VeZVCLtFp":{"uri":"/melonJS/docs/melonjs/Pointer.html#clone"},"F5thIO7CQhoGT5be-4kxY":{"uri":"/melonJS/docs/melonjs/Pointer.html#contains"},"6ELMkvFxZpvb5IMglS5Vg":{"uri":"/melonJS/docs/melonjs/Pointer.html#isFinite"},"WL9wEfjXJuoaRKY1x0yav":{"uri":"/melonJS/docs/melonjs/Pointer.html#overlaps"},"WCcT_aw8slpVEnq_XY8Y0":{"uri":"/melonJS/docs/melonjs/Pointer.html#setMinMax"},"qBAkYQsDTWFc5PtkXBvZ9":{"uri":"/melonJS/docs/melonjs/Pointer.html#shift"},"3To9-HT9cNHXsQAKuLmRQ":{"uri":"/melonJS/docs/melonjs/Pointer.html#toPolygon"},"fgIspJd99C95VLTl60Mey":{"uri":"/melonJS/docs/melonjs/Pointer.html#translate"},"0hQD-Am9wDUFtgLyWV33L":{"uri":"/melonJS/docs/melonjs/Pointer.html#update"},"GXQuht6Lg3TpJnAEXdoq9":{"uri":"/melonJS/docs/melonjs/Pointer.html#set"},"ycwMbAQ86wM0O078X75Q2":{"uri":"/melonJS/docs/melonjs/Polygon.html"},"Q3LJkqBSUyYbzdzF4TEZP":{"uri":"/melonJS/docs/melonjs/Polygon.html#points"},"abQqDZxI5Okzer8mw_JXF":{"uri":"/melonJS/docs/melonjs/Polygon.html#pos"},"wSMpCkz0e2oZEKi45l3-d":{"uri":"/melonJS/docs/melonjs/Polygon.html#type"},"YPVmG0pSFlDWjKWIB77aV":{"uri":"/melonJS/docs/melonjs/Polygon.html#clone"},"l3xm0cCiWMexHzx9cK4Jy":{"uri":"/melonJS/docs/melonjs/Polygon.html#constructor"},"assKpkb_m2JhvZpGZZ5MB":{"uri":"/melonJS/docs/melonjs/Polygon.html#contains"},"3xVbb3b1rAhdQUyS9NCGo":{"uri":"/melonJS/docs/melonjs/Polygon.html#getBounds"},"FfS8qm-wtate_fdX0e_ir":{"uri":"/melonJS/docs/melonjs/Polygon.html#getIndices"},"ex23V8qbl1lrIprYsT632":{"uri":"/melonJS/docs/melonjs/Polygon.html#isConvex"},"W9yvTvW88UBc2SK7sprGF":{"uri":"/melonJS/docs/melonjs/Polygon.html#recalc"},"Gk6TM-C1jYa3jVnnnxfwF":{"uri":"/melonJS/docs/melonjs/Polygon.html#rotate"},"-v6kXbDijD9rUArDPHQlB":{"uri":"/melonJS/docs/melonjs/Polygon.html#scale"},"IzEEBtj2-OrM1tRupRdww":{"uri":"/melonJS/docs/melonjs/Polygon.html#scaleV"},"a5Xol6IDLHNNcjg2HS_xo":{"uri":"/melonJS/docs/melonjs/Polygon.html#setShape"},"Nq5kTojslC-ycdVNx0oid":{"uri":"/melonJS/docs/melonjs/Polygon.html#setVertices"},"afASxQfOcExluiGl-YB3K":{"uri":"/melonJS/docs/melonjs/Polygon.html#shift"},"fU7_882FgppN4l5kXeiFg":{"uri":"/melonJS/docs/melonjs/Polygon.html#to2d"},"sEymM6gQPIoVTMONck_Ov":{"uri":"/melonJS/docs/melonjs/Polygon.html#toIso"},"xTE0k63fSGdpReFPoOuQq":{"uri":"/melonJS/docs/melonjs/Polygon.html#transform"},"XsgWAnmQkAsj-vYRazo67":{"uri":"/melonJS/docs/melonjs/Polygon.html#translate"},"12Qgen8AQlUXa4cHzqUE_":{"uri":"/melonJS/docs/melonjs/Polygon.html#updateBounds"},"dsPldeXArHsbIvLcO6tiK":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html"},"QotBY5oQ-rDrUidkgecym":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#attributes"},"GxgUCr4iOraBUI32e_BBl":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#currentShader"},"xYyh995Ik6PVGAcbY7AzH":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#defaultShader"},"UFCk1YZdb9o9_quSU62bp":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#mode"},"FHDMNvXhQ6RkT0gAscOJE":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexByteSize"},"V6h_cazwya7W_VfTZsW4C":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexData"},"dwlX8Z-e4UnKijDTMkpZ0":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexSize"},"o3zqPeZfwXbuXv2XQNPCc":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#addAttribute"},"gdjnc6qw5KWs_aTI8guRm":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#bind"},"UPGWkXEBFfEif6pAAyJoM":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#constructor"},"f38ewncI28jPtkFLsCjjp":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#drawVertices"},"GlpoTzwW1iWBxz7cNw7_J":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#flush"},"qwi8Tolzj3qqVApy1btRV":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#setProjection"},"Gdicb3-OKNAm851a9TSDS":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#useShader"},"3acjjqVnUnEbvLgrBty4d":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html"},"Q-CjArysbjvv_p8PCsMuS":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#attributes"},"cSgEhDFXmfCnzmie3yLeU":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#currentShader"},"YhvlePH1kRJU_wLJw62qa":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#defaultShader"},"Z_4cpWGWRovYGGRtjqTv2":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#mode"},"av2bQElM4p3klOTN7ys2u":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexByteSize"},"WafhhNkwPQNo63Q6X9Ppa":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexData"},"agTAycHEBOrxHvoKCO-Q8":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexSize"},"kH2oKn9lG4t_xGvcq_nUC":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addAttribute"},"bUQf5qKIVn59majNGQsrG":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addQuad"},"aWC4MWB0OB4jidfXnuzWq":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bind"},"5pP6HoFPhZEa6kSwB0BLy":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bindTexture2D"},"DPtSZbcjnJrLW0tpkijha":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#constructor"},"51pdlPExg9ubRr-tZNhDz":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#createTexture2D"},"6bVa3GTgrrr4m1xiIfM6k":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#deleteTexture2D"},"W-Qzl_Ar-vvpyTIe2B66U":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#flush"},"Tp5XOCjBvdnKVqShKkKBO":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#getTexture2D"},"RiWykxk53q8E6A1Xjpcy5":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#setProjection"},"GI2j1f7_gB6HPoGyd2zuG":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#unbindTexture2D"},"pnd_37RLmRYzkPYa81xdf":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#useShader"},"7ehQOJlXYvdLFVClgJaU4":{"uri":"/melonJS/docs/melonjs/QuadTree.html"},"_GpLv2mKOGuBbuzyvfj_A":{"uri":"/melonJS/docs/melonjs/QuadTree.html#clear"},"jJh3gejTuDQhcBS5so3Pl":{"uri":"/melonJS/docs/melonjs/QuadTree.html#constructor"},"djK86LbViWYA8GR4SZ_kp":{"uri":"/melonJS/docs/melonjs/QuadTree.html#hasChildren"},"ZIvGPh2pqlSC1vjo_2jTn":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insert"},"kZrvWdpZ3VZVwtbaxWPQU":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insertContainer"},"xbu-B_I6k0RHNgPXNyYjV":{"uri":"/melonJS/docs/melonjs/QuadTree.html#isPrunable"},"yIWU4XkIW_5dL1FRB75-x":{"uri":"/melonJS/docs/melonjs/QuadTree.html#remove"},"5KWpgvk00rsoAAV2zFRDM":{"uri":"/melonJS/docs/melonjs/QuadTree.html#retrieve"},"pOxkAIOiBIMHH4ZYD8Yhu":{"uri":"/melonJS/docs/melonjs/Rect.html"},"NUO3-Uzk5MKO9iBvqqUik":{"uri":"/melonJS/docs/melonjs/Rect.html#bottom"},"ehnWql8Ugq3EVf1aCyZPz":{"uri":"/melonJS/docs/melonjs/Rect.html#centerX"},"Qk5cdIzpBmyBE1g1vvOT2":{"uri":"/melonJS/docs/melonjs/Rect.html#centerY"},"N-Rfp5vsmQq_8WHItRudb":{"uri":"/melonJS/docs/melonjs/Rect.html#height"},"wOjulRNJXu3sL7Vx2o6De":{"uri":"/melonJS/docs/melonjs/Rect.html#left"},"yLYaigxKOlFkVjj9w6Er5":{"uri":"/melonJS/docs/melonjs/Rect.html#points"},"KcSWghyrwGllskV98zXcN":{"uri":"/melonJS/docs/melonjs/Rect.html#pos"},"zFgYA0FGboKcaVO2yfBtr":{"uri":"/melonJS/docs/melonjs/Rect.html#right"},"nVjp9HoomPkQz9YUIhDUn":{"uri":"/melonJS/docs/melonjs/Rect.html#top"},"0KjdfDXmSvJYdEjFg9jyZ":{"uri":"/melonJS/docs/melonjs/Rect.html#type"},"CfXWFK-w2RGM8bkewdTZ7":{"uri":"/melonJS/docs/melonjs/Rect.html#width"},"flPOgrzzoAYxvNiDmNpoy":{"uri":"/melonJS/docs/melonjs/Rect.html#centerOn"},"dN55bap1v3382C_xqLkaM":{"uri":"/melonJS/docs/melonjs/Rect.html#clone"},"uji_JAg1jzLmhgHVHMmCP":{"uri":"/melonJS/docs/melonjs/Rect.html#constructor"},"vxRuacoUPJ2bCrtPgR7JG":{"uri":"/melonJS/docs/melonjs/Rect.html#contains"},"spCy2mLmOa1Aa5JpBgLAX":{"uri":"/melonJS/docs/melonjs/Rect.html#copy"},"TKHX-hwsCau9dxVbDmMzY":{"uri":"/melonJS/docs/melonjs/Rect.html#equals"},"TYkHNdKE_5FHQVPXijdF8":{"uri":"/melonJS/docs/melonjs/Rect.html#getBounds"},"XDSnlfwCxa66sszpEnwak":{"uri":"/melonJS/docs/melonjs/Rect.html#getIndices"},"HWGtgdoeqUoNh_NhmtSiQ":{"uri":"/melonJS/docs/melonjs/Rect.html#isConvex"},"1LRCcxKNj3BNEHfPUElYB":{"uri":"/melonJS/docs/melonjs/Rect.html#isFinite"},"EQDMKdEvSvsNiC_nlg9V7":{"uri":"/melonJS/docs/melonjs/Rect.html#overlaps"},"uG9P30r5ru4bviu0ZSuNr":{"uri":"/melonJS/docs/melonjs/Rect.html#recalc"},"bjQg8kI8KP_6qcU1zuCCw":{"uri":"/melonJS/docs/melonjs/Rect.html#resize"},"7g4EDv-k09edoJ3AobMP9":{"uri":"/melonJS/docs/melonjs/Rect.html#rotate"},"izHNgTarAqNxSOYw8UVnA":{"uri":"/melonJS/docs/melonjs/Rect.html#scale"},"eTh1a5nHfkcElWUeokxW-":{"uri":"/melonJS/docs/melonjs/Rect.html#scaleV"},"sQxa8yOq-4Q9SlYALEio8":{"uri":"/melonJS/docs/melonjs/Rect.html#setShape"},"5htgOCQYY0qXeHRJ2HFVZ":{"uri":"/melonJS/docs/melonjs/Rect.html#setVertices"},"7XeFHjp3c7LVhyy4ETIi6":{"uri":"/melonJS/docs/melonjs/Rect.html#shift"},"NpnMA_R3_o68Z-zeiMt1v":{"uri":"/melonJS/docs/melonjs/Rect.html#to2d"},"6sQe2OQJq9P8o3tPju3wU":{"uri":"/melonJS/docs/melonjs/Rect.html#toIso"},"XIItiF_HzdnTslFo3h9B5":{"uri":"/melonJS/docs/melonjs/Rect.html#toPolygon"},"klRbBvKcEN9-L8vTt4kYu":{"uri":"/melonJS/docs/melonjs/Rect.html#transform"},"JUib1XQi1O7EJNkdJYNW9":{"uri":"/melonJS/docs/melonjs/Rect.html#translate"},"GNuvE1Ux6fWLvob166cXW":{"uri":"/melonJS/docs/melonjs/Rect.html#union"},"4youj53fMmJ655GBJeO_7":{"uri":"/melonJS/docs/melonjs/Rect.html#updateBounds"},"IGho-zvdLsHTBphUhm3GW":{"uri":"/melonJS/docs/melonjs/Renderable.html"},"74JUzHYtW34VEol62f9RQ":{"uri":"/melonJS/docs/melonjs/Renderable.html#alpha"},"I9uielFOCSExMjsJIzLk6":{"uri":"/melonJS/docs/melonjs/Renderable.html#alwaysUpdate"},"kG2Ext9Ug6CRYXvqdMOKQ":{"uri":"/melonJS/docs/melonjs/Renderable.html#ancestor"},"SQKlguuT_Y3wiqC5_V-q0":{"uri":"/melonJS/docs/melonjs/Renderable.html#anchorPoint"},"GL12Y8wlw23gpIraAnnxU":{"uri":"/melonJS/docs/melonjs/Renderable.html#autoTransform"},"qrv1xfkISceIdaQuiyARz":{"uri":"/melonJS/docs/melonjs/Renderable.html#blendMode"},"1ZshDpuPUtK0S_chjQHq7":{"uri":"/melonJS/docs/melonjs/Renderable.html#body"},"GecXB6lDVdvKsxfeqjNo1":{"uri":"/melonJS/docs/melonjs/Renderable.html#bottom"},"6EFgmBXyK8rVtJ9xRXR-1":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerX"},"gOWLHdRzpQ4bynf3UQHYc":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerY"},"_RU0TD9Mwp6fstL1Dhb5A":{"uri":"/melonJS/docs/melonjs/Renderable.html#currentTransform"},"V8CrKwp_hlAawTYM64ydv":{"uri":"/melonJS/docs/melonjs/Renderable.html#depth"},"WdYr4dlXI6CuyY9nuwsxs":{"uri":"/melonJS/docs/melonjs/Renderable.html#floating"},"XTC-ZugBQGi4aWHrjNNFe":{"uri":"/melonJS/docs/melonjs/Renderable.html#GUID"},"XlFQ2Ibj9p7xO9pkf48BD":{"uri":"/melonJS/docs/melonjs/Renderable.html#height"},"dcN8gJYj9e9v7phwgnCdv":{"uri":"/melonJS/docs/melonjs/Renderable.html#inViewport"},"HUgddbQcygt5LXUVnUjhF":{"uri":"/melonJS/docs/melonjs/Renderable.html#isDirty"},"Z-ZzF2xkZN1tkqrg078Vq":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedX"},"ckm-2HE18NiLR6sTcg3nv":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedY"},"4Q7sEtmTxxoJNe-D9JOEF":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFloating"},"7-26rILEDoEAtm46iYsoI":{"uri":"/melonJS/docs/melonjs/Renderable.html#isKinematic"},"Fdn4QWNX0SZeRrYlUIWOP":{"uri":"/melonJS/docs/melonjs/Renderable.html#isPersistent"},"R2HPACfRWjFDQ8Im4tcnm":{"uri":"/melonJS/docs/melonjs/Renderable.html#left"},"ZROtb7phF07arreAhlLsH":{"uri":"/melonJS/docs/melonjs/Renderable.html#mask"},"hp6xvgDoR7gb20dbfW3kU":{"uri":"/melonJS/docs/melonjs/Renderable.html#name"},"7obWEldo-BOzTWMUweKiQ":{"uri":"/melonJS/docs/melonjs/Renderable.html#onVisibilityChange"},"i6tiVzh1QJdYVzPkdmlUK":{"uri":"/melonJS/docs/melonjs/Renderable.html#parentApp"},"gDTrD1gmCMeLUNjYH194R":{"uri":"/melonJS/docs/melonjs/Renderable.html#points"},"l1l9x0RKAA_Uvdcd3S4sl":{"uri":"/melonJS/docs/melonjs/Renderable.html#pos"},"EiqtAsDdwJ1rlKpYVIDxT":{"uri":"/melonJS/docs/melonjs/Renderable.html#right"},"Y7SzcYqMLuSj7oMqs2LGK":{"uri":"/melonJS/docs/melonjs/Renderable.html#shader"},"jNqFA08jPHP6YObui0Pcr":{"uri":"/melonJS/docs/melonjs/Renderable.html#tint"},"O9KVm95AuS2KybSatubmT":{"uri":"/melonJS/docs/melonjs/Renderable.html#top"},"VGqHu84mz0cTd8-3pOLNE":{"uri":"/melonJS/docs/melonjs/Renderable.html#type"},"3FZZdRGdf5Fqfah5fWz47":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateWhenPaused"},"LbKiNsXy309WQS4Ex2ne5":{"uri":"/melonJS/docs/melonjs/Renderable.html#width"},"AZnNmMP7mXsy-eiNfTzIH":{"uri":"/melonJS/docs/melonjs/Renderable.html#angleTo"},"S_ivqB4iyQ2T8z9JUOe14":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerOn"},"aoYo7NNd9Vzmt50DA1rmu":{"uri":"/melonJS/docs/melonjs/Renderable.html#clone"},"slPix1e1CPfSm7MzL2IOH":{"uri":"/melonJS/docs/melonjs/Renderable.html#constructor"},"8k3oiHv2MRujeUG5hbVgi":{"uri":"/melonJS/docs/melonjs/Renderable.html#contains"},"VVu_7a_Bjb_Wd2cKqQhOK":{"uri":"/melonJS/docs/melonjs/Renderable.html#copy"},"jxCt3pxkCQHQT6tVhhA9f":{"uri":"/melonJS/docs/melonjs/Renderable.html#distanceTo"},"YwgR33dsnuVTdheuuB-zy":{"uri":"/melonJS/docs/melonjs/Renderable.html#draw"},"6coT-YW2KdChEx3g7gjWc":{"uri":"/melonJS/docs/melonjs/Renderable.html#equals"},"vDxPf2ghytMTzB2zuraJa":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipX"},"miqHNmpDrJFo4hfEwLyRv":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipY"},"KPuZVu3EBb0DyXXsoFkZY":{"uri":"/melonJS/docs/melonjs/Renderable.html#getAbsolutePosition"},"b0iRvdkYstpYf7pRTZUJK":{"uri":"/melonJS/docs/melonjs/Renderable.html#getBounds"},"-VacHScf7iOje0Bpqyguh":{"uri":"/melonJS/docs/melonjs/Renderable.html#getIndices"},"TPuXv6SZ3oYBvcCsOTWwH":{"uri":"/melonJS/docs/melonjs/Renderable.html#getOpacity"},"YqkdlJAAm_ZhVgPiYuD10":{"uri":"/melonJS/docs/melonjs/Renderable.html#isConvex"},"IDFiiqE3Y_lpWoDuOWSLj":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFinite"},"II_5VfW_Zb8avMwMHfssS":{"uri":"/melonJS/docs/melonjs/Renderable.html#lookAt"},"N2LJMoWwUYKFyjhKo2KkT":{"uri":"/melonJS/docs/melonjs/Renderable.html#onCollision"},"mjJD4z5GSFoneEG5e5upo":{"uri":"/melonJS/docs/melonjs/Renderable.html#onDestroyEvent"},"QFehK27OXDrKp_VP0FLI9":{"uri":"/melonJS/docs/melonjs/Renderable.html#overlaps"},"Si9j7lDI7vZZmuReM8Clz":{"uri":"/melonJS/docs/melonjs/Renderable.html#postDraw"},"QRuZbvJqf6-8Qmu4XnRmN":{"uri":"/melonJS/docs/melonjs/Renderable.html#preDraw"},"N0449DVmn_HMCaEsN-mNk":{"uri":"/melonJS/docs/melonjs/Renderable.html#recalc"},"0YS3dEe__3xzF7LqKp2AS":{"uri":"/melonJS/docs/melonjs/Renderable.html#resize"},"h5_QZ4ip1L6s2UGZadEd8":{"uri":"/melonJS/docs/melonjs/Renderable.html#rotate"},"PmaBUYQkTows9GjP3Mvy8":{"uri":"/melonJS/docs/melonjs/Renderable.html#scale"},"rurTqr7n5CxBxyC3taRET":{"uri":"/melonJS/docs/melonjs/Renderable.html#scaleV"},"S6qF8ACgXuzIUo3w5VlWJ":{"uri":"/melonJS/docs/melonjs/Renderable.html#setOpacity"},"9Cpnou_qGMrU1sq857Dms":{"uri":"/melonJS/docs/melonjs/Renderable.html#setShape"},"2iaDPfjoz4ghTRbBRvEDG":{"uri":"/melonJS/docs/melonjs/Renderable.html#setVertices"},"SjowITrIxud_d-CoALcVX":{"uri":"/melonJS/docs/melonjs/Renderable.html#shift"},"ZIC0qX9KaLN2XHb1IHX4_":{"uri":"/melonJS/docs/melonjs/Renderable.html#to2d"},"nEPFXJsrERsCdoto2oprm":{"uri":"/melonJS/docs/melonjs/Renderable.html#toIso"},"JUfevxK9Y_-I4Z7xujbsv":{"uri":"/melonJS/docs/melonjs/Renderable.html#toPolygon"},"5kaeL6c1Ul0DtyIz0obvL":{"uri":"/melonJS/docs/melonjs/Renderable.html#transform"},"02uFBzboczf6inzoTXJaa":{"uri":"/melonJS/docs/melonjs/Renderable.html#translate"},"bSnQ_Db3IpB1vbZ64mhkG":{"uri":"/melonJS/docs/melonjs/Renderable.html#union"},"boWo_PZjYeNH6hEKtBtM3":{"uri":"/melonJS/docs/melonjs/Renderable.html#update"},"9RVMlQwehEr2Wh4vJ3pA5":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateBounds"},"goNQKDvDtbeWxv9VZSwvT":{"uri":"/melonJS/docs/melonjs/Renderable.html#onAnchorUpdate"},"dzRxGL4sqTGo98_VlWk11":{"uri":"/melonJS/docs/melonjs/Renderer.html"},"ideMI8QuRHwck-_8dtzPD":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html"},"-jNdC0gI0or6HXR8cZbA4":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html#constructor"},"BNETJ3NftuEbGZ3rHhn3I":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html"},"z3kNMc_eHNfZ_Mc77bvBp":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html#constructor"},"dUfRIlWpaog_cHNjswClh":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html"},"VcAE9we0T-Ijn4pI0Vq0D":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html#constructor"},"P8BlQIFtLHPjwloSYdbvG":{"uri":"/melonJS/docs/melonjs/Renderer.html#depthTest"},"HruNPoaK0_anHB0o7W8TQ":{"uri":"/melonJS/docs/melonjs/Renderer.html#designRatio"},"8h1Ne0I8-D6MJNP4-BnAf":{"uri":"/melonJS/docs/melonjs/Renderer.html#height"},"k52Qo3lPGym8a-ZvjqlVU":{"uri":"/melonJS/docs/melonjs/Renderer.html#isContextValid"},"ux8AvkfR-vdQsCbozD_7V":{"uri":"/melonJS/docs/melonjs/Renderer.html#path2D"},"c7sLVwHHUMNzjocCiYCyn":{"uri":"/melonJS/docs/melonjs/Renderer.html#scaleRatio"},"BcPzlEDunorLiGm5qZn0W":{"uri":"/melonJS/docs/melonjs/Renderer.html#settings"},"mj_Ym3ycT2Qecbva-GIMe":{"uri":"/melonJS/docs/melonjs/Renderer.html#type"},"lsTLhgGrZgQTeJeVjg4yy":{"uri":"/melonJS/docs/melonjs/Renderer.html#width"},"osNDR-kKu4IHqSz4fVMwT":{"uri":"/melonJS/docs/melonjs/Renderer.html#clear"},"WvUcSbokxvJaud2TLMvdA":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearMask"},"0d1uYI-92a6Z--Q1E8DU5":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearTint"},"6pQJxoLGTw3hsoL3SUJIH":{"uri":"/melonJS/docs/melonjs/Renderer.html#constructor"},"BeRfJOCSoH9nxEgzBmpWl":{"uri":"/melonJS/docs/melonjs/Renderer.html#fill"},"U6EBQJ69tI4WDPJtt8Rwq":{"uri":"/melonJS/docs/melonjs/Renderer.html#flush"},"enLEBJyVTZ2TZtsXW1gVM":{"uri":"/melonJS/docs/melonjs/Renderer.html#getBlendMode"},"nZaEwbsgPjHB8LQeLo4rG":{"uri":"/melonJS/docs/melonjs/Renderer.html#getCanvas"},"gbTdTna1j5bSUNOZ3tTDS":{"uri":"/melonJS/docs/melonjs/Renderer.html#getColor"},"nm0H7r8eVDoN3hS48Va3o":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext"},"w2bUrf3MeXWrAGWjq2cQT":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext2d"},"Lch0WmKt1XY4CExwP1UZg":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenCanvas"},"DbI2RP1KuvWk8Pt_ixHHU":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenContext"},"wmnXlQX-RuWRx2NSPuV6C":{"uri":"/melonJS/docs/melonjs/Renderer.html#globalAlpha"},"PQX8roAh3CdLd1ZnvxGFn":{"uri":"/melonJS/docs/melonjs/Renderer.html#overlaps"},"utaMd4jIaEgNJiAsESuyJ":{"uri":"/melonJS/docs/melonjs/Renderer.html#reset"},"RgZIGUjdyGQU4jS7sd-Js":{"uri":"/melonJS/docs/melonjs/Renderer.html#resize"},"MxtzMGTTJ6t8OxUpzVZdZ":{"uri":"/melonJS/docs/melonjs/Renderer.html#setAntiAlias"},"MU_Sr6X8jX-3q8YpRFmke":{"uri":"/melonJS/docs/melonjs/Renderer.html#setMask"},"O7XWFo51fLYXTmHksWmN6":{"uri":"/melonJS/docs/melonjs/Renderer.html#setProjection"},"My9ngjihEJKT0vngvlWsl":{"uri":"/melonJS/docs/melonjs/Renderer.html#setTint"},"n1Zk3VUbOo3-zX5IP8Sto":{"uri":"/melonJS/docs/melonjs/Renderer.html#stroke"},"OJlOHtpIlsPcbrfVkg38P":{"uri":"/melonJS/docs/melonjs/Renderer.html#tint"},"2JjuvSkKOEMQq6cfkOZ7h":{"uri":"/melonJS/docs/melonjs/Renderer.html#toBlob"},"cglYiX0GRnOj5n29qLf4q":{"uri":"/melonJS/docs/melonjs/Renderer.html#toDataURL"},"v0SHJV02pAFvHPmFmaHqJ":{"uri":"/melonJS/docs/melonjs/Renderer.html#toImageBitmap"},"-eXTiYbXdPWi_-kwSn976":{"uri":"/melonJS/docs/melonjs/ResponseObject.html"},"vjtRQ6CeR1dx6DKkGtedM":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#a"},"3o5VLVS0O7nRtqxul6OoT":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#aInB"},"Kois3LXExCJOFC2Hy-Glg":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#b"},"kq9sVIfPBJA77gbIHBkiS":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#bInA"},"CrIVPFgAY_M_TNY4RULCw":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeA"},"YDEOTwI9c0kBirFmASIKp":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeB"},"8YZYrQDdKR5Fh7Rvh2IbA":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlap"},"OcjbCagOe1_ZCTAoMKKH2":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapN"},"fh9uambmwwR_NWhK4wQo6":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapV"},"AeeHczfUK8yXQsu8QLcqt":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#clear"},"bqpFjCEFPPIWS5-Jg6ZbU":{"uri":"/melonJS/docs/melonjs/RoundRect.html"},"9g7XLv4OZm4nrn0Mq-uPt":{"uri":"/melonJS/docs/melonjs/RoundRect.html#bottom"},"frYLUdslVQpcEShbR3pOy":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerX"},"1ZJBE4Dt5QXPwSUbk0MQx":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerY"},"0eVjFxM7KfbPOvS5hlOqK":{"uri":"/melonJS/docs/melonjs/RoundRect.html#height"},"XNRdmDrYI0-lO7scg9Gku":{"uri":"/melonJS/docs/melonjs/RoundRect.html#left"},"NTygw6QZsxxkz7tKhQFUT":{"uri":"/melonJS/docs/melonjs/RoundRect.html#points"},"-qVm04ODaM7FuVG32dWI8":{"uri":"/melonJS/docs/melonjs/RoundRect.html#pos"},"pbZba-dcGh7i-7BigOqhu":{"uri":"/melonJS/docs/melonjs/RoundRect.html#radius"},"ybbds9RwOZtpjEGGZ1a-i":{"uri":"/melonJS/docs/melonjs/RoundRect.html#right"},"LKqNtFoUDNzMnI9G885uL":{"uri":"/melonJS/docs/melonjs/RoundRect.html#top"},"d58lTc4ivPLPFw6yjg2yv":{"uri":"/melonJS/docs/melonjs/RoundRect.html#type"},"JihCMmmgWPGj8Cp17n6jy":{"uri":"/melonJS/docs/melonjs/RoundRect.html#width"},"lqbo7doXMxW0egcTytUUS":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerOn"},"0HSiGMK6zNyomSW_JIP8v":{"uri":"/melonJS/docs/melonjs/RoundRect.html#clone"},"F1WabZ41qBEHs7AOhmok2":{"uri":"/melonJS/docs/melonjs/RoundRect.html#constructor"},"b3zKrhpmAIsKpF4_zoE66":{"uri":"/melonJS/docs/melonjs/RoundRect.html#contains"},"EMyFwo2RFrVvsN_zjs-8C":{"uri":"/melonJS/docs/melonjs/RoundRect.html#copy"},"5lBz9QIsUWysQMhfjT4xD":{"uri":"/melonJS/docs/melonjs/RoundRect.html#equals"},"UdZRp1qC9DIChLOKkbW9M":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getBounds"},"w3YWKIy2hYUGpKpNnPoAH":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getIndices"},"t8DHVcNFQozqegD5B93bV":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isConvex"},"97rdEmLOpKdcR44txXyKq":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isFinite"},"yKree58BNKlpMKlerX1ON":{"uri":"/melonJS/docs/melonjs/RoundRect.html#overlaps"},"irQ1KjTqohdX4NLE5O3QA":{"uri":"/melonJS/docs/melonjs/RoundRect.html#recalc"},"l6-a4CjxcCRfN4302Mpeq":{"uri":"/melonJS/docs/melonjs/RoundRect.html#resize"},"zs5LgW-4BaoEuLu6qyOdf":{"uri":"/melonJS/docs/melonjs/RoundRect.html#rotate"},"0PRC9YTy2eYKN4PEnS5VP":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scale"},"QZSRUVrJ6p2lFmZj9R7dc":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scaleV"},"p2d0ieL04XffdqmAIMSAb":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setShape"},"nfShY-9lkxVVuF2jXTuzb":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setVertices"},"9DLR98qTcBdgAKnOBHu0R":{"uri":"/melonJS/docs/melonjs/RoundRect.html#shift"},"e9JvIS9Y_9wHgGS1GNBMT":{"uri":"/melonJS/docs/melonjs/RoundRect.html#to2d"},"HIb3YFZVeSMic4GnEdmC9":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toIso"},"bYh5Aqvu-x0TvfvZDJ1eT":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toPolygon"},"OXL1HaBUeo5HS0cO2S2ce":{"uri":"/melonJS/docs/melonjs/RoundRect.html#transform"},"vTbAfkbDS5If3tRkbcKtZ":{"uri":"/melonJS/docs/melonjs/RoundRect.html#translate"},"Uq9BTt60lNYBchjwZRHZG":{"uri":"/melonJS/docs/melonjs/RoundRect.html#union"},"ogNCJCZG8NOefW442OR9i":{"uri":"/melonJS/docs/melonjs/RoundRect.html#updateBounds"},"3_Xhv5KkVL5IQHNCcF8GF":{"uri":"/melonJS/docs/melonjs/Sprite.html"},"TimHKFZcMaY1b7uXq2ijk":{"uri":"/melonJS/docs/melonjs/Sprite.html#alpha"},"_E40EyPAa-viA2Gn-cPxe":{"uri":"/melonJS/docs/melonjs/Sprite.html#alwaysUpdate"},"plOioXasuFnQ4TziGdq33":{"uri":"/melonJS/docs/melonjs/Sprite.html#ancestor"},"pDTHHojNXx0TDMIBN0F85":{"uri":"/melonJS/docs/melonjs/Sprite.html#anchorPoint"},"9YAHsO7mFlHZGl4eTXzbJ":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationpause"},"LOm_qaSoKDdgu-uW3mhju":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationspeed"},"zev-UVgdm90xurqilQ1SG":{"uri":"/melonJS/docs/melonjs/Sprite.html#autoTransform"},"ozIuZUM1q0JEEgl8zjKYe":{"uri":"/melonJS/docs/melonjs/Sprite.html#blendMode"},"C4Bm-0ZM1byh-4tE3U2Mm":{"uri":"/melonJS/docs/melonjs/Sprite.html#body"},"Qksm-T-oWkz8CHJshJV-N":{"uri":"/melonJS/docs/melonjs/Sprite.html#bottom"},"wbwLaCe5AiAsNlLwGVOPC":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerX"},"wh09xiiBSLbL95svr2iiM":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerY"},"JPrqyLeObN5eU6hHVTlFt":{"uri":"/melonJS/docs/melonjs/Sprite.html#currentTransform"},"sd-wnQKOmw2qNQsc_O2ez":{"uri":"/melonJS/docs/melonjs/Sprite.html#depth"},"arVYWJQLPrTnX_nTURQnw":{"uri":"/melonJS/docs/melonjs/Sprite.html#floating"},"ST_9P3rnqmSpJACbvlEAN":{"uri":"/melonJS/docs/melonjs/Sprite.html#GUID"},"O7RKzoQFeruw3muy5YsdT":{"uri":"/melonJS/docs/melonjs/Sprite.html#height"},"OtdN7wX_5n7YTGEd1OGzo":{"uri":"/melonJS/docs/melonjs/Sprite.html#inViewport"},"n95k7Eb5gr8OmYgSnaZ03":{"uri":"/melonJS/docs/melonjs/Sprite.html#isDirty"},"1I1vmMsSbQKolakzrRnSk":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedX"},"WJxS0T4HLPc_rxlKw2jsw":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedY"},"AyRGRbGPc4e_aR0Ft1QR0":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFloating"},"Q52pB1lVqTQBgQX3AipFX":{"uri":"/melonJS/docs/melonjs/Sprite.html#isKinematic"},"UlNn9wHeM-bv2yT5bF7vE":{"uri":"/melonJS/docs/melonjs/Sprite.html#isPersistent"},"AAFLOEKMwGAxUqZ5uI91M":{"uri":"/melonJS/docs/melonjs/Sprite.html#isVideo"},"ozYa00qOEC6z1TU8qMEot":{"uri":"/melonJS/docs/melonjs/Sprite.html#left"},"VnWi5aBcbO7JTEhzKzonJ":{"uri":"/melonJS/docs/melonjs/Sprite.html#mask"},"nctjlXH9gXKjDGYeJ2Kan":{"uri":"/melonJS/docs/melonjs/Sprite.html#name"},"_vlZSvzE20jzHu5-t6LI6":{"uri":"/melonJS/docs/melonjs/Sprite.html#offset"},"yQi8ZLmqz42uKAtnT-U4u":{"uri":"/melonJS/docs/melonjs/Sprite.html#onVisibilityChange"},"uZT6YNqCydukVo3lRoyd2":{"uri":"/melonJS/docs/melonjs/Sprite.html#parentApp"},"I5NYUIfWbybU8VUkM42it":{"uri":"/melonJS/docs/melonjs/Sprite.html#points"},"zXs9qKNiHMN_DMSbIbZri":{"uri":"/melonJS/docs/melonjs/Sprite.html#pos"},"IRqV0enIsEVA0k-eHFG1Z":{"uri":"/melonJS/docs/melonjs/Sprite.html#right"},"YuSiZQmR-6Ld3GRR2FRck":{"uri":"/melonJS/docs/melonjs/Sprite.html#shader"},"l15hjVwPA5b40U_F1KYMT":{"uri":"/melonJS/docs/melonjs/Sprite.html#source"},"28NDr7iQz8DsgDrK8apTt":{"uri":"/melonJS/docs/melonjs/Sprite.html#tint"},"kADPlI0DPIDfSUKDvS3__":{"uri":"/melonJS/docs/melonjs/Sprite.html#top"},"w5bdAq8GHvNqD_57GWA3U":{"uri":"/melonJS/docs/melonjs/Sprite.html#type"},"Ooqk41bUXZrH5j2Rs988z":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateWhenPaused"},"nySnQAl_1ydRRvYGZ9X6a":{"uri":"/melonJS/docs/melonjs/Sprite.html#width"},"Z37NW_DBVGvVmprpBCJMZ":{"uri":"/melonJS/docs/melonjs/Sprite.html#addAnimation"},"YQR7POPUNIhO64qL_uLC5":{"uri":"/melonJS/docs/melonjs/Sprite.html#angleTo"},"IQ4U0mcL5iCHJYcsuVDV-":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerOn"},"DSadzPeTBPTOz4mjQIUMj":{"uri":"/melonJS/docs/melonjs/Sprite.html#clone"},"AQk78wt3uG00bNGTNPs3D":{"uri":"/melonJS/docs/melonjs/Sprite.html#constructor"},"dLNzcI8U3LNPlWyJHB7FC":{"uri":"/melonJS/docs/melonjs/Sprite.html#contains"},"ycLSbDeVb4CAVI_WTlgFT":{"uri":"/melonJS/docs/melonjs/Sprite.html#copy"},"6aU7nXI84SMzw-JvX-taL":{"uri":"/melonJS/docs/melonjs/Sprite.html#distanceTo"},"MOmY1vJn6XHd8nhScKDmp":{"uri":"/melonJS/docs/melonjs/Sprite.html#equals"},"kV00oK5raTVxkR9pV62as":{"uri":"/melonJS/docs/melonjs/Sprite.html#flicker"},"wEwfSs7vNAYWQQcFoO7lp":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipX"},"uueED-s8M_eLthZHbH4iK":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipY"},"dDzZrZSmL_qZVIg9xF79R":{"uri":"/melonJS/docs/melonjs/Sprite.html#getAbsolutePosition"},"jSiMuOKzRL07WdC1wPJbW":{"uri":"/melonJS/docs/melonjs/Sprite.html#getBounds"},"6vcjnxil_4OCWFSzzVlNH":{"uri":"/melonJS/docs/melonjs/Sprite.html#getCurrentAnimationFrame"},"AE_4HhMU-sfPZRRTAdHXB":{"uri":"/melonJS/docs/melonjs/Sprite.html#getIndices"},"MUmWRjjXJYcUEhTDav2X1":{"uri":"/melonJS/docs/melonjs/Sprite.html#getOpacity"},"OcASO-cGIpPEdgndWAlSN":{"uri":"/melonJS/docs/melonjs/Sprite.html#isConvex"},"OExAGNPF-DhykKOFSunnN":{"uri":"/melonJS/docs/melonjs/Sprite.html#isCurrentAnimation"},"yMJueCE3e_6QhXwmqAHdi":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFinite"},"wjkT6PwxYV_n7D-pJOv53":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlickering"},"DPzq-YIEizoeJuUJ3kYnC":{"uri":"/melonJS/docs/melonjs/Sprite.html#lookAt"},"6xly_PtG9-3hPQk4ACYqH":{"uri":"/melonJS/docs/melonjs/Sprite.html#onCollision"},"jV9B6BitlN82lY8pblTdO":{"uri":"/melonJS/docs/melonjs/Sprite.html#onDestroyEvent"},"T8B_iyMtBiaGUOGZwI_TN":{"uri":"/melonJS/docs/melonjs/Sprite.html#overlaps"},"GNIip55vQkxVB5krYORJY":{"uri":"/melonJS/docs/melonjs/Sprite.html#pause"},"DZAj2DFuVRRCUgUylrdpL":{"uri":"/melonJS/docs/melonjs/Sprite.html#play"},"04mgy-UTQPhDdBdIoG-xt":{"uri":"/melonJS/docs/melonjs/Sprite.html#postDraw"},"QA5CReODrwnarOHlBuSvy":{"uri":"/melonJS/docs/melonjs/Sprite.html#preDraw"},"UBbxoNye2lyttNCF2U9HF":{"uri":"/melonJS/docs/melonjs/Sprite.html#recalc"},"ImGtgKS453dKCUvE-GwxU":{"uri":"/melonJS/docs/melonjs/Sprite.html#resize"},"x9ua9JQJU4zPo2EAZ937T":{"uri":"/melonJS/docs/melonjs/Sprite.html#reverseAnimation"},"muFLvFlCbMV27D75AFnaQ":{"uri":"/melonJS/docs/melonjs/Sprite.html#rotate"},"rP7M_v2KzYTOiJ0nr5D0y":{"uri":"/melonJS/docs/melonjs/Sprite.html#scale"},"FiY4YMJPbY_VDLNfunLW0":{"uri":"/melonJS/docs/melonjs/Sprite.html#scaleV"},"Tynsl_L4wPg7SuO3_hRgW":{"uri":"/melonJS/docs/melonjs/Sprite.html#setAnimationFrame"},"7P0U_-5Shx72ZGgFj7Stf":{"uri":"/melonJS/docs/melonjs/Sprite.html#setCurrentAnimation"},"dg6zGSzb-RYW4QIZALqMv":{"uri":"/melonJS/docs/melonjs/Sprite.html#setOpacity"},"c3Iopmhul4nEwHpXFQtJ3":{"uri":"/melonJS/docs/melonjs/Sprite.html#setRegion"},"NOQLIeKgQvIsKGnYv35MK":{"uri":"/melonJS/docs/melonjs/Sprite.html#setShape"},"v766IMXq5-7Gw8F5sd3uq":{"uri":"/melonJS/docs/melonjs/Sprite.html#setVertices"},"rJVwCAMmHMBsxcc1ln8z2":{"uri":"/melonJS/docs/melonjs/Sprite.html#shift"},"gWPw-goPPCG0XmmVFaAJg":{"uri":"/melonJS/docs/melonjs/Sprite.html#to2d"},"BU0LiLWEC7fLaH-OTXaZh":{"uri":"/melonJS/docs/melonjs/Sprite.html#toIso"},"y8gRhj_TWrRjbImymymD6":{"uri":"/melonJS/docs/melonjs/Sprite.html#toPolygon"},"2hnh0UFk3tLn2j4x9U6qo":{"uri":"/melonJS/docs/melonjs/Sprite.html#transform"},"8fDrpyu0ij4_m9PlxXN02":{"uri":"/melonJS/docs/melonjs/Sprite.html#translate"},"VLcJUdZhktPZhk1o9FXJG":{"uri":"/melonJS/docs/melonjs/Sprite.html#union"},"i922D4ioVVgzL1pYdON5J":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateBounds"},"bf5Ys9BB_fatULeXMfzLa":{"uri":"/melonJS/docs/melonjs/Sprite.html#draw"},"ybjkeLv_shzESknQCR5P0":{"uri":"/melonJS/docs/melonjs/Sprite.html#update"},"pwotTz6PnOHrFnXpbe3ow":{"uri":"/melonJS/docs/melonjs/Sprite.html#onAnchorUpdate"},"R9YzM-7bskrclMlzSE30e":{"uri":"/melonJS/docs/melonjs/Stage.html"},"60-pNptK0KLqXW3jq10dS":{"uri":"/melonJS/docs/melonjs/Stage.html#ambientLight"},"qjE0pz7aLDeGnnHXc2ePK":{"uri":"/melonJS/docs/melonjs/Stage.html#cameras"},"BLlE9uyFkLT_dfvIeyji8":{"uri":"/melonJS/docs/melonjs/Stage.html#lights"},"R_0P-4P1a6cl26bnFtJyi":{"uri":"/melonJS/docs/melonjs/Stage.html#settings"},"QHvfksYjQio39wvYmTgYw":{"uri":"/melonJS/docs/melonjs/Stage.html#constructor"},"AWRnuR7pWElTYdWV6I05o":{"uri":"/melonJS/docs/melonjs/Stage.html#onDestroyEvent"},"uf_WEQwXRtuaMqVLQFdfN":{"uri":"/melonJS/docs/melonjs/Stage.html#onResetEvent"},"kdMDF0x26RG610Krfkd8W":{"uri":"/melonJS/docs/melonjs/Text.html"},"PF91RFhGVDSjtKMl1dCMW":{"uri":"/melonJS/docs/melonjs/Text.html#alpha"},"RT_1qa7_CR4WjkVOdwYiA":{"uri":"/melonJS/docs/melonjs/Text.html#alwaysUpdate"},"pa-3lU4HFdlu_vzHw4wqm":{"uri":"/melonJS/docs/melonjs/Text.html#ancestor"},"l-wWqXvafpDJ8JWS6w-jC":{"uri":"/melonJS/docs/melonjs/Text.html#anchorPoint"},"P8ric6zgAbRnpVwVuPRH1":{"uri":"/melonJS/docs/melonjs/Text.html#autoTransform"},"tR2uf8tmFwxIjyhWiL337":{"uri":"/melonJS/docs/melonjs/Text.html#blendMode"},"Q5_K4yJFiVTXYv0xBOZiN":{"uri":"/melonJS/docs/melonjs/Text.html#body"},"pM-KAzQ3qrpI0kg04wfoY":{"uri":"/melonJS/docs/melonjs/Text.html#bottom"},"cJLlmUrBUnEjodSjhxRCA":{"uri":"/melonJS/docs/melonjs/Text.html#centerX"},"iCyKFSob3G_h5VP-5kKxW":{"uri":"/melonJS/docs/melonjs/Text.html#centerY"},"r_WazeHR8PXXeg-hBYDrX":{"uri":"/melonJS/docs/melonjs/Text.html#currentTransform"},"OkcbNFfT0UU6EJJtAgznp":{"uri":"/melonJS/docs/melonjs/Text.html#depth"},"qsMFRfecbPI3-fN57rkcU":{"uri":"/melonJS/docs/melonjs/Text.html#fillStyle"},"jgi1AB8MUoYWig5DfWf21":{"uri":"/melonJS/docs/melonjs/Text.html#floating"},"2sN8mQvavRZ_kKtq-9dii":{"uri":"/melonJS/docs/melonjs/Text.html#fontSize"},"zOGXK6Z83zzjJBZn4Ghqr":{"uri":"/melonJS/docs/melonjs/Text.html#GUID"},"hgvl7xexZF8MYeT532Czs":{"uri":"/melonJS/docs/melonjs/Text.html#height"},"bvn9IpbHzZe6YEliCyes_":{"uri":"/melonJS/docs/melonjs/Text.html#inViewport"},"Ky7ndScZ5w7PoTNNJhp1K":{"uri":"/melonJS/docs/melonjs/Text.html#isDirty"},"x0pJSthZNL1j2KnLTKOAp":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedX"},"3gXjRGWLnIeyADuBgzSs5":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedY"},"SW9-slG4Y0OcbuJEpumRf":{"uri":"/melonJS/docs/melonjs/Text.html#isFloating"},"dIgf-_V2cnAirzTjZu2UR":{"uri":"/melonJS/docs/melonjs/Text.html#isKinematic"},"A5fqks_27H_zzo-QVmVeg":{"uri":"/melonJS/docs/melonjs/Text.html#isPersistent"},"-OGekq7wGMbWQYw13g09n":{"uri":"/melonJS/docs/melonjs/Text.html#left"},"MK8bYW4WSnRPOxZ_d8Wr9":{"uri":"/melonJS/docs/melonjs/Text.html#lineHeight"},"3xjpwISZ2z2ef3cJGDCsw":{"uri":"/melonJS/docs/melonjs/Text.html#lineWidth"},"rYXLpwFV3ss00MfJJ7700":{"uri":"/melonJS/docs/melonjs/Text.html#mask"},"nnNF82aUy0OVGINUtgDFq":{"uri":"/melonJS/docs/melonjs/Text.html#name"},"tF3sKRlL9beE3rxLRf_VH":{"uri":"/melonJS/docs/melonjs/Text.html#onVisibilityChange"},"hc_nHysgloODO27UfePCf":{"uri":"/melonJS/docs/melonjs/Text.html#parentApp"},"hp5sxhgh_0nteELvJBYed":{"uri":"/melonJS/docs/melonjs/Text.html#points"},"3WKq_VQUwaU0PCmhS6C4Q":{"uri":"/melonJS/docs/melonjs/Text.html#pos"},"OiLh061SPl-cglqKB7W05":{"uri":"/melonJS/docs/melonjs/Text.html#right"},"QFbj5c3La_owZjK8nB3tL":{"uri":"/melonJS/docs/melonjs/Text.html#shader"},"RqDgQH3r0NAnEpKItEbv8":{"uri":"/melonJS/docs/melonjs/Text.html#strokeStyle"},"Kpba9-OCS9azB3_LU3ukl":{"uri":"/melonJS/docs/melonjs/Text.html#textAlign"},"Wde_51MNQReBWGvmeI62l":{"uri":"/melonJS/docs/melonjs/Text.html#textBaseline"},"WLHzEYHDqKggVKIG7Pbyt":{"uri":"/melonJS/docs/melonjs/Text.html#tint"},"RbQO_-dBIPJW1-UrjIDaj":{"uri":"/melonJS/docs/melonjs/Text.html#top"},"GH0nT4VHH95vWUZRyymo6":{"uri":"/melonJS/docs/melonjs/Text.html#type"},"bHfsvQTAkT-XCwH8Fkc8o":{"uri":"/melonJS/docs/melonjs/Text.html#updateWhenPaused"},"vp1R-XSGy6ZP2E1uzsVA2":{"uri":"/melonJS/docs/melonjs/Text.html#width"},"vZiA-IkE1MEFbD9Ac3HCA":{"uri":"/melonJS/docs/melonjs/Text.html#wordWrapWidth"},"ydRjfhgLsznkMG5PmlhSn":{"uri":"/melonJS/docs/melonjs/Text.html#_text"},"_DHqJ8yUrw4V55NJ2kTcp":{"uri":"/melonJS/docs/melonjs/Text.html#angleTo"},"512gCgqMY4_OPclousIan":{"uri":"/melonJS/docs/melonjs/Text.html#bold"},"kQ5EwhNOp0d_5nUnG8-2T":{"uri":"/melonJS/docs/melonjs/Text.html#centerOn"},"gwsgydl6X-NaCmWWuB9pX":{"uri":"/melonJS/docs/melonjs/Text.html#clone"},"5MHsfCtsn63HbBEAZRo_H":{"uri":"/melonJS/docs/melonjs/Text.html#constructor"},"J7KnZAjFKSIHXB4y8ML1z":{"uri":"/melonJS/docs/melonjs/Text.html#contains"},"Cy5NDuNoottA7kk10XrM2":{"uri":"/melonJS/docs/melonjs/Text.html#copy"},"V4PcQWjT65FLDwnfRAFFH":{"uri":"/melonJS/docs/melonjs/Text.html#distanceTo"},"-Y3ZW2D8sk7MPiVwO3Ero":{"uri":"/melonJS/docs/melonjs/Text.html#draw"},"InDaHAUjtbH6_Zi29pRh-":{"uri":"/melonJS/docs/melonjs/Text.html#drawStroke"},"trCtFRiZZ5s580SIx6wz6":{"uri":"/melonJS/docs/melonjs/Text.html#equals"},"HWBAKrL93yw1WOVA544mo":{"uri":"/melonJS/docs/melonjs/Text.html#flipX"},"FVrgW_WiDJY2zAOGwo-J0":{"uri":"/melonJS/docs/melonjs/Text.html#flipY"},"GvG-pIpzoEOkggR0SC6by":{"uri":"/melonJS/docs/melonjs/Text.html#getAbsolutePosition"},"-jxJqnKYzcvcWXO80fOv0":{"uri":"/melonJS/docs/melonjs/Text.html#getBounds"},"O-I7XbzPIBQwmQApDqugF":{"uri":"/melonJS/docs/melonjs/Text.html#getIndices"},"HMh-NDn4Y6e7Ims30zrDx":{"uri":"/melonJS/docs/melonjs/Text.html#getOpacity"},"2AbC8nmOvnLGGmRZDs-Mu":{"uri":"/melonJS/docs/melonjs/Text.html#isConvex"},"IQokIXdmn3BcT6Cg9Dg12":{"uri":"/melonJS/docs/melonjs/Text.html#isFinite"},"SQfVOAe4tunmlRBvLYwff":{"uri":"/melonJS/docs/melonjs/Text.html#italic"},"rzjS5UNXyYo5gRGjb1TzE":{"uri":"/melonJS/docs/melonjs/Text.html#lookAt"},"57mhm8SK-72G9di2d4xv8":{"uri":"/melonJS/docs/melonjs/Text.html#measureText"},"aKs_waB4tWvt34aMRZlbb":{"uri":"/melonJS/docs/melonjs/Text.html#onCollision"},"y1ye40U-DlpbsgrR2dqaa":{"uri":"/melonJS/docs/melonjs/Text.html#onDestroyEvent"},"KSTCZQXpR6v52TIKbrz1e":{"uri":"/melonJS/docs/melonjs/Text.html#overlaps"},"gMZ2eZLmvq65Z3ix0gT_S":{"uri":"/melonJS/docs/melonjs/Text.html#postDraw"},"IeRG7S2mnWEf7p9ocrxul":{"uri":"/melonJS/docs/melonjs/Text.html#preDraw"},"Kz7FHcJ2NNmpNuCYnf51q":{"uri":"/melonJS/docs/melonjs/Text.html#recalc"},"VEv0mMEF7gSXiAFHJDuEd":{"uri":"/melonJS/docs/melonjs/Text.html#resize"},"3dEBXFakbG1SSfzR2JfTH":{"uri":"/melonJS/docs/melonjs/Text.html#rotate"},"inA_juHgsMW5FEsyRHQTq":{"uri":"/melonJS/docs/melonjs/Text.html#scale"},"l3HztnaldkTKi9lupLzb5":{"uri":"/melonJS/docs/melonjs/Text.html#scaleV"},"uLPWztxMciyJh6upa7bLV":{"uri":"/melonJS/docs/melonjs/Text.html#setFont"},"Ju4Qi93Ls5CvCiAMzlU1J":{"uri":"/melonJS/docs/melonjs/Text.html#setOpacity"},"Z8di1405xqUex0Q7nMkpY":{"uri":"/melonJS/docs/melonjs/Text.html#setShape"},"qDeY5L5DOYo8kc6cPXIld":{"uri":"/melonJS/docs/melonjs/Text.html#setText"},"urEuClvv_ccc1D9zYXH7U":{"uri":"/melonJS/docs/melonjs/Text.html#setVertices"},"l81pmQ8d1qzrOSLZpJ6sF":{"uri":"/melonJS/docs/melonjs/Text.html#shift"},"e2RACJD2DHGkfJ8LSAFeF":{"uri":"/melonJS/docs/melonjs/Text.html#to2d"},"DMUtO_PFWcq64JGcsRspb":{"uri":"/melonJS/docs/melonjs/Text.html#toIso"},"YUKi58i7YRigz7y4qwpNa":{"uri":"/melonJS/docs/melonjs/Text.html#toPolygon"},"XvzqVDdA6pnXo9YrQd_iZ":{"uri":"/melonJS/docs/melonjs/Text.html#transform"},"ld9NHyw58DJYBa6NfkY-T":{"uri":"/melonJS/docs/melonjs/Text.html#translate"},"UuLypwoeon-3D4YNM0QTM":{"uri":"/melonJS/docs/melonjs/Text.html#union"},"OSdnE-WdSfbVKR-uMuXJv":{"uri":"/melonJS/docs/melonjs/Text.html#update"},"v7m9HMqqA2LB5BDgxfzZk":{"uri":"/melonJS/docs/melonjs/Text.html#updateBounds"},"iuWY2eCbY8BfFb_8bRunr":{"uri":"/melonJS/docs/melonjs/Text.html#onAnchorUpdate"},"zPe9dn-7-ONV_HVllU0xl":{"uri":"/melonJS/docs/melonjs/TextMetrics.html"},"TZGwiTlz8ABX-JxGIeXKE":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#ancestor"},"XLhTNibY_LHo-jM2Y0mKM":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#bottom"},"UYXshL43nj-o_jFqPhTy8":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#center"},"EBVV3NJp0brVeKdb8a5sc":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerX"},"jIg3F84fXN7RkESnDjfa7":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerY"},"H8J46IRq01cC1gqOUZEZO":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#height"},"y7XhgA1K8BJV3VV946uoU":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#left"},"gPm4MtemMh2gFforAJES_":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#right"},"jx-1eswpq_l3_T_PxNJAH":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#top"},"AT8C4G4ZgHyWGMgv5Cg7w":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#type"},"NBJSGDOIXUGNnM93LNK_V":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#width"},"NqWj0l17BpYfHidUcHtpX":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#x"},"vTCgnOvrK48so9pJJ5GYX":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#y"},"g0RNyagNpuv62ZZgKnyaZ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#add"},"yb08rcZiZ88CBToEmNMaO":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addBounds"},"-n6JgFESDwA0TbsyrQgMs":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addFrame"},"WjDwNjrLIYLRZvXP6jV7M":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addPoint"},"KzqHGT8DcgXoI4cyZaxkm":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerOn"},"dQhGUf7xQYINM6X3C7hDm":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clear"},"fiTkBZIsGZpORFeKNtgGH":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clone"},"vO1Usdv1DgYZTr3tlMB2J":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#constructor"},"a0AeZny7J5Wj00jwQAvc4":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#contains"},"UPV0s-o8ZUia0rXuemcLi":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#isFinite"},"8qojPx3B6E0vD9RDrWmQ7":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineHeight"},"5xUj9gAVsYNDc3jXSOtZm":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineWidth"},"aFD2A5x_G_5F7OyYMxo7O":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#measureText"},"aotlSRbRZBYgSfg70Zs7f":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#overlaps"},"5pBGSE9Xr2SrXTtTfGjpX":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#setMinMax"},"uqT0ZkjOJIPbRZoZlQtWQ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#shift"},"D2jl_H95cnep2mnRUFeGJ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#toPolygon"},"P57LsXDJK78UWUQ2RF_tu":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#translate"},"qBoU7C2-KLueo99qYwkvS":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#update"},"9-KY8dJtetLcQHxTOoCCJ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#wordWrap"},"MxLaWRr21pZla0UuJI8-B":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html"},"byljelDwx_8X3WQqaQpyr":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addRegion"},"fKvt_5BOkkR_IAXgB6P_C":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addUVs"},"ze8IXs-4G_ADSSuINBx6y":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#constructor"},"i6EIHB29A3pcwoUFaNZaV":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createAnimationFromName"},"MWip4zK2G5gQqidwyEtvA":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createSpriteFromName"},"5wte1CEtJcQL3HQ4Y9uT5":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getAtlas"},"QU7auwjI0CORF-WYSRT8C":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getFormat"},"uyd8_Vm--HITKxA53K_wA":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getRegion"},"Pxq_9rFkQgo-Ggep18eom":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getTexture"},"Dpm-FdOrmjuMiQSXZXbqe":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getUVs"},"QHN6Tc954H5h4Q07-nvNl":{"uri":"/melonJS/docs/melonjs/Tile.html"},"VoRZOW0DKIthK3dPsuNOb":{"uri":"/melonJS/docs/melonjs/Tile.html#bottom"},"gJ67cv-nDi7lto3m4XW_Q":{"uri":"/melonJS/docs/melonjs/Tile.html#center"},"JC2M0_L_Kh5GI2iTARKZQ":{"uri":"/melonJS/docs/melonjs/Tile.html#centerX"},"7OyDlos-FiJwmy8BGttGK":{"uri":"/melonJS/docs/melonjs/Tile.html#centerY"},"V5ANmjgzuVPK6XBu8chld":{"uri":"/melonJS/docs/melonjs/Tile.html#flipped"},"zEcUz-tndIgyLK3gkht_u":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedAD"},"8q9aacSRhEkBGDWRNCPQE":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedX"},"z6IaQg4d8SqnuV8pEa6pR":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedY"},"YFBBupq44_pq6A1jNI9wj":{"uri":"/melonJS/docs/melonjs/Tile.html#height"},"6yryz4jItZJfYz0xpPQH2":{"uri":"/melonJS/docs/melonjs/Tile.html#left"},"hh_R_p9NpzqHFHVKjIsP4":{"uri":"/melonJS/docs/melonjs/Tile.html#right"},"ebUJ5NXLlEqt42h-bkHqA":{"uri":"/melonJS/docs/melonjs/Tile.html#tileId"},"_Nbdq5VrFQmBe2iN0VD_0":{"uri":"/melonJS/docs/melonjs/Tile.html#tileset"},"7J81bJTS00rAYWYreHo_E":{"uri":"/melonJS/docs/melonjs/Tile.html#top"},"M6PF60qh44oybMPag94Sx":{"uri":"/melonJS/docs/melonjs/Tile.html#type"},"8NhIf7ONVU0wlnhtWqp1E":{"uri":"/melonJS/docs/melonjs/Tile.html#width"},"bqGXeIeRYFYwzP6jthUAG":{"uri":"/melonJS/docs/melonjs/Tile.html#x"},"NC5LN5ROzvq0pWM_hs_w_":{"uri":"/melonJS/docs/melonjs/Tile.html#y"},"4kPBnJLhEob7j-Wk6N4i9":{"uri":"/melonJS/docs/melonjs/Tile.html#add"},"ulNporUqIlxBtp4XUA4VN":{"uri":"/melonJS/docs/melonjs/Tile.html#addBounds"},"XrseSzcg_LP17EP5Jq5r2":{"uri":"/melonJS/docs/melonjs/Tile.html#addFrame"},"vYtFcLUOwJ7V9z_FsHTpX":{"uri":"/melonJS/docs/melonjs/Tile.html#addPoint"},"vzYTlGLcVRvG0bVmpco9X":{"uri":"/melonJS/docs/melonjs/Tile.html#centerOn"},"1o0KtfJTeKOwT84yqG8Na":{"uri":"/melonJS/docs/melonjs/Tile.html#clear"},"lGySx4S_rLLPOrniaShg4":{"uri":"/melonJS/docs/melonjs/Tile.html#clone"},"HWyLQ9_j1Z-YOIPInnD0s":{"uri":"/melonJS/docs/melonjs/Tile.html#constructor"},"E3qOfAx02NxSdBamO5L1c":{"uri":"/melonJS/docs/melonjs/Tile.html#contains"},"Qyokd2gewg-wgkgMzjsFj":{"uri":"/melonJS/docs/melonjs/Tile.html#getRenderable"},"f2w8T6iY7Cuu9gu-MuB0u":{"uri":"/melonJS/docs/melonjs/Tile.html#isFinite"},"VQFS4D2rA9Ud82KM9p9-G":{"uri":"/melonJS/docs/melonjs/Tile.html#overlaps"},"zIg7E3_X4jzO-0x5ABBOr":{"uri":"/melonJS/docs/melonjs/Tile.html#setMinMax"},"t8VQgDtz-7JBtw2anoUqR":{"uri":"/melonJS/docs/melonjs/Tile.html#shift"},"VphxAAuc9e5MtOulBiJlB":{"uri":"/melonJS/docs/melonjs/Tile.html#toPolygon"},"t5jplQFh0X7O6GxLqdv1Y":{"uri":"/melonJS/docs/melonjs/Tile.html#translate"},"HF5Vz3aQIPiVg1iEWu7Le":{"uri":"/melonJS/docs/melonjs/Tile.html#update"},"QtovKpudCYVdp-CtnsX9Q":{"uri":"/melonJS/docs/melonjs/Timer_.html"},"4P2jJfnZbtpHsewRX0IVL":{"uri":"/melonJS/docs/melonjs/Timer_.html#fps"},"kjCRBXY168lqnphvmw1uP":{"uri":"/melonJS/docs/melonjs/Timer_.html#interpolation"},"trvHwplL-j3Bs16Qg26T-":{"uri":"/melonJS/docs/melonjs/Timer_.html#maxfps"},"HFu0g8pNVi0-H-T9C_5aw":{"uri":"/melonJS/docs/melonjs/Timer_.html#tick"},"Nw4PYL-Si686ZZuWdjHum":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearInterval"},"Zke7VcajKIL7Hi4aqgAwD":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearTimeout"},"QuLWKSugVr0GNrVjI18eY":{"uri":"/melonJS/docs/melonjs/Timer_.html#getDelta"},"t77aoYKnLd3Cdrq_p0WdE":{"uri":"/melonJS/docs/melonjs/Timer_.html#getTime"},"S-wThyyDjIWeQ_c9_nAoU":{"uri":"/melonJS/docs/melonjs/Timer_.html#setInterval"},"7K2LcWIsAugyGe0Gw4MVh":{"uri":"/melonJS/docs/melonjs/Timer_.html#setTimeout"},"qn-epEoOoISpiY-8TULj8":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html"},"CmrSOmcdRBO5hNgsMC_HZ":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#canRender"},"H6os1T9NUMzT_P0r8dIYh":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#constructor"},"KWnixXiI8dFCPKgkLJg20":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTile"},"ApgtSCsMg4ev6eba6T9Xt":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTileLayer"},"11gyWAKKRMqFA6-Anfg0A":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#getBounds"},"x8jNqf40UcR0XYWqOQjsp":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#pixelToTileCoords"},"pu4eiShMW1Hx_aIo3SJ6c":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#tileToPixelCoords"},"hYuWWNNUf5QiJeRXBxmXU":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html"},"NWOsdn35uyLoY4CtmyvEW":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#canRender"},"CFfDTwM-_RcIXYv_ezBdU":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#constructor"},"z1HMs0qasFmXuW7pTXyQG":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTile"},"a5wI42IA5VwcB1bC5vMJu":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTileLayer"},"DFH8Bc2dXM7xf9KWv7gF1":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#getBounds"},"rVhVHjvVtN0d_mnj_b-27":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#pixelToTileCoords"},"WEkWgRWXnG_lwpb0NiXgF":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#tileToPixelCoords"},"TxpsY874UAMlWaxWzCQXp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html"},"CLX2jH_Wdy8gFC5IzQ6QJ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alpha"},"kv7wYbP9JQRBpYMLOUeHc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alwaysUpdate"},"C9ld3NqgoRmi8zk-mCOrQ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#ancestor"},"pJ1Bhz3nOjMHqy1YEchIt":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#anchorPoint"},"Ns4pMTVQWNKBYa8NbMbaU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#animatedTilesets"},"nCnkAsTjLgIFrMKf0e5rp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#autoTransform"},"NmOsrlqvuxjZ4kdEA_NNG":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#blendMode"},"WfVqmqI4rWXkYqdlWbcH7":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#body"},"G-Ty3nHAKHcvYlyu5rRji":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#bottom"},"BX1sm-v0Jb2STeGbI22PF":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerX"},"B1jMDetEPUna2vGfZTOuW":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerY"},"-hBRgRogPkdcR5ekgwIvH":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#class"},"7ohZMubXcq7lbTjdXQ4QD":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#currentTransform"},"Eevo67sXYq9fHM7IY5bS8":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#depth"},"SyM4UfmjqpvGwDj-VDZd-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#floating"},"OB6teLBKUk4vlmDxVSS2B":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#GUID"},"ku2A8xi-Jni0pJoF2I05l":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#height"},"D2oxJMysqZwpYAZce0pOa":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#inViewport"},"Sv4jetUH0nkk8IjRfJIMy":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isAnimated"},"4wDuOGunEZRvXM6OF6eNM":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isDirty"},"pg-H9xRLH6BKcP88-_jYr":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedX"},"YWw66KJJhEeSn7NdWFOOP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedY"},"GDRWD5T9a2BdCV3sMV_Rq":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFloating"},"pedc9FoJHv-8YZvojmg3g":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isKinematic"},"koDMNe36iKGfKDk1IhIoi":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isPersistent"},"rvOmJ8K_Kql6srU-mMsc-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#left"},"NePaBjfMk8SL1C_eEvDNa":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#mask"},"_McY0uPyzenSDaQ-0JQ1p":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#name"},"ftBMawpSq4_BmBjML0JW0":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onVisibilityChange"},"2UCAvhvhaPEML7KJck6AX":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#parentApp"},"8DD4A3oipdUn05rME-bTq":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#points"},"9HtLp2yzTQAKVgSIAaDjj":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#pos"},"AwZouvyAhY34xj0oGxEBH":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#renderorder"},"wtHwk8fM3gT2NsfgT91zj":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#right"},"xZ9zv_fjyRGdtDqV_r_47":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shader"},"QpJ9c3b-d2rEUMvgpDHFT":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tilesets"},"YH33mxr4t7Jl_Dw4VOXkj":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tint"},"mZ0Ihi5wIbK-wo5z0r09a":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#top"},"Dj9qlfaMAiNtgKHUyUG0G":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#type"},"E1Sub4-FiyxmhQ_T3kkB3":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateWhenPaused"},"uTh6MDb1wzrl_44kKpIxS":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#width"},"vsydkXbxFcvxxigs1ItYO":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#x"},"GY6hhcxgF1TrHSJD8qMVP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#y"},"IZ9dzMMrKaE1sabb_l4qu":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#angleTo"},"P_1q5q8GTNsZJVlVbmkAY":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#cellAt"},"JBGQLZqX5quI1gcqMu5Lh":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerOn"},"Epr3lohi2yHBaP2-ifIOj":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clearTile"},"6cbaC009urHWH4_JtiqnT":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clone"},"78Qbr08q7rsFooLsw7wAq":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#constructor"},"E19ORPaMSmuOpPkkYX370":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#contains"},"R3KAzP_71pIWF27hxg1-9":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#copy"},"Teht0UkV0hlrL__lQ8lHw":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#distanceTo"},"IHLdq6TSbqhTvxj_Lov9m":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#draw"},"frOy4h5liXLYi5RFxggqc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#equals"},"I_y4T7qWUlyf3vNHRVkGU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipX"},"GzaIhgi4q-5vfYolaeuWj":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipY"},"rr_syBuVtknZ3bpN7l6_j":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getAbsolutePosition"},"lbAP3D0tfZguMntJtb7dK":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getBounds"},"ruU-pMrk8CTuMsB50DGOR":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getIndices"},"MD8TuxbFWBW6pmquj0Y_r":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getOpacity"},"wniOhrToOn7U7ergyx87H":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getRenderer"},"p_lflGN7FsbnFXa5jJOp5":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTile"},"0LctOXkO48h4nD3RG9bl4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileById"},"0ReRHZPL66BaH88nfCtsN":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileId"},"FgQIf-qj8BIkqP0TMQtDA":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isConvex"},"sruQfhRfcNJictQJO0m6N":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFinite"},"j0ehREwycK3pGUvFj-Ztz":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#lookAt"},"LG0OIb0i9FciNSy-5YWcS":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onCollision"},"RD8cWZ5tE8CwvQ4ilK2TI":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onDestroyEvent"},"QXNczsAl8bUushBiTbqPy":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#overlaps"},"yKlpc0r_dX7F7PoMZ8sAU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#postDraw"},"shYV5Ns-H7J4diBYyukfp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#preDraw"},"W9U3Rm60lGC54HP6MTnTH":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#recalc"},"vCHfgYPrKzctWqaF9D7Jk":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#resize"},"cf3m9Fkoflew14d0-rOaJ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#rotate"},"vJ9M5rP9tz-UkZ6ziibIV":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scale"},"cvTGcNnuNAksf8CPgfXnV":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scaleV"},"F5wYXX8nyeS23hCkG2Syl":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setOpacity"},"rbUjar639oNzjV67byU9Z":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setRenderer"},"M_B0sp0Xxcx6Ew01UBW9R":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setShape"},"GLneFuKEejn2Oo2yRynzm":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setTile"},"h4D8sndXZZtYm2-nAPK2u":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setVertices"},"Tsb6jCB2zgN80cmxuaO_O":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shift"},"UDF6wyWMtVhNYo82ggw9j":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#to2d"},"CIA1CVd40CwVmeWR3U3mH":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toIso"},"KRCDYXh030Jzbrxt3-pJi":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toPolygon"},"wdDEb1qRUjdIzh4Te6aMe":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#transform"},"KUkK1-jQD1hEROOJsEfIe":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#translate"},"z5JSAcH1Atx89IRJtkmkV":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#union"},"LKPoOJ5qy5YVsbCFI-Lc-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#update"},"e3dKk-YYvXP0MMGRDr7Za":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateBounds"},"xj2-kCMvGMbBRSYqlO_fV":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onAnchorUpdate"},"7zDfn4rpWHQdCPJUjNTQK":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html"},"PxZ10YdFFeiGf6iX6rBkK":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#canRender"},"6zTb01NxtSQOPJLkSon9l":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#constructor"},"EgLrmVXRAHOn0dCZ4xOCY":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTile"},"JDeSiuC1h7YSrZftKjvXD":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTileLayer"},"3sv4wzPlow7a7hwZsdifj":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#getBounds"},"VyO3NmMb9RZMeul_B-ZE2":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#pixelToTileCoords"},"1zurCUVN7MaIvUnAf-i7J":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#tileToPixelCoords"},"Kh_LRdKi87lu1j7oENX6L":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html"},"PF-57rmZwNBfPn2hC-vZO":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#canRender"},"yIuBaskJO3cPsQrHKtcnY":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#constructor"},"cY8wGvITHz9z7A5dwle0_":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTile"},"HIBHUbTzfSJ5ny5mgF2l2":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTileLayer"},"2r1ELQ1aIefMa43MSIQdQ":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#getBounds"},"3toL_f3S9_qTNza6DohJO":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#pixelToTileCoords"},"CLGS2KY5OGC7Qx7dMNAXd":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#tileToPixelCoords"},"UAaWF2nRorcLCy0FLWFkT":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html"},"r_IqvwX6NJPYqeNC78yGG":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#canRender"},"Pw7dAlP5VMlkV0DKlGVCW":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#constructor"},"ylLUcZhR5LOjImyE8Mn5h":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTile"},"L4N6PHhz0jd3mYe9PTKRU":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTileLayer"},"-r4ogo4dN42Y0NLciQatf":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#getBounds"},"VsFdPHdp3riKEoI9yGGcO":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#pixelToTileCoords"},"PQa2Dk2wNxP0qdH2p25xN":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#tileToPixelCoords"},"UCGcseipG0O7Cmogg-0PM":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html"},"zhLRCtzJL5sQR_ZjdbC-2":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#class"},"RJRMhtF7BzCBQvPzfHjC8":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#cols"},"ZT-eQZilUlDi0qghRbNFF":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#infinite"},"MHcQ4We1IPMNNRe39KIQT":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#name"},"6X_k1ROjaxiOlAOSFXBwv":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#orientation"},"C4ICwhfg5tgMY7QqjnHoo":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#renderorder"},"qQW80H052jHA8RDmSZSju":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#rows"},"-sFCJtvS3HhUF0JF2Phn9":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tiledversion"},"KfZaDCyxCm0PKQS_56i7o":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tileheight"},"eecP4SMlaF6LITmH4Zg6S":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tilewidth"},"zQHhVGlvL1xAtUhMpQ7fN":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#version"},"O-jP7gYKO66QZIi-v45XG":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#addTo"},"VNuQxW_Kclj0X14Oay3Jd":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#constructor"},"vIiFeVnoWn-3RHEQ_wcG6":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#destroy"},"lPfQwU9VJlbtro6Xyuzof":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getBounds"},"grHY_SrwGiVdBdiUUZynq":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getLayers"},"HTyA6efmAE2HmPNSqP_3t":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getObjects"},"RfssRAe5Kir9E6FWmLmpX":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getRenderer"},"neHKATIuPeWmdCj3dWDIG":{"uri":"/melonJS/docs/melonjs/TMXTileset.html"},"yuo6Lvdor3K5k-mlrFrHy":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#class"},"dG6Pn5NxWC2C8JWyCcVAa":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isAnimated"},"jKM8XQGrRYDrwmcp9lVTP":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isCollection"},"CJN2C3bKJGypl2J_OESwg":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#_lastUpdate"},"67BohTmr04CKn-l9GA2vL":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#animations"},"0aGOCLbDZ2TgKt17coPBI":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#constructor"},"w30w4SuXVtBS1S4DxLAlQ":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#contains"},"bU-_6_Mp7tE4ccltCfRl5":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileImage"},"w6yXdvGyO0ouBGKs2y3eH":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileProperties"},"YAH8AxqDMie8PAg_S7tRQ":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getViewTileId"},"A_7nPVTAGlZmwI_3oPEC2":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html"},"86HExKXCih_IlfjQzkCV8":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#add"},"mCLrVOGijwQSqR6uKNhET":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByGid"},"HbEUBMug_S17gv5d9L4Xu":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByIndex"},"8sueeUIiIGWDPzHrmJUla":{"uri":"/melonJS/docs/melonjs/Trigger.html"},"cEUlXJ3q0AsPPtKkvK4dm":{"uri":"/melonJS/docs/melonjs/Trigger.html#alpha"},"EJUFWvIzPT9c_COC0uLR9":{"uri":"/melonJS/docs/melonjs/Trigger.html#alwaysUpdate"},"9v-doZgW8SErphsm7tN-M":{"uri":"/melonJS/docs/melonjs/Trigger.html#ancestor"},"0sn-cv88bYOq6aBGBBkTw":{"uri":"/melonJS/docs/melonjs/Trigger.html#anchorPoint"},"dXoqjm91CUE-4X3pE8RWx":{"uri":"/melonJS/docs/melonjs/Trigger.html#autoTransform"},"fn6Xq2kaE3UhXDVURUs_c":{"uri":"/melonJS/docs/melonjs/Trigger.html#blendMode"},"3ZnGIYWQniUr8W3D_g1FP":{"uri":"/melonJS/docs/melonjs/Trigger.html#body"},"BLqlPIhFLGjzBcKGSaDTH":{"uri":"/melonJS/docs/melonjs/Trigger.html#bottom"},"eAKRkA-A3Jw2zliSDRNBe":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerX"},"th0oMtHKvetbVHMs8miCo":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerY"},"b6iDIkfb0NzQLhMKEdwif":{"uri":"/melonJS/docs/melonjs/Trigger.html#currentTransform"},"MnjsAZPLSpyPszYOHgkTU":{"uri":"/melonJS/docs/melonjs/Trigger.html#depth"},"WNWaTfUeYoDhAyyOGg_lp":{"uri":"/melonJS/docs/melonjs/Trigger.html#floating"},"lClAOvR6CDPPtT-tNEhks":{"uri":"/melonJS/docs/melonjs/Trigger.html#GUID"},"c8beJuSY9V7UYioK6N-F0":{"uri":"/melonJS/docs/melonjs/Trigger.html#height"},"Ob4KEHAuCqeAkjt8CtICj":{"uri":"/melonJS/docs/melonjs/Trigger.html#inViewport"},"TVSDybTLs0yNFZZY9Us3d":{"uri":"/melonJS/docs/melonjs/Trigger.html#isDirty"},"DKaNOvE5OTqUNYqfCliAE":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedX"},"Jb-iHgd07vuJz1rqD-sOo":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedY"},"HOlvS7k6GkWSvlnuGNndN":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFloating"},"ont_dJ9JhsTJP0TOXk53y":{"uri":"/melonJS/docs/melonjs/Trigger.html#isKinematic"},"qcoZAApba0pV42VTjC45y":{"uri":"/melonJS/docs/melonjs/Trigger.html#isPersistent"},"HK_lwhLpScLCOAxYuPFpQ":{"uri":"/melonJS/docs/melonjs/Trigger.html#left"},"P-QX_TamqJRtnUiaqfuAO":{"uri":"/melonJS/docs/melonjs/Trigger.html#mask"},"vm_tS2WtWZzInmtxJKusZ":{"uri":"/melonJS/docs/melonjs/Trigger.html#name"},"VPJGlwiO5hqUAKpU3ArGk":{"uri":"/melonJS/docs/melonjs/Trigger.html#onVisibilityChange"},"4ntpCy1ys9TqQOGCX-WRd":{"uri":"/melonJS/docs/melonjs/Trigger.html#parentApp"},"IKntebV6IoI-N1lJBNiH4":{"uri":"/melonJS/docs/melonjs/Trigger.html#points"},"bX05ut2RVOHCs0vwm8nJV":{"uri":"/melonJS/docs/melonjs/Trigger.html#pos"},"2hJbBO3qfZtnjjLRppMR1":{"uri":"/melonJS/docs/melonjs/Trigger.html#right"},"_DWQJR4ez4j5OCDHw0u5l":{"uri":"/melonJS/docs/melonjs/Trigger.html#shader"},"PWL3KsOGfXmVN0BeO-mxp":{"uri":"/melonJS/docs/melonjs/Trigger.html#tint"},"t7WbxHV90r0QDEnNf84He":{"uri":"/melonJS/docs/melonjs/Trigger.html#top"},"7wOLYY6D4j1SBU5LK5r5u":{"uri":"/melonJS/docs/melonjs/Trigger.html#type"},"Z1QvZX6eGtKXaf7Z8buXm":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateWhenPaused"},"s7WDTkv9PNWKmx0JTjPyL":{"uri":"/melonJS/docs/melonjs/Trigger.html#width"},"PSyx1e6VrnGg_TzDR9urH":{"uri":"/melonJS/docs/melonjs/Trigger.html#angleTo"},"mxgD3SQAsky5jjfaJekyc":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerOn"},"ysMDBM1tlkLAgzGo1Oa1W":{"uri":"/melonJS/docs/melonjs/Trigger.html#clone"},"5te0mGYE0IbTuwlziGRfr":{"uri":"/melonJS/docs/melonjs/Trigger.html#constructor"},"lKwphfG0KzSCrkShTLn49":{"uri":"/melonJS/docs/melonjs/Trigger.html#contains"},"JWq0ZMuB_KeWo0D4Bxp_N":{"uri":"/melonJS/docs/melonjs/Trigger.html#copy"},"3Om9M8rhv640w7xaTZWik":{"uri":"/melonJS/docs/melonjs/Trigger.html#distanceTo"},"3HXqP5KTOKG7vJH8HOE8C":{"uri":"/melonJS/docs/melonjs/Trigger.html#draw"},"LDRnwgtYKkq_mB3-4YmIk":{"uri":"/melonJS/docs/melonjs/Trigger.html#equals"},"MB1D3iuMBo6ABIEJVjWhS":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipX"},"zaeVRaxc6yAtX71oxf4EB":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipY"},"HsDtLWvUPxVl19Pb5LG40":{"uri":"/melonJS/docs/melonjs/Trigger.html#getAbsolutePosition"},"RTLvl-NhiZT59VOtgsj6O":{"uri":"/melonJS/docs/melonjs/Trigger.html#getBounds"},"_C6fbby9bZlBm3ADJNeC8":{"uri":"/melonJS/docs/melonjs/Trigger.html#getIndices"},"mMFb2bhITDarWPHiMy2fC":{"uri":"/melonJS/docs/melonjs/Trigger.html#getOpacity"},"j6Kwzjf6I4vprYMx6Alz3":{"uri":"/melonJS/docs/melonjs/Trigger.html#isConvex"},"Cxit8-Ba-jGqznsPrfnYI":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFinite"},"jzucxbKjDw1E81BykBSCB":{"uri":"/melonJS/docs/melonjs/Trigger.html#lookAt"},"kQIzqYxYXU7DSV8phLb8q":{"uri":"/melonJS/docs/melonjs/Trigger.html#onCollision"},"d32REtyObLqkkLKB6zS1e":{"uri":"/melonJS/docs/melonjs/Trigger.html#onDestroyEvent"},"EEsHf2c9otUPbKEwgRETh":{"uri":"/melonJS/docs/melonjs/Trigger.html#overlaps"},"7Jr4sf156bHqZtKFoPptT":{"uri":"/melonJS/docs/melonjs/Trigger.html#postDraw"},"nZu3LuPXWUiJjpAj1U09X":{"uri":"/melonJS/docs/melonjs/Trigger.html#preDraw"},"QQ3ROvEMlsR7ugjrAzEXE":{"uri":"/melonJS/docs/melonjs/Trigger.html#recalc"},"sdQuZwKSClSaiYDdI0IuW":{"uri":"/melonJS/docs/melonjs/Trigger.html#resize"},"1QGdpLMPW-my0-aWzNfx9":{"uri":"/melonJS/docs/melonjs/Trigger.html#rotate"},"UDJC7zowdIriBM0o9SH6p":{"uri":"/melonJS/docs/melonjs/Trigger.html#scale"},"CvcklYkBCJSHu1EY4d6nZ":{"uri":"/melonJS/docs/melonjs/Trigger.html#scaleV"},"XQEhFbKGdT0jkLxpcOffa":{"uri":"/melonJS/docs/melonjs/Trigger.html#setOpacity"},"zQy9p0o_pq36xE5lUq1WL":{"uri":"/melonJS/docs/melonjs/Trigger.html#setShape"},"oMwE_xLdcrEjz_zZS5fqp":{"uri":"/melonJS/docs/melonjs/Trigger.html#setVertices"},"XDPhgDXYI2TcCuZKjLIZ-":{"uri":"/melonJS/docs/melonjs/Trigger.html#shift"},"TokCFeDfaDMMJij9oeAJv":{"uri":"/melonJS/docs/melonjs/Trigger.html#to2d"},"bo3IY5geDY8pjzm5Q4g69":{"uri":"/melonJS/docs/melonjs/Trigger.html#toIso"},"0ONae0DYNFB3AK_RIBL2f":{"uri":"/melonJS/docs/melonjs/Trigger.html#toPolygon"},"KGT2bJ0HB01GrfOqBryqO":{"uri":"/melonJS/docs/melonjs/Trigger.html#transform"},"iTnMd-eoA6Cfo__Z9s-j0":{"uri":"/melonJS/docs/melonjs/Trigger.html#translate"},"3UrgHZmStJyR4tI6gMFy6":{"uri":"/melonJS/docs/melonjs/Trigger.html#union"},"EaA6sZrlbqFvzn0wIrX3t":{"uri":"/melonJS/docs/melonjs/Trigger.html#update"},"HDKn7xxwZYHJz_3tzBlOw":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateBounds"},"2cTn6MmNECvI5kNmk6cPG":{"uri":"/melonJS/docs/melonjs/Trigger.html#triggerEvent"},"u8bF4D4vLeB7CaBetXNJg":{"uri":"/melonJS/docs/melonjs/Trigger.html#onAnchorUpdate"},"WZmnT1IcPI1YkEtTQ_utg":{"uri":"/melonJS/docs/melonjs/Tween.html"},"jo_okNKTfWkx3fOJZ_CJK":{"uri":"/melonJS/docs/melonjs/Tween/Easing.html"},"7NFD5Fju-fTpZmUVAwuer":{"uri":"/melonJS/docs/melonjs/Tween/Interpolation.html"},"W0caI8VOnGc-DYcwnUIhX":{"uri":"/melonJS/docs/melonjs/Tween.html#chain"},"HCv13yT_L25iui9CTzJAu":{"uri":"/melonJS/docs/melonjs/Tween.html#constructor"},"0ZQ1eu45vHJk-PV-7RXY2":{"uri":"/melonJS/docs/melonjs/Tween.html#delay"},"glr4VG5ERiuibCfU8X3iw":{"uri":"/melonJS/docs/melonjs/Tween.html#easing"},"gY5Z-EHwO7EfKx4yj-j2z":{"uri":"/melonJS/docs/melonjs/Tween.html#interpolation"},"_3cpAE8UWp2jI5OweWwW3":{"uri":"/melonJS/docs/melonjs/Tween.html#onComplete"},"9Uyo55oI44GuI-CBsr_NI":{"uri":"/melonJS/docs/melonjs/Tween.html#onStart"},"o2nPNFL-UQQV8aCBukvrk":{"uri":"/melonJS/docs/melonjs/Tween.html#onUpdate"},"ktEZuxMzswh08stQco-PV":{"uri":"/melonJS/docs/melonjs/Tween.html#repeat"},"itmtnGpaoFMbYAOoxE5n1":{"uri":"/melonJS/docs/melonjs/Tween.html#start"},"yoeCV-qrOLrwvQPObJonO":{"uri":"/melonJS/docs/melonjs/Tween.html#stop"},"6TUS_e1_e9Eed6Jz4HqzT":{"uri":"/melonJS/docs/melonjs/Tween.html#to"},"e_saKqQADge8aiGEExR1r":{"uri":"/melonJS/docs/melonjs/Tween.html#yoyo"},"chaeF_9XUP7Atd4CUVpEr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html"},"lK0eJTIOzya1xnLtFAKuU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alpha"},"z1Tn887zdhclM7I1NTKPO":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alwaysUpdate"},"Ii6553Yd4ydtNbob7Lbma":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#ancestor"},"zvzfwgX0OysGFbf7KwCcS":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#anchorPoint"},"dJ49pKI6lQbLigYdTmJuS":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoDepth"},"dpN8TsyYEYBJZOkiTq4wU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoSort"},"dt5nUFi19AYgRuamuXNsG":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoTransform"},"6dMeQtyOcjeJ6laTo84_J":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#backgroundColor"},"Hphpy9-mOthrHQbkjnVjQ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#blendMode"},"g_2sWA-lXYXrYnS_Yuyr4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#body"},"1LLZD1gYqFVb70OfYmYgi":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#bottom"},"LD8SZ1n50OmjR0GmBnnH-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerX"},"7fh-Kef4rWe5QCM_6frE-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerY"},"vzoFGxK8c0XWI8r9oIt0g":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clipping"},"Q2ER249Me2oVS0gxHxJzf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#currentTransform"},"Iz8ZU1SUj4vucvFu-kUh9":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#depth"},"IfjodEyO6FA8erJLAKzWp":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#enableChildBoundsUpdate"},"HaECtKfbc6A41jPAVfGE9":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#floating"},"HMqV4VhotJTjRGsboISZI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#GUID"},"5VcmIaV9Ch1DLqcZGmMsG":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#height"},"KsuvfXFNYsVxdBdNSMBQl":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#holdThreshold"},"nUkqslw3hTpuqgF_-dmc8":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hover"},"8_15a9bVky1BEM4FDtk1B":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#inViewport"},"EWonNjwM3guQivnk0RVs3":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isClickable"},"A34dFsLspVxsV3skLlFSQ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDirty"},"DDXoyoOoMO2MwCZkZ3p4d":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDraggable"},"9JTMaKnUz9HpRMx0E5tse":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedX"},"lFJG9mkH4FQB0FL3AidR1":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedY"},"rJ9co4EOtkucDsxQNA0TA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFloating"},"6u8lK58m1NVnPaWcC2Hfm":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isHoldable"},"T4hv1mV3a5Kts5Mxsvu68":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isKinematic"},"OO8mPKleOsO9ofZQi19eL":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isPersistent"},"NAAWTKIOjcmC7VePylp_4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#left"},"h5BXDzQszlEkPzphD617Q":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#mask"},"AkqeZhoMzawXmbwtyzz9z":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#name"},"bhpoLI9DNqx9J2f608cfA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onVisibilityChange"},"au61HLK8Nylz88j_yTwim":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#parentApp"},"hxJAHI3WdWFkwJ_Ycyj7h":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#points"},"PDJnukpRM5QZeLbs9Y7Jf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#pos"},"VPbryndIdR_u69Uic6ldG":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#released"},"RUIuQRKM3mIEIAr3wskZY":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#right"},"WEsXdjuPtehlF9YNkbFi4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#root"},"fg1XAJBC8XSwsT6DFr0eI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shader"},"Gu_d3BM656iA47oZaP2Kk":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sortOn"},"nLRIkKdoyAEcBD_f3YqdM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#tint"},"WdiSKTgptqkl805qHcQo9":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#top"},"HViLioZ1zSnllRmdo307S":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#type"},"_DVZafAfgEmzq0m5et-kX":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateWhenPaused"},"76pMyxg_qv02-hRne4sat":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#width"},"KPAnOFKEgMtt_DV24Rfcy":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChild"},"KIZQZ3Ze_QoHHgZXM062-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChildAt"},"yzoYRaeXYzxxrxZO31_2h":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#angleTo"},"vqKZrld__eeT-IUI4QVTZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerOn"},"YQRL724eJ_YrIjzMTFWJM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clone"},"jZGO0qUWmXdBI_kB2tGQ7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#constructor"},"kVGwNYkQ5x83teFJ5FQsu":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#contains"},"yWZjWHXvtQVnDpH6zFfVl":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#copy"},"V8IdoQ2hQHETyEOI_lOlK":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#distanceTo"},"zachg_uMwa19HjsTwMYHR":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#equals"},"6ni4-AbPb_SneNbyPUmT_":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipX"},"vj8FhpuP3iRuDtBZepKMX":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipY"},"1Ezc5c68p-rSQGtQlmjab":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#forEach"},"sYh6fLvqrf_ThpOmtHgid":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getAbsolutePosition"},"XHkf4gdeCSPAh00W9q7jO":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getBounds"},"0KFaU2fTt-4EkmGkXTESm":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildAt"},"fzRIeyHIh2wbdwt__TSm9":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByGUID"},"lYPEJKbgwNm4QIIpd1cXu":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByName"},"3Aymvpzusqmni2JZIpjDo":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByProp"},"5cXMCAafnAeRP-eR7_R9a":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByType"},"n9aWkgsQhmdDkdLMHfoTx":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildIndex"},"pcQ0LqZEGzfUNEa-aR5G9":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildren"},"RQR_wULMseCw5pkCjTLFr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getIndices"},"HYSXckG3nN9IsY_2lTEom":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getNextChild"},"knOOKzk0Ym_M0PQfiWKUV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getOpacity"},"ryIWvbawhEuWksfvgFPEU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getRootAncestor"},"65hGzXSVeVCsGE4L2lK7y":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hasChild"},"p7UMTevr3Tzs8BzPcDdcd":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isAttachedToRoot"},"zPuKIWidI-jlQYKylUURN":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isConvex"},"dkKnZw1PkaoZ7qUlF-37f":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFinite"},"q4WOXwENqh6aykswwd2bU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#lookAt"},"9Aac4-mbwlf3lJO4RdstK":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveDown"},"f9D0LH62bwxfjpmxrd7lX":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToBottom"},"G_9UHmxysdFIWnCV6zibQ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToTop"},"HFdhGpJA3PTRF5F4cU5ZK":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveUp"},"kSAxTY96kUwNGOacuwPUQ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onChildChange"},"DEFsPVfxQQSm5zt5RPWN2":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onClick"},"dsdD3iaW-0lJcBQ8OxyZC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onCollision"},"K4UZpeurLkrhuwuAw9E0B":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onDestroyEvent"},"bw3-tMFbLLGSitEGP_eCD":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onHold"},"zWUALx_rvxGf8-vhrB7Jj":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onMove"},"3z_tgsvdj2XLOMok8BXoZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOut"},"NYTRo3hQQmOXxSjzlyH1R":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOver"},"cyLm3Z352Q3BvH3l65JIa":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onRelease"},"AQu_Asyn4pX4YdPlT_kqU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#overlaps"},"-sfBJPFTVrb2K7Gj2xQq5":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#postDraw"},"wrco0KBKjcYpWcTxXPUv2":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#preDraw"},"Dx9enDA5e8KJCVHJo9096":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#recalc"},"w8hjbcruVndO4YZXhZU3I":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChild"},"MJncNoW4Ok1zLyZL5Q0By":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChildNow"},"Cyx6LICcfUx3AXxrcrWEY":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#reset"},"yEVeejCBKtHoK_Ti5q6bC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#resize"},"k-SRbPjkz9cCs0-r7nETA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#rotate"},"F-yhNetUSd8No1uhAny7O":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scale"},"KIoCOcYdYgOo4Lr0vnNkn":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scaleV"},"_5lLlhINV5NfbfGxqNqrI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setChildsProperty"},"tOCuKQoTGICzZ9u_5pC6M":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setOpacity"},"3qUEHugCFQoLCf2DL1ap8":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setShape"},"9Qn8MOI10nzoAVnyL5b1k":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setVertices"},"RD-bwxg594kZK5UnwUNGB":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shift"},"W1DLG2PW3Be_YGmxxlI-N":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sort"},"g_GoMiMaSiEEyzdT3wp1T":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#swapChildren"},"-0KqRcu7Scsi4rxNW-JJB":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#to2d"},"dYRVHtvy5i_T6IXIQfdb5":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toIso"},"mQmGiO1WzlaM414EhjVU1":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toPolygon"},"n140BqXE717R6zRC0rt1n":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#transform"},"YXpKNoi0nlTIwsU0slPN7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#translate"},"Z_5-6Rkmbm8ftIeHhCmrn":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#union"},"WP_UJc1KHUk-prE3tEau-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateBounds"},"uianS4wMT5iDUf4AcrUL0":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#draw"},"sWk1d-kyVBKpA4GKABvCk":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#update"},"Cx86kR1C1-_PVHYlfzlQx":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onAnchorUpdate"},"UiKgGkp7AG4G7BX9wB2t5":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html"},"vQ1bY7_fr4aTaAj-l2xwQ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alpha"},"WXWCUmUmVLYPANVJApvBR":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alwaysUpdate"},"0DhYvwptK3gQZf0_b0wVa":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#ancestor"},"tNwrZ5y2xJGlHOE-Ppa6E":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#anchorPoint"},"PUCPqi-bc2QjMkIAEbIuf":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationpause"},"Yd-Oi5rspyhTUdbYXGwcn":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationspeed"},"0EmWNYDsp4JSDWQUUQmxe":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#autoTransform"},"02UL1fm4D1FiqCbttBBmn":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#blendMode"},"7_1zUwZTWRmRIAH5DT3V3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#body"},"y1pOYHqx9GV67gpXil8ed":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#bottom"},"tJoTH0dleSMxd-F6mcCgE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerX"},"8WWBNpEqh2q5jGC6K_DOY":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerY"},"1Nub1Pncxe51BK43yRywF":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#currentTransform"},"UY_-ThJv2gYphw6UV0-Pv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#depth"},"X3n4VbLGtHxRzmatOcnfI":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#floating"},"_Ww5b0rAgdE1f3D0dkyBb":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#GUID"},"JiIK9AX84wbe8-K9gRfrP":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#height"},"6YNm7Gh1USKAMdnpGOyD8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#holdThreshold"},"JerzvPA2q0rHwsvZcHpdw":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#hover"},"yDaUX9nOwAX3e5G7lgLM2":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#inViewport"},"PBcKJsn_Ge1dftqPkffw-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isClickable"},"cRnQ90r0ErAPbBVYp4-1v":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isDirty"},"hrhqSomCmP1GUYyTBjXgJ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedX"},"zbUUI-jPyLfyiDPyTmaWX":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedY"},"uC3L04ILwmo_Czxyn_7c8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFloating"},"DVxolQQBisagyWknrMCb_":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isHoldable"},"IMnW_-7GowZN_kTz7jwVA":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isKinematic"},"DEc9zddPESfdVVTcqfM5u":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isPersistent"},"5alYsOmTWazHhc8MfHSO4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isVideo"},"fOKUrgMUWlKvFbKYL8I6z":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#left"},"xAwn6BWZQAxYS4GYtbUph":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#mask"},"uaE49eWJF4tJkYFH-R8Rk":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#name"},"x9QNQRGnRw_mdHtQdCRG4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#offset"},"K0429fcgbcI0gSbirEK7j":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onVisibilityChange"},"HBrCIMNZneZRP4-Gqdfo_":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#parentApp"},"LVJdOVMp5cuERr1ySteV3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#points"},"Y_Bo7R1Z-pIksVeUAZsTY":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#pos"},"NvwCr-2UMqTzMwR0nDLIi":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#right"},"PnV1XoH4v9D1cSS4bu0uJ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shader"},"tAU1kAG97qMgoN7cf8QpV":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#source"},"QwG7A37dCRiSvJgv9BFzO":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#tint"},"jxnvL_FaIffDNI19N8_q-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#top"},"xAyf6jIegCw-2RfYC1Gl6":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#type"},"6ruQxrFoVR8HorlXOz5ax":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateWhenPaused"},"0V31RkbfIA0dGptRFjVDv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#width"},"iUxxZwaHGX97CfZVGAc46":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#addAnimation"},"mteAB5ZWU897-OukCdUVc":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#angleTo"},"PSBWnGM2RW2gdrDK3LYUy":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerOn"},"232bWF7T2g2J1ZnTwSNu1":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#clone"},"avy79s6HAgsjmxLCbPhYm":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#constructor"},"nR3Ax8avLWNPaDBzyPCK6":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#contains"},"p5t3DzEsVTWkgFnpG1mUg":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#copy"},"VFNRpKg6rIBTHNeI_pZt7":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#distanceTo"},"QekWrSbZrTPMQ_fV4OlEE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#equals"},"v-2LVB9hgqQjBlgGaSqx0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flicker"},"aRWI8SpwX6SwcviNKKnnS":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipX"},"33U9EEH5fz2SlizTw00UJ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipY"},"ueA4GOdTgj5lBelZeMpfg":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getAbsolutePosition"},"RzGHj2w97VF56mpDi5MI9":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getBounds"},"sthbWwZ-1ty6iRAckEt40":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getCurrentAnimationFrame"},"WFtTOOxob19OAtBUsa86u":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getIndices"},"pLp-CFkyRomZR4K6WlydB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getOpacity"},"ACurItJWaoAjx4wiBvl4Y":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isConvex"},"YUkS-6Jri2f1-oQpqYz64":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isCurrentAnimation"},"-b56eaolRYfArsnIrLI2N":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFinite"},"50GqjTf_Xnura3yob_QEg":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlickering"},"EnRUopXGRIQqBiSQL71e6":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#lookAt"},"Pdm9KhWh_BosTETb55nPJ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onClick"},"Y49h4iaDH5EXY4ynfUgQB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onCollision"},"jYc7eCSnYL7Pz246i5eIj":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onDestroyEvent"},"7Fme_jwiCxb3NqIbfcwri":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onHold"},"pkCB0SxUOnscSX2zZanvW":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOut"},"DjAIsR5RBMvMexBaifNlq":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOver"},"2X4VO9c9l1augvm2vur1a":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onRelease"},"aD39nK3hkPbUFQbctihU2":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#overlaps"},"PFt3gG09uneDOwW5fT4ae":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#pause"},"5gK0oW4SNB3g-hp_ajwoy":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#play"},"W1Lbt_6L2gXuWJRyUK6w0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#postDraw"},"o6OkRxtC5ahLah-9sYHab":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#preDraw"},"YZBnQYW7irHylF0ZRR8NT":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#recalc"},"fgMM5TX6BsLNgmbe-9yz8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#resize"},"FPqG_FUrlfqhXXWdB2pPI":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#reverseAnimation"},"D9vazIQ8YJexA0veH-hUQ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#rotate"},"qy4SLulrsk2dDk1DfziYT":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scale"},"ONXTGihluXOonL81hqMDW":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scaleV"},"HmfKCx3CQxgrA7xCaRvWL":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setAnimationFrame"},"eDmOyIfkX0-MHJyR9p0HB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setCurrentAnimation"},"WKQxQqz_hXEOk5RuzDg5l":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setOpacity"},"iU0kVW9ou2dNlx-ddBR8B":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setRegion"},"zEhtLX4EVF1hpClCsqbpX":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setShape"},"oiA7aJhmJRpCSyA1f-LQw":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setVertices"},"T2lN2XksayDNPipxECzSL":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shift"},"I-EkMoPNSXb-0dQjwL2xT":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#to2d"},"ycTdtVf5n5nBV7j9s1Rzu":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toIso"},"I25oZw-VSbGJZhASmujl2":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toPolygon"},"yfsEGzeC5RqflcXnw4Erv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#transform"},"2lETVWteWc9ZOeLh9Y5f3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#translate"},"kPChmWVy1jPis8dLR1TgL":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#union"},"Lb0UG2noNW9x3ojD4xte0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateBounds"},"hK7T59DmL2jngcQu_lCRR":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#draw"},"1eXnjpefDcLKp7HSWzrUd":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#update"},"ucDTWZ_Y5UAcJGIr0sGoq":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onAnchorUpdate"},"3nJ8w-tK2XjOSQaa0G9NB":{"uri":"/melonJS/docs/melonjs/UITextButton.html"},"FrvVRBmDJGSfnk8UPoNEI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alpha"},"wI3nS5o-xo1-XkKywENkT":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alwaysUpdate"},"_mmJhslnvk40Fo9Joi8e2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#ancestor"},"vuKHUgE8HBB5fmc-Nr-uq":{"uri":"/melonJS/docs/melonjs/UITextButton.html#anchorPoint"},"YwdI0JNo7C9CS65X3PJu2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoDepth"},"hHGASl3AhT1GbIA4qGTx-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoSort"},"WS04rATD4lmsCTYtO4XB3":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoTransform"},"3kHScUe8y2qJ_FPNIGNsm":{"uri":"/melonJS/docs/melonjs/UITextButton.html#backgroundColor"},"dMeOJm02pgGQitNs8ONq2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bindKey"},"AR4JnRifGnk-yjOEOKmm5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bitmapText"},"6so1Y01hi9369S_PCjrBq":{"uri":"/melonJS/docs/melonjs/UITextButton.html#blendMode"},"eJ4KevUygk9TQcwTpgH3U":{"uri":"/melonJS/docs/melonjs/UITextButton.html#body"},"UOHDfHQs5-UX_BN49UoxI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#borderStrokeColor"},"ghWG8UOg6noICLS_5Vbsr":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bottom"},"qeFaOhJN-vWT9zJwzrINY":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerX"},"fTHB1S6jkmzuS1i0l93Pf":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerY"},"RAVtT28ZNKUbEGlpTzfkD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clipping"},"ZW97EX_VZtvNHRHhZa9og":{"uri":"/melonJS/docs/melonjs/UITextButton.html#currentTransform"},"T8TQ5oTEx7moJGpQLu8TE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#depth"},"5DqraZJtDvLmteuVjRNRb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#enableChildBoundsUpdate"},"8lskoGmUvmN3-_kPXTbjC":{"uri":"/melonJS/docs/melonjs/UITextButton.html#floating"},"rEOmiybrDiMwRx_bbOQO8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#GUID"},"chyLCTBsy4_SR79mcvU83":{"uri":"/melonJS/docs/melonjs/UITextButton.html#height"},"2JHqliMQGZbvGzMAatHbW":{"uri":"/melonJS/docs/melonjs/UITextButton.html#holdThreshold"},"40S9EIqM2f07pYe2kvoN5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hover"},"7hiVEIv9rESvceEcC63Wn":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hoverOffColor"},"qnHmAw7LNFV3huKTv-alZ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hoverOnColor"},"Tf9cVKkqkkux-Vqz_QmDo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#inViewport"},"y5nWbpJUMJILRVbx6Q8j1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isClickable"},"EF4GzHizYvLbZklXug5U4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDirty"},"k45FwhxLquU--fRiXklhg":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDraggable"},"MqAebj7edBH1sYPBlQQCx":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedX"},"JilnkEvRoVvzd_Ch7hKwH":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedY"},"ChMFTEgBDVGVPBv67IzpH":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFloating"},"VDBN2EcM_cKfbfWEc8x_T":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isHoldable"},"vWCZbj04OmMRmoalw21L0":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isKinematic"},"UNiEbcWfjqj6CsLgaxnT1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isPersistent"},"5hryY1mBRxsIZhB9mxKPm":{"uri":"/melonJS/docs/melonjs/UITextButton.html#left"},"fG98hv4rK85sZEPSwozJq":{"uri":"/melonJS/docs/melonjs/UITextButton.html#mask"},"w3d_8mzE3NpG4GVFXItU0":{"uri":"/melonJS/docs/melonjs/UITextButton.html#name"},"9XYKDfHGtGhxYYIq1aU6H":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onVisibilityChange"},"qQp6uO0mbooOOgDwxrlEo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#parentApp"},"twWIDT-RkqY-oZ-z2IhHS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#points"},"jKyvH-lCt53w28eICtVuh":{"uri":"/melonJS/docs/melonjs/UITextButton.html#pos"},"jrKocmqCBEsITKEQ1neu0":{"uri":"/melonJS/docs/melonjs/UITextButton.html#released"},"66vHsQJVCApgTisOMEct6":{"uri":"/melonJS/docs/melonjs/UITextButton.html#right"},"VVr8Ss2ShUaxN5JUJnT9f":{"uri":"/melonJS/docs/melonjs/UITextButton.html#root"},"ZoUgt3TKBnaWgsg09McGb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shader"},"-tXwLcc4aH0Z6sxLJS8bI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sortOn"},"cfCLBooIh8rMdyPWb5HVY":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textAlign"},"do6pR6AncsO1syiJ8fGNX":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textBaseline"},"7tX0b1r3Dmbncl05148Sw":{"uri":"/melonJS/docs/melonjs/UITextButton.html#tint"},"CTerooLyQO4IOQcscSafV":{"uri":"/melonJS/docs/melonjs/UITextButton.html#top"},"8vmD45WTuFoSeKeUQw1j1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#type"},"ZK6gqkSd4ZaqXigMDEESS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateWhenPaused"},"Kqrn8gGOsje--ih_Upq0P":{"uri":"/melonJS/docs/melonjs/UITextButton.html#width"},"va8ZcQIISOBfjYBn0soRy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChild"},"MIKFCAlbxlxO2aoaQo2PF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChildAt"},"mIx4rCF4DzN7WckEOQQ8a":{"uri":"/melonJS/docs/melonjs/UITextButton.html#angleTo"},"vvhsXIj92Ayzh-zShQTZ8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerOn"},"35iycepehsxB_PVQMHqat":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clone"},"CKdeg1FCFtTV6_CgoBDYm":{"uri":"/melonJS/docs/melonjs/UITextButton.html#constructor"},"4htpSTc55Zao774KNqKSr":{"uri":"/melonJS/docs/melonjs/UITextButton.html#contains"},"zxx7TP_26V_Ihx4LirB9W":{"uri":"/melonJS/docs/melonjs/UITextButton.html#copy"},"w-Kv2NZVbjVNjVn8Uhq5K":{"uri":"/melonJS/docs/melonjs/UITextButton.html#distanceTo"},"u-FmEulrrqG_I2fB2CBOf":{"uri":"/melonJS/docs/melonjs/UITextButton.html#equals"},"61sDUhdQlAHvX2vfog1J6":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipX"},"HBo881VW5dT-ig_kHqlsN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipY"},"DfiwPHzEmmHGdGxmwv5uM":{"uri":"/melonJS/docs/melonjs/UITextButton.html#forEach"},"QnYlkGXn5hCjsuoCSWs8b":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getAbsolutePosition"},"jR7FX9API9WENxNNbtRx-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getBounds"},"r0txGBRgbITXdkXHnFsJT":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildAt"},"Kj8RQJ9LPuX-jKDV8BtnS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByGUID"},"Mqyf8HYDbT2JnKFBNI5kR":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByName"},"s41X6o2H_1NKeU3JcX67G":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByProp"},"NqlnSjikaiWxWGpLWr9fW":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByType"},"1NlnZTVwyaZXTJQhJirlU":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildIndex"},"xJso6Awnytml9yRk-xuTz":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildren"},"ZOvf3VehNC-077HTOGrR2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getIndices"},"m4IlAc9e6WnbS6irwAF04":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getNextChild"},"YT78nAVlxUE4D8F3fBQTQ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getOpacity"},"CqjBCWnNkM42_AufA1yjl":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getRootAncestor"},"jnQgxZFlmuesSLfsZmTKs":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hasChild"},"wqjjnn7V7KEXiBxk8fi2u":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isAttachedToRoot"},"gtltQwl2B_qw-zxHsQcoD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isConvex"},"6aPb_ComP1P2s1Yn_l4G5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFinite"},"qYpOBDPKERbAeFf_X3oYP":{"uri":"/melonJS/docs/melonjs/UITextButton.html#lookAt"},"v8QucTQUPXAbWoysKX2Iw":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveDown"},"mzyyRXJKHAXIdlopi477P":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToBottom"},"W6s2ie3-eI_cN1428TPoJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToTop"},"MJPCPnDN7CzTmtJhBDtsb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveUp"},"BlrDYkwrKMpYPIGT4QiKJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onChildChange"},"bGMnt-JE9Knbv9tBF0RsA":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onClick"},"KQTduDs9bU4qcvhe64QBV":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onCollision"},"JSOiccQUKgBPxPejR1AJC":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onDestroyEvent"},"hjH8prS6G3MgtOp-hfj7f":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onHold"},"7iOTtgHYIQOli7uSS_d5P":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onMove"},"oc9ymsIdpkv4aU29h8rs9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOut"},"6pD-wAYI93_Jq8vO5HsT5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOver"},"HhNwJyr-vXpWOrOGyygsu":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onRelease"},"i3aXQScmZD85Qp9qMxX1E":{"uri":"/melonJS/docs/melonjs/UITextButton.html#overlaps"},"n1zQOE1sC8fbLUsALdkLF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#postDraw"},"q9edwmwBwdWbxGLoMCOYJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#preDraw"},"HVqdvO_CKShQ3_AzbYv3f":{"uri":"/melonJS/docs/melonjs/UITextButton.html#recalc"},"tAUG3mcPREjk1MeCVJvGC":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChild"},"J1LDVVSC3ViVb_kV7NX9A":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChildNow"},"ZO-WhG9EQWLTFepspYb7U":{"uri":"/melonJS/docs/melonjs/UITextButton.html#reset"},"PyRCnl60SoU-dyxL_ISs1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#resize"},"8SnoOHouiHIY46j3kYhwy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#rotate"},"JuWOc-dAel4zZz9bKjRIF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scale"},"vAneNv4i7KlhoO1iMz6v3":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scaleV"},"nCi63uGCLiPzAHuoqG540":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setChildsProperty"},"G3y0XTzx1GAOiOQlSAzfR":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setOpacity"},"AUHSWE-wKwzU3Zy1bjVJ6":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setShape"},"6--ippFr2i1EpB3dLDH8J":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setVertices"},"dwcEjx67nNfNlAsy2nIPy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shift"},"rkkGCmlTalFhyKFIBn3Ry":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sort"},"D_Hlh3_-lJlN2S4fVn5bS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#swapChildren"},"c5qbet-jet2Y9QBOWbSpY":{"uri":"/melonJS/docs/melonjs/UITextButton.html#to2d"},"jsr-yV9w9pjF55WpU63Cy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toIso"},"PUwkwr3F_PLLLskjBZ0bK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toPolygon"},"Ou2iVMmLtqV116c9zY-Ub":{"uri":"/melonJS/docs/melonjs/UITextButton.html#transform"},"PelpdN---bG3DiMLRnDuJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#translate"},"-3TRHbkoVLO6FBxbIZYq2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#union"},"CSAySm-H0lZyiOKhaM93R":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateBounds"},"sqHYiK_a_ze519--oWt5_":{"uri":"/melonJS/docs/melonjs/UITextButton.html#draw"},"ERWsOHZfvrQWxnR8VUjtW":{"uri":"/melonJS/docs/melonjs/UITextButton.html#update"},"nalFRFCA0QyqwkD1dNOJ4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onAnchorUpdate"},"5lBqxlDiYBQe11IH3AmRo":{"uri":"/melonJS/docs/melonjs/Vector2d.html"},"uFWlnJ2M4KNldKk4CCPhR":{"uri":"/melonJS/docs/melonjs/Vector2d.html#x"},"D_hcvV29i96k4L8GPhExY":{"uri":"/melonJS/docs/melonjs/Vector2d.html#y"},"6SqclgIz92SdrKUPALitH":{"uri":"/melonJS/docs/melonjs/Vector2d.html#abs"},"FGqyHFeas1tRfA3TJ1xwV":{"uri":"/melonJS/docs/melonjs/Vector2d.html#add"},"ITGwhgqdiPxPQMlbxpwgF":{"uri":"/melonJS/docs/melonjs/Vector2d.html#angle"},"-VMBiTOvWtrVqjIAmHvuf":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceil"},"O_WgLVYuuYCKqegdHRGoH":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceilSelf"},"gB-4XvO5vPIN_fXTFfEB6":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clamp"},"yNLrtMeCDayllOTYBEoK-":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clampSelf"},"JOLH7ybPPGalB5yywR_yV":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clone"},"KMWu2BW5rV0skHn5tUCJ2":{"uri":"/melonJS/docs/melonjs/Vector2d.html#constructor"},"_dF6Ou6mvGaeGuS-Sr3XA":{"uri":"/melonJS/docs/melonjs/Vector2d.html#copy"},"wcony_nfARF0tzNqH43do":{"uri":"/melonJS/docs/melonjs/Vector2d.html#cross"},"zIn9Mgn-VupJPspFQuuXq":{"uri":"/melonJS/docs/melonjs/Vector2d.html#distance"},"oW1BLUFcH6C8QwbkOezJT":{"uri":"/melonJS/docs/melonjs/Vector2d.html#div"},"f_0DynGl0f-ZVpDSGTPXZ":{"uri":"/melonJS/docs/melonjs/Vector2d.html#dot"},"oSTQOGhekqncRxlOVarXF":{"uri":"/melonJS/docs/melonjs/Vector2d.html#equals"},"VDIJ9ct2n7kyts2aVXzd7":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floor"},"CAu1C6y0bifgFQpTfMBIJ":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floorSelf"},"7iYqMdsnDH8iqK7M0Evif":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length"},"xfIykqbnSDqUKk8hPwy_6":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length2"},"YFQyXvTTpI-m1cnlKlQA7":{"uri":"/melonJS/docs/melonjs/Vector2d.html#lerp"},"mV-cV8eZ6dnZxe5WP_1-x":{"uri":"/melonJS/docs/melonjs/Vector2d.html#maxV"},"sAKPmzFOZ4jlqBzUr9zdT":{"uri":"/melonJS/docs/melonjs/Vector2d.html#minV"},"6Lixb2sVO9WqAEmx6ilFN":{"uri":"/melonJS/docs/melonjs/Vector2d.html#moveTowards"},"SEn4GtyBmom2gGkAlCmUb":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negate"},"wSPAl8iBhsZre8U5vs-jt":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negateSelf"},"zpnn2O2uVYuUHbAvR_mUR":{"uri":"/melonJS/docs/melonjs/Vector2d.html#normalize"},"SHNv1S9s-0vpbkNg-HfdX":{"uri":"/melonJS/docs/melonjs/Vector2d.html#perp"},"NauluZrxFPBeC3zlTzRBo":{"uri":"/melonJS/docs/melonjs/Vector2d.html#project"},"yhx2c8nAbcYmAa3znqLhQ":{"uri":"/melonJS/docs/melonjs/Vector2d.html#projectN"},"MpS0Eem62_x-b12fKkt24":{"uri":"/melonJS/docs/melonjs/Vector2d.html#rotate"},"w_YtJy6g4aJgzsBvd2WYo":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scale"},"3SXuVRgZMQcos0PtU7sA3":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scaleV"},"RoGU-YCixz5FybLELxNj5":{"uri":"/melonJS/docs/melonjs/Vector2d.html#set"},"C53cbOtq2O97RdqFPSOWD":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setV"},"44WJburWGboAjCyCUN1QR":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setZero"},"AsBeljfepvYwb84mOqOeS":{"uri":"/melonJS/docs/melonjs/Vector2d.html#sub"},"Tyj2JplryHQGWPecVehzW":{"uri":"/melonJS/docs/melonjs/Vector2d.html#to2d"},"uGJSmFa7N9zFYUM2rUM_2":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toIso"},"PB9Hy1w1iPDfw-0yKvD5v":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toString"},"24P9fT9-mQFw4ylvS7Mq9":{"uri":"/melonJS/docs/melonjs/Vector3d.html"},"y91anGoO55OlS81Hb5HC6":{"uri":"/melonJS/docs/melonjs/Vector3d.html#x"},"5GJTz17zgBwlq2sqWDdGa":{"uri":"/melonJS/docs/melonjs/Vector3d.html#y"},"SHh63TH_dDiIxwCzsrtGp":{"uri":"/melonJS/docs/melonjs/Vector3d.html#z"},"lmi-iTTgkhaMUPpk5DulP":{"uri":"/melonJS/docs/melonjs/Vector3d.html#abs"},"qocJfP0i2XrdL-87HfKcm":{"uri":"/melonJS/docs/melonjs/Vector3d.html#add"},"xMI1Il791Krdq3-Ix6uaR":{"uri":"/melonJS/docs/melonjs/Vector3d.html#angle"},"QwtPr73FbOZiWgiTXjX8G":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceil"},"0-wV-kIEniLMCrg-nWsbh":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceilSelf"},"hni3rj5TlV_rBVU1Eb5AU":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clamp"},"TG_XJ92t39OVcr_66dWpH":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clampSelf"},"H-mrDsdr18Gy0Rld1yDUY":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clone"},"_mEjGpgH0HDqZp45r1dDN":{"uri":"/melonJS/docs/melonjs/Vector3d.html#constructor"},"nOi2zJrFmOfDgCp1SjPlb":{"uri":"/melonJS/docs/melonjs/Vector3d.html#copy"},"PN4aFgI2_ssl7ZXrA8eQY":{"uri":"/melonJS/docs/melonjs/Vector3d.html#cross"},"NhZHQ-tcswwcfhkKB24gr":{"uri":"/melonJS/docs/melonjs/Vector3d.html#distance"},"5g6jPpn6EDXiNMqwhB7Rv":{"uri":"/melonJS/docs/melonjs/Vector3d.html#div"},"sccUDc8vVZYGZXJswmbgn":{"uri":"/melonJS/docs/melonjs/Vector3d.html#dot"},"hHU9bnesqoyx0-E-FqJGC":{"uri":"/melonJS/docs/melonjs/Vector3d.html#equals"},"y-tjjw3Q0pz7q0an-eKq-":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floor"},"bHkWWyTWnck8Fi4uhtru0":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floorSelf"},"p13LkvKTeEsSHY6x0b_7p":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length"},"Mjz3tdJm_2UEvWZHfp-ni":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length2"},"QPJUodBD657fX9qSE_p4F":{"uri":"/melonJS/docs/melonjs/Vector3d.html#lerp"},"yMYLq6gg5VaMOhjMTKhO9":{"uri":"/melonJS/docs/melonjs/Vector3d.html#maxV"},"-x9JmK1-aPqP3FXfMhK_g":{"uri":"/melonJS/docs/melonjs/Vector3d.html#minV"},"1i9DXHo7QKZUwnyfgoqCp":{"uri":"/melonJS/docs/melonjs/Vector3d.html#moveTowards"},"JvRLt4jO4Ri2FpEbiDSRu":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negate"},"zLWXICTMUcefv7nLLahJ_":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negateSelf"},"gk3wMlj_VNlxjZauZk5c5":{"uri":"/melonJS/docs/melonjs/Vector3d.html#normalize"},"Vhv1m3cQjw5ReagAqLPYu":{"uri":"/melonJS/docs/melonjs/Vector3d.html#perp"},"jqLl1OiGKs0wM0s2uIwwR":{"uri":"/melonJS/docs/melonjs/Vector3d.html#project"},"U7vDHS-sbgRRRCYLH2IMm":{"uri":"/melonJS/docs/melonjs/Vector3d.html#projectN"},"G94hBQMGJ_voyI7SHFLys":{"uri":"/melonJS/docs/melonjs/Vector3d.html#rotate"},"Blzk-PpvhssIm6UIp5SII":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scale"},"Rjban_6I9GlmJB4vwXHp-":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scaleV"},"Zu-z5Enxs2uP35trgU9WZ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#set"},"1zXBNg9fZCRISgXcbSqZh":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setV"},"S23J5VzwMUxbTwgeOoN3m":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setZero"},"Zjy1MEt0v_JBWvUPCyKK1":{"uri":"/melonJS/docs/melonjs/Vector3d.html#sub"},"o5CBsYLzBJL3De2ZweMR8":{"uri":"/melonJS/docs/melonjs/Vector3d.html#to2d"},"C6PuppBL_t8Wjh8RAJ6d3":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toIso"},"g0DB27SpgNEvmQ_S5odyV":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toString"},"RpdSvImO9v0PtXuZFNvaB":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html"},"CG-jdNDFp8GBVAmQ82ftj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#compositors"},"GMGRCk8Z0tv8qqIgSXDDz":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentCompositor"},"EDO2aCgbYm3abV102aHe8":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentProgram"},"tKF0BEX_ylGYCbm-d7ONW":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentTransform"},"5DTX46Q6_cahYBqP_THFn":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#depthTest"},"wqeS_l6vznaJxKyk7_N7G":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#designRatio"},"aMp9SbuoOTl-P5rIGmfd1":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#gl"},"5FxRc03c3vkFQR512dAh4":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPURenderer"},"kPWMS5XE_fWPZ_bqUIOCd":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPUVendor"},"iMcdPlexjROujjaopOae6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#height"},"AxkB1dBsBb9BqTxDKJy1a":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#isContextValid"},"dt9Fuu2sGYdpSy67mbZDg":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#maxTextures"},"zXkl3-LaZxLnk48bQF4El":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#path2D"},"-_o5yg59-NzpkhRom0zmn":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scaleRatio"},"TyKAJYXRzPeldx3_2hzuG":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#settings"},"lXxwbjryPlCO2TmbgLnNo":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#type"},"QkCPiNCOz-p5ZdipvT7h6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#vertexBuffer"},"j17OUp7J_vGrPWBKcHn4T":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#WebGLVersion"},"99ooVJNtDTWmQjkwxtjAy":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#width"},"aZda2STOkCa9a40CwGOL5":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#addCompositor"},"P8AIkYDGPmfntoHYgNma5":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#beginPath"},"9uZQEyyADVKxnGjlmGR3F":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clear"},"pdyL5WhTlCaj4SQDkwyKH":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearColor"},"qkxEamtnjapuKhS5WTWhz":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearMask"},"NNcnKlWaOAZ34_cGgPEuy":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearRect"},"CYCqSC-z1KkCaFMYllaGi":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearTint"},"qggHZ4xq55UtWmFzixo--":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clipRect"},"mtqj--nopL8NiF09eBH5r":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#closePath"},"QAvYvKhmqyO5w6ha9Q9l6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#constructor"},"brc4jSdlttaJpGBxa1pV5":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#createPattern"},"3BavhvnpE2DDND2HqepRj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawImage"},"-gJTwZIZXW4CFfIVSv1fx":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawPattern"},"mBpMIWx60SypAfW4lLXzV":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fill"},"yvdqpfBA5daFwvROzgNb3":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillArc"},"FOTxg3-B-kPWhvOHiA7ab":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillEllipse"},"p7g88Ga8uoZL6bGFO-Rdp":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillLine"},"8YEGRh68Ps5NV6pw0rtHj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPoint"},"dAdONmBQTokSJK7LpoC__":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPolygon"},"Z61ng_Xs9wUfexLglJdfK":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRect"},"wh0--zgu5i2kDsNz9-uNm":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRoundRect"},"CuQQmJk-zdT-Km28wLmel":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#flush"},"RHn9SoISdmUbHImI9F3fh":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getBlendMode"},"JsT4RT4Eo7DuBe81qsZTQ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getCanvas"},"Hn7cHBkpSVpD3bdNCe3K-":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getColor"},"uhXKaFu-5h2FXr9ycBm_M":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext"},"lS6rUjyJSjzzZEvx4ylxv":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext2d"},"OvQfIvqbI0CM6l_Fm-AsT":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContextGL"},"SdN_kCcviREORF7BxypdP":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getGlobalAlpha"},"VyiOIyxi_NlEDZ-NdL5_-":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenCanvas"},"BTm91-RQadJ5yM_X_iqVl":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenContext"},"FzIoGVAmMuaFFI3XFxDXs":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#globalAlpha"},"Vng32ngP1CBbQqzsu2b9L":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#lineTo"},"S7BpM-ZrhZKv_ECwieeIa":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#moveTo"},"FzSI07YeHkOvXcRCl5O5m":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#overlaps"},"wCfB_0LiGAStATRvY__p4":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rect"},"GQITbYtMvm5EQiqS0Bz0E":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#reset"},"cTXs5Zv-z0JiMbLAlh4yn":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resetTransform"},"VGpg76aJVGsQwi_8nKFKt":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resize"},"iAV3dA8ujwNhU04eb34xQ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#restore"},"0Hx2XknWuSSYbLMICkEON":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rotate"},"TgI2laqdcVXcRdiKx8h6e":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#roundRect"},"_x56aZz1_HGuuau0ije91":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#save"},"IMq7G__SL7ZHLCAo-nxs6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scale"},"Ztc98VhKUcnUlE9Pd7iDg":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setAntiAlias"},"B1bWb_y9Vr7efQU1Pw1rZ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setBlendMode"},"VYOuzKQj2UdSk7fvNPzaN":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setColor"},"m6Wbz6pPHOtle6vgVQHjw":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setCompositor"},"jYTmap5HtJH1ApF3deRQ8":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setGlobalAlpha"},"nFM4_JKGnCevkiipxk3Xp":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setLineWidth"},"HcUQ_uBVfOhQEakZvM1um":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setMask"},"6bJR2RrGhUnapt-PUDatM":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setProjection"},"U-4FCmKxTrEz05oYQqtum":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTint"},"lqqxNMpOrSEJVUaRdhjIT":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTransform"},"KBPiKVfN__VgCbkuHEfdN":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setViewport"},"WjA0JEAP9KoSPJYUZURcf":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#stroke"},"-M4TC6qsnJusil02o1oeG":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeArc"},"_WJI4vSXo_-ei2U2B9T1T":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeEllipse"},"J_yJxmAfCImj8mDgJSETA":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeLine"},"DYSTDYZMSpGjVeanT54IT":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePoint"},"FZQnGgV6xgjONSIuca7a7":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePolygon"},"FqLCjIddab38rNZJytyPj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRect"},"Y5nLM3T4ugJ7wzB16VTtf":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRoundRect"},"6eQqwfFa1KVzov6M0Lxvc":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#tint"},"PIpkBRGoki4SjPYWItisk":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toBlob"},"KX9kUmleyYW0jcY1koReY":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toDataURL"},"kIewtPDYZNna6u3Y0lOb-":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toImageBitmap"},"iet1Mq6ZLcaE0Pg0BK4zG":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#transform"},"aP8Lt1aW4pizN5bUdhQmX":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#translate"},"QcohUfJniF6yl0CaaWAuF":{"uri":"/melonJS/docs/melonjs/World.html"},"-h_x6kc60TVyQJZjRIi-v":{"uri":"/melonJS/docs/melonjs/World.html#alpha"},"RlUBR-N_9dlbqswb4gDES":{"uri":"/melonJS/docs/melonjs/World.html#alwaysUpdate"},"k2zOtBLL6-xKKaPMXWlEK":{"uri":"/melonJS/docs/melonjs/World.html#ancestor"},"fH7NW-NT24IuaahcUWLHE":{"uri":"/melonJS/docs/melonjs/World.html#anchorPoint"},"YwVyWrNzJQsp3-cjSsL6x":{"uri":"/melonJS/docs/melonjs/World.html#app"},"IK_DP7NXXHeNEXrnG3OLr":{"uri":"/melonJS/docs/melonjs/World.html#autoDepth"},"aU26JyYBAOpf0UbLB8WBW":{"uri":"/melonJS/docs/melonjs/World.html#autoSort"},"7Dl7u4y0iL-bSVe93viid":{"uri":"/melonJS/docs/melonjs/World.html#autoTransform"},"Go7UcknkmZSD2JVtD0GoC":{"uri":"/melonJS/docs/melonjs/World.html#backgroundColor"},"SKxO-6LM8Mr6lU01ZjWF1":{"uri":"/melonJS/docs/melonjs/World.html#blendMode"},"NU3q2gXaV6X9RV8RceV4y":{"uri":"/melonJS/docs/melonjs/World.html#bodies"},"yAvHguuwG_LHQrg2rQpsR":{"uri":"/melonJS/docs/melonjs/World.html#body"},"HOoBK3i9BA0HefaG4EYVd":{"uri":"/melonJS/docs/melonjs/World.html#bottom"},"C8uUsaKogNZjDo3bBXiw2":{"uri":"/melonJS/docs/melonjs/World.html#broadphase"},"ECdIaWod-GmzhaTCPzE7E":{"uri":"/melonJS/docs/melonjs/World.html#centerX"},"lcMwMAuxe5QPhns29k1fG":{"uri":"/melonJS/docs/melonjs/World.html#centerY"},"F8v4qmOABTGI81LbCjL9v":{"uri":"/melonJS/docs/melonjs/World.html#clipping"},"m9cf3vjuBsdFjf_1dM9Jy":{"uri":"/melonJS/docs/melonjs/World.html#currentTransform"},"1t8XmykWeWoC0prGfIfcJ":{"uri":"/melonJS/docs/melonjs/World.html#depth"},"zWsXQHx_usQxl1uq2uUCT":{"uri":"/melonJS/docs/melonjs/World.html#detector"},"9tpzvoSAYCIJ_0j58PV92":{"uri":"/melonJS/docs/melonjs/World.html#enableChildBoundsUpdate"},"tPH72Se_Cn7NcP9c2JYhU":{"uri":"/melonJS/docs/melonjs/World.html#floating"},"V7Itg1HT-4x1d7FuV6rTq":{"uri":"/melonJS/docs/melonjs/World.html#fps"},"dYbnlmJRgLoiAOHm2uVHR":{"uri":"/melonJS/docs/melonjs/World.html#gravity"},"VtCQh9d6VWqy3XWzHJVw_":{"uri":"/melonJS/docs/melonjs/World.html#GUID"},"wbpxMd0uv2FFC2OEpHDJT":{"uri":"/melonJS/docs/melonjs/World.html#height"},"pr9TglYd7pz05S9jNcJzs":{"uri":"/melonJS/docs/melonjs/World.html#inViewport"},"fAeR3pt88BLcYStkAphq2":{"uri":"/melonJS/docs/melonjs/World.html#isDirty"},"853ggWlCqytFZzjUmF9q9":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedX"},"venr22wemSJJe-sz1UoSD":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedY"},"GNEhZVgadPzErbbsUbFMb":{"uri":"/melonJS/docs/melonjs/World.html#isFloating"},"xMvDE5hmZi3AjurFeZRvz":{"uri":"/melonJS/docs/melonjs/World.html#isKinematic"},"LDbgADeGjcGZWKS2N_WSu":{"uri":"/melonJS/docs/melonjs/World.html#isPersistent"},"bcyvXroWaGolWNhxLeXiN":{"uri":"/melonJS/docs/melonjs/World.html#left"},"AuaRcPssSJvL8JfixNy0t":{"uri":"/melonJS/docs/melonjs/World.html#mask"},"lilXrpaYiMAq8h_FNpJPy":{"uri":"/melonJS/docs/melonjs/World.html#name"},"cHJ2FMWIl2kt1-NzYSyf0":{"uri":"/melonJS/docs/melonjs/World.html#onVisibilityChange"},"IEYDWO_nbQWGku6lubneY":{"uri":"/melonJS/docs/melonjs/World.html#parentApp"},"KE6qMfafzwUeKLtZ6AGP7":{"uri":"/melonJS/docs/melonjs/World.html#physic"},"4Aao0clLAOvWvrTcVYngu":{"uri":"/melonJS/docs/melonjs/World.html#points"},"IukZJXHkDKLgMhyMja-yx":{"uri":"/melonJS/docs/melonjs/World.html#pos"},"F0tUfF7WQbdLrA8857sdp":{"uri":"/melonJS/docs/melonjs/World.html#preRender"},"uJDnPe_m8_po4jOh_IPls":{"uri":"/melonJS/docs/melonjs/World.html#right"},"uVIpvRIDVHH2IRh97ZlTd":{"uri":"/melonJS/docs/melonjs/World.html#root"},"JGKbas0O1JsJxTOlPU0Vm":{"uri":"/melonJS/docs/melonjs/World.html#shader"},"TaIiyuu6IveUzLa7QnT2i":{"uri":"/melonJS/docs/melonjs/World.html#sortOn"},"tLms43CkJxqYQRZjxMi5_":{"uri":"/melonJS/docs/melonjs/World.html#tint"},"Y835ev7AfDRMyhjPLIoTz":{"uri":"/melonJS/docs/melonjs/World.html#top"},"38vBW9_ECRWJQ26OVYlj3":{"uri":"/melonJS/docs/melonjs/World.html#type"},"REkot8YCNHgGVQvz-udot":{"uri":"/melonJS/docs/melonjs/World.html#updateWhenPaused"},"PqZ0uD92Buqf2MJS1xVA_":{"uri":"/melonJS/docs/melonjs/World.html#width"},"FKQRhx57DDphHrqKKw7b6":{"uri":"/melonJS/docs/melonjs/World.html#addBody"},"1I2AzOfTzEPN5v_UIBBvb":{"uri":"/melonJS/docs/melonjs/World.html#addChild"},"r8QmXe4duNv3Tx7kA1Orl":{"uri":"/melonJS/docs/melonjs/World.html#addChildAt"},"YjhqzaOYHDCuqIU5i2Ihn":{"uri":"/melonJS/docs/melonjs/World.html#angleTo"},"wyszac1gTCTrPMCPiftH4":{"uri":"/melonJS/docs/melonjs/World.html#centerOn"},"87g2LI6Gb9eHutlKvrF3f":{"uri":"/melonJS/docs/melonjs/World.html#clone"},"No5sBKs0U0NytSCvUlHpQ":{"uri":"/melonJS/docs/melonjs/World.html#constructor"},"9TgAswkBRoTIZuzvm0thP":{"uri":"/melonJS/docs/melonjs/World.html#contains"},"jxYn6Il3_7BzgXEUJpfdj":{"uri":"/melonJS/docs/melonjs/World.html#copy"},"qzBa63p3bed9yaniRjjWB":{"uri":"/melonJS/docs/melonjs/World.html#distanceTo"},"c_m9cj3i_TdZrBk-NXs5K":{"uri":"/melonJS/docs/melonjs/World.html#equals"},"DyCeAqP4wH67cP9zfxoNV":{"uri":"/melonJS/docs/melonjs/World.html#flipX"},"57R14Qu2jSoUlb53KdP5k":{"uri":"/melonJS/docs/melonjs/World.html#flipY"},"hYzfTJTSYEc6CwSTYgPDX":{"uri":"/melonJS/docs/melonjs/World.html#forEach"},"3VPvzkUEFp_qLp8F4aSss":{"uri":"/melonJS/docs/melonjs/World.html#getAbsolutePosition"},"PGU5uZOzyAsoiewfnL0Qg":{"uri":"/melonJS/docs/melonjs/World.html#getBounds"},"aqmPmMypVodp0eN-Q069d":{"uri":"/melonJS/docs/melonjs/World.html#getChildAt"},"Ysc09cIwpUvfvbGOfxYfP":{"uri":"/melonJS/docs/melonjs/World.html#getChildByGUID"},"iMnVTKaC6T9vg3SDySDnu":{"uri":"/melonJS/docs/melonjs/World.html#getChildByName"},"FOKs0AH5oL7ROl4Bqi-mb":{"uri":"/melonJS/docs/melonjs/World.html#getChildByProp"},"GNWaoJMXHL52oct6_m1sg":{"uri":"/melonJS/docs/melonjs/World.html#getChildByType"},"71c0SkLERNH0eMIUxdiNM":{"uri":"/melonJS/docs/melonjs/World.html#getChildIndex"},"1n0sDagsv65TVeTyNiOQb":{"uri":"/melonJS/docs/melonjs/World.html#getChildren"},"D3glX2P9bA2tEg1KRV9Gw":{"uri":"/melonJS/docs/melonjs/World.html#getIndices"},"MacQBI6Z000BOkfhde3R1":{"uri":"/melonJS/docs/melonjs/World.html#getNextChild"},"l-U5VCIM5mbplBvoEk5tr":{"uri":"/melonJS/docs/melonjs/World.html#getOpacity"},"wSBM3s9XXdMTpvJybG_ya":{"uri":"/melonJS/docs/melonjs/World.html#getRootAncestor"},"6bdC1Iwv7rCOj18uA1U-F":{"uri":"/melonJS/docs/melonjs/World.html#hasChild"},"zqaFZWvHxWN5Db1WeF4mf":{"uri":"/melonJS/docs/melonjs/World.html#isAttachedToRoot"},"XQL0BSXXPV11Og2wrUUox":{"uri":"/melonJS/docs/melonjs/World.html#isConvex"},"0shfxOhUDT-vCBFWbziq3":{"uri":"/melonJS/docs/melonjs/World.html#isFinite"},"ybPcKHJyAOAppRO0ZCV8s":{"uri":"/melonJS/docs/melonjs/World.html#lookAt"},"RtIcAyTeNwjXx4wBtQUSA":{"uri":"/melonJS/docs/melonjs/World.html#moveDown"},"CpXkv4WWqzUcVZErDdxT_":{"uri":"/melonJS/docs/melonjs/World.html#moveToBottom"},"VSdZl0Bu9fT-GRDUGn38L":{"uri":"/melonJS/docs/melonjs/World.html#moveToTop"},"l8Sm4BLvHqIJ-_no_X7Pu":{"uri":"/melonJS/docs/melonjs/World.html#moveUp"},"0qrgQwipCEd1-JzbELw7Y":{"uri":"/melonJS/docs/melonjs/World.html#onChildChange"},"RuGxzqUgkGHXLcuDKKDjy":{"uri":"/melonJS/docs/melonjs/World.html#onCollision"},"tWz5Xs6xFlCqxt0NrLkom":{"uri":"/melonJS/docs/melonjs/World.html#onDestroyEvent"},"gnZM8dVzP-skRiyzttXQo":{"uri":"/melonJS/docs/melonjs/World.html#overlaps"},"zeENS04DSp1nQ7dQ5B2xc":{"uri":"/melonJS/docs/melonjs/World.html#postDraw"},"lZYUPj2YMDDDZAvepaGmV":{"uri":"/melonJS/docs/melonjs/World.html#preDraw"},"PdPY1kacgJ_A6VZCDTn5A":{"uri":"/melonJS/docs/melonjs/World.html#recalc"},"LHrpVnjN4i6xbXNIFLmZJ":{"uri":"/melonJS/docs/melonjs/World.html#removeBody"},"cjuMug_T-GaU1PnohzCxa":{"uri":"/melonJS/docs/melonjs/World.html#removeChild"},"Fx5QDNnA2Rt_MEYv-z0Il":{"uri":"/melonJS/docs/melonjs/World.html#removeChildNow"},"YCLsEi7MUre_pnD-7JVbZ":{"uri":"/melonJS/docs/melonjs/World.html#reset"},"N8sdsHJEjXrgDkvHvqmsn":{"uri":"/melonJS/docs/melonjs/World.html#resize"},"7_OofSY61N_iPMkLGTlqm":{"uri":"/melonJS/docs/melonjs/World.html#rotate"},"pa5L5NtI-OwfaSYpPLRDg":{"uri":"/melonJS/docs/melonjs/World.html#scale"},"RTFtOs83nQuWgYJOi9MyW":{"uri":"/melonJS/docs/melonjs/World.html#scaleV"},"8_sFD7OufmNFmGFzVONvb":{"uri":"/melonJS/docs/melonjs/World.html#setChildsProperty"},"c-W2yN4uMoQxY5U_ti3PM":{"uri":"/melonJS/docs/melonjs/World.html#setOpacity"},"s5G2j1w4UOgaT18gQkTco":{"uri":"/melonJS/docs/melonjs/World.html#setShape"},"oMbHUC4DZNoWylQTz9Zy9":{"uri":"/melonJS/docs/melonjs/World.html#setVertices"},"ibWUSTqlEkgB_n7A6s8nb":{"uri":"/melonJS/docs/melonjs/World.html#shift"},"2ECUze0WBHeQpMegs4Fe_":{"uri":"/melonJS/docs/melonjs/World.html#sort"},"BQ-KeX7KP0Vp6wqNUTiW2":{"uri":"/melonJS/docs/melonjs/World.html#step"},"R2hnEBDI_zmh29pJXrP0b":{"uri":"/melonJS/docs/melonjs/World.html#swapChildren"},"V-RCYSlSnjwjA6CKiXaR8":{"uri":"/melonJS/docs/melonjs/World.html#to2d"},"rmFcVVvaonpZ5CkCxnKp_":{"uri":"/melonJS/docs/melonjs/World.html#toIso"},"FARa-eBrjrb9brA8SEuDr":{"uri":"/melonJS/docs/melonjs/World.html#toPolygon"},"-fX90oqpK5-fPb-21f_Ng":{"uri":"/melonJS/docs/melonjs/World.html#transform"},"l1hl0HQSBEcfiZZq8mIlt":{"uri":"/melonJS/docs/melonjs/World.html#translate"},"ddT1on9k1J5tpwEmm00S2":{"uri":"/melonJS/docs/melonjs/World.html#union"},"MEj-5Ibr4JPmmTf1_yTor":{"uri":"/melonJS/docs/melonjs/World.html#update"},"doHu90EUd4rXVQIQMf6rl":{"uri":"/melonJS/docs/melonjs/World.html#updateBounds"},"7XGBc613P5KXYBoRGH0yz":{"uri":"/melonJS/docs/melonjs/World.html#draw"},"tOhser6iFjcAw6rWAy8Cj":{"uri":"/melonJS/docs/melonjs/World.html#bodyApplyGravity"},"_Fe1glYTfUBbiKJSewoSp":{"uri":"/melonJS/docs/melonjs/World.html#onAnchorUpdate"},"m4VKVLYDp4Pk23G4fApVE":{"uri":"global.html#AUTO"},"kzi1vBrKBL0kVqzEKL0OR":{"uri":"global.html#CANVAS"},"J2GjB2664qkscHEba49As":{"uri":"global.html#version"},"LYNPNPJBc3OCRcHM5YREy":{"uri":"global.html#WEBGL"},"NOl5M2XP8bGR5br8gkpjA":{"uri":"global.html#failureLoadedAssets"},"727_nFkv25ocVdPGbexDU":{"uri":"global.html#imgList"},"AwiKFnNsyyIVtFyFPRHlO":{"uri":"global.html#initialized"},"vnKBkpQgTh5bbiS1s_0nu":{"uri":"global.html#parserInitialized"},"mKwBAQp49QW8WVKOwpedZ":{"uri":"global.html#parsers"},"hZjB-Is6x4Rp8go2YCf3P":{"uri":"global.html#skipAutoInit"},"E9dVW5fYGMsIYJWTnwZlm":{"uri":"/melonJS/docs/melonjs/boot.html"},"9UQdBshcmDGp1KXUd_Nu7":{"uri":"/melonJS/docs/melonjs/consoleHeader.html"},"YD4QKyBxWEx8ShsFvmx1s":{"uri":"/melonJS/docs/melonjs/fetchData.html"},"KA9spaCvF52XFLxt5nvts":{"uri":"/melonJS/docs/melonjs/hasVideoFormat.html"},"_BkIcCPMQeRpD_Pb4npsy":{"uri":"/melonJS/docs/melonjs/pow.html"},"AElFa_PPHQKx8gepKdVV4":{"uri":"/melonJS/docs/melonjs/warning.html"},"iLS3HQxOqEm8JmMZB6XG4":{"uri":"/melonJS/docs/melonjs/onresize.html"},"Y9X-Jcsid1J2BpysbnykX":{"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 11bbecafb..c60ada7ca 100644 --- a/docs/docs/melonjs.api.json.md5 +++ b/docs/docs/melonjs.api.json.md5 @@ -1 +1 @@ -dc997551abe9f4df4364557c027a79b3 \ No newline at end of file +dd5303f981133276eb4ff1e71c85d6d9 \ No newline at end of file diff --git a/docs/docs/melonjs.html b/docs/docs/melonjs.html index acf9f45a3..bf2fc41e3 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 b6e13ad94..b22454404 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 12cc39ae2..2e97eea0a 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 2d7ba70f0..e57d16ad1 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 83ab4a9a9..0e2f4ee85 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 429c45303..5b725f068 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 18eeba31e..79ef55722 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 7f2ff4189..207f41ad1 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 209d31da8..0060329a2 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 b6c66d8bc..48941d2de 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 437f884b0..1c4cc5323 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 cf5938531..600bae095 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 38662ca03..a836aefdb 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 5f4fb6baa..707917163 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 fa8bb28d8..ef5706aea 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 ceb627a2d..ccbaf6791 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 ebb45e539..5dac54d06 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 8c4d30c60..98fabd249 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 a67d0d1eb..4226b986c 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 475a1daff..b584ad823 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 8e9234de3..ddc74ca17 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 1fd445fcb..066f8a2b0 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 4f77416c2..773a79c13 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 92f282a09..0b1798257 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 e82dd2b20..ff5741bf7 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 2f1bb641f..116ea6cd5 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 83ebc0e66..fb24d3353 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 916864419..4d51dab92 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 35ef423b4..18533871c 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 40607798f..0fb7d62d4 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 9914cd3d8..93e24ea13 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 51ef32f06..d9ca00a4f 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 bc82c92d6..da41c42bc 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 10ff6755e..3f1c952b4 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 0defc49f0..275e5036f 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 a13828a9a..e3587d152 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 024f682bb..08f62f11a 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 674e6e7ff..af9ae414b 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 fd9c5b36f..1aa2c1314 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 8b5bfc884..c61bb8a98 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 6a08e1985..65baa442d 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 be67b905a..726368fd1 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 00068c7a8..0f4a4f835 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 1cea0d4c6..89ad550a9 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 d4d343a57..0eba571da 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 1b8dd20ea..a70c0bf1c 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 b7d27c1bf..ec41fff84 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 cbbbd56bb..261c6d5bd 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 487e4c017..c86095a4c 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 ba737c8b5..efc1f7062 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 b107fd2f2..df9bc81d1 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 83ed9db1f..3a4b8c8ab 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 1b7fd79a7..06172b997 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 c340b8a93..5fc41d93e 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 51e1796d0..438ac9364 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 27cb5dfb1..f9ad643bc 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 5042dce2d..660dccf06 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 f6e421800..68a6fd1c1 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 69c92d5d3..d77b95b40 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 d6c224e15..023ea10a9 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 a7f434580..5a8ba7300 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 47af7c83d..b5acc811c 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 eb860da75..0cb197a66 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 e6b1d4ad1..626853043 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 a5afd4733..84903dcb4 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 6c61b8ad9..f430201fc 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 b9c2aafab..ff671d115 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 fda29f4cc..f71624476 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 727c1ee31..d3154e08c 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 82901efe6..372a68815 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 81b4e9166..a7f0472b8 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 3d19434b3..17a3a7eb8 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 9df17bf5d..5a951ce23 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 6f9c09c74..84f58e135 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 fa308d5ae..e1494490f 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 b39352214..fca7cb0f5 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 5caa6685e..f318898dd 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 eca2ac212..843815105 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 c75affaec..8b01dfd94 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 8a191dd18..9c3019597 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 57ecf746d..1165e0687 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 0f99c1f83..105b6d8ea 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 2eefe11f1..af712f77a 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 52cc6b7ac..8563c2950 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 803d40ffa..1b977d2ac 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 a5c51a402..5df057cf2 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 98a2bdfe6..ae4efa016 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 bc35469f6..97a3e7685 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 1a395a392..dd3407cea 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 42b221951..1132adbb1 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 405ad60ca..778bb085b 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 7689926df..6bf8782b9 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 e9b11d14b..2be920448 100644 --- a/docs/docs/melonjs/UITextButton.html +++ b/docs/docs/melonjs/UITextButton.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Vector2d.html b/docs/docs/melonjs/Vector2d.html index 17344c492..924d145bd 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 b3b888801..e6bf77720 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 7b26d5ac1..a5173fdee 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 447dc5ef8..d76e00207 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 8e4ff291f..e8615ab7b 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 319d6f0f4..dbab5d472 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 40d042bb0..2d88dc99b 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 04e84dc26..48c42dba4 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 f049a2325..4b12bd390 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 82daae791..b4e3db958 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 730328529..1d3995104 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 37c248934..9fe7c46f4 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 3999b9eb3..edec7c13b 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 8942f48ac..fb65c82e3 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 07c494aab..f8cacf23c 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 242629303..4c07b939c 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 902d193b7..3418e95a1 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 fa8bf595b..8fb51af1b 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 392cefd79..166797ae7 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 026eaa2e8..68ec9829e 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 135070e0e..ece3403a9 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 63c018033..38d0c0952 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 83e3e3594..9db64ec8f 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 6a52cdd35..f84c44e31 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 dedcbca97..ab8dc7b73 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 b8b88c661..79859e517 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 b3c98d6b3..417686687 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 caab17311..b95de878d 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 e2b151ba1..4c2dbd130 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 f0c29aec2..5dada5128 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 3ec169829..c1b604df0 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 307c25f93..272b9759e 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 294706311..353b7fc3f 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 da1eab40a..98b4cafc5 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 7c7ff963d..6f88b5082 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 a3f84c54d..29cb5947e 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 012ef33b9..947573447 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 4f3fdaf42..4c27ea343 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 6b2ca23a1..15d28dcf5 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 8ea1fc137..b972984f4 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 1606edc6d..063463e06 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 faef8d8af..f8fc61c5d 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 da2eedc8f..bf861b640 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 748963d33..710cf54b3 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 e1eb75894..4ad17e3b1 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 27c95788e..1ef9cfcd9 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 05766c12b..74f1061b5 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 44c679ebb..bc8c24c61 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 f95a30323..7bbb0f32b 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 c925d75e3..98dbf1da2 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 df56f5ea9..2f960d6b5 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 64d16a1bb..dba5db4f7 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 2740b05c4..ff6d2d8c9 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 a94db1a39..d098c6047 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 be89a30a9..66c956576 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 503197c55..9b90d4fed 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 e34da363f..1de94e910 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 37e5e7b63..483cfc013 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 77524988d..6fe9ba4cf 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 30c8a56bd..1d7568b62 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 e47e67819..84a023d19 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 87dd1ddc0..b44e94b3f 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 f547f3ae1..a8c791f20 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 d3dc2b2dd..f6a8c11a4 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 84ae76ac5..353878c3f 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/fetchData.html b/docs/docs/melonjs/fetchData.html index d6aaa27d5..57676f491 100644 --- a/docs/docs/melonjs/fetchData.html +++ b/docs/docs/melonjs/fetchData.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/game.html b/docs/docs/melonjs/game.html index c34327f03..b183738f3 100644 --- a/docs/docs/melonjs/game.html +++ b/docs/docs/melonjs/game.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/hasVideoFormat.html b/docs/docs/melonjs/hasVideoFormat.html index 8a80034ff..9049e44ea 100644 --- a/docs/docs/melonjs/hasVideoFormat.html +++ b/docs/docs/melonjs/hasVideoFormat.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input.html b/docs/docs/melonjs/input.html index 13c9dacb4..b3bf1c657 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 b95658a51..70dd1a154 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 f0ca745e3..4b1c1a30f 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 5c05077db..b2f80e016 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 0c57e5b35..c42e51415 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 f97cdb77c..cc832f0d3 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 31c516525..8ee7596fe 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 67fc83885..b65d1371e 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 0238093ca..f8becd128 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 d1a1e35c2..f0a0663cf 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 188737f38..f75218d1f 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 58cba26f7..f3c1258f4 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 e72eb708d..4a27ed837 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 dc58e0df9..29113d377 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 e02e3b3f1..72fbd71ef 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 402cb0ae7..25db1b6cf 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 b9240b7fa..285869669 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 737041318..97f2df7ab 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 492a294a5..80a92e7a6 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 ffe9bcc17..c84f4744c 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 5fe1d10d7..90e0207c5 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 56fca2b2a..61004d777 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 60597f453..2c08323b6 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 684ddebec..8ddd67c14 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 b14662494..cef295bac 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 97632e199..4ef793a01 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 85f71f8f9..e29de238b 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 46641dc9a..dd6115e50 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 a03e4358a..6b930e889 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 a36b26ce7..fcdbebde0 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 3b9092d87..e580049bd 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 c61cc1c40..d7bab57e8 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 d900e3d1c..4f9ad6277 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/getVideo.html b/docs/docs/melonjs/loader/getVideo.html index ec5246f6b..50d844555 100644 --- a/docs/docs/melonjs/loader/getVideo.html +++ b/docs/docs/melonjs/loader/getVideo.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/load.html b/docs/docs/melonjs/loader/load.html index 7824ca690..eb3ada1b1 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 eec9c3533..e94934632 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/reload.html b/docs/docs/melonjs/loader/reload.html index c8a2bd0d6..49a4c6a3c 100644 --- a/docs/docs/melonjs/loader/reload.html +++ b/docs/docs/melonjs/loader/reload.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/setBaseURL.html b/docs/docs/melonjs/loader/setBaseURL.html index 199692980..5f6e3f314 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 09715aa3a..813da3380 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 45dcc28bb..b26c20530 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 38ecdc409..fc6e0d788 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 71b77a269..05cdd85c5 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 7197de50c..7bd38f487 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 8f20d3024..4fed20dfb 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 614ada866..f507cebf0 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 46f35132e..c66ea0e7d 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 671de398e..adb489cce 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 5713d40e3..3b1c08051 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 0d1cc1a21..d1c4610b9 100644 --- a/docs/docs/melonjs/pool.html +++ b/docs/docs/melonjs/pool.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/pow.html b/docs/docs/melonjs/pow.html index 727dd0d86..0ed1cc066 100644 --- a/docs/docs/melonjs/pow.html +++ b/docs/docs/melonjs/pow.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/save.html b/docs/docs/melonjs/save.html index 5dbd8fce1..527606321 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 6db0e3f9b..65b46c301 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 ebd7aa032..58ff1f7f2 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 7a2999204..4b400176b 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 790a21abf..a00a8282c 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 d18cf700b..c8b5c5683 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 a6889b3ab..7a98d0db5 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 58886b076..768eadf7a 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 f0f1a67e1..9ec09535f 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 c75d159bd..8a42caea7 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 ec4316306..067d53ebc 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 13a86d0d8..c8722231a 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 bf419e79c..3d6ade4ea 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 0044008fd..7e7d2d79f 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 04e27d0ad..b3c280411 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 5626d4ae6..72dca2f0f 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/geometries/toarccanvas.js.html b/docs/docs/melonjs/src/geometries/toarccanvas.js.html index a8ad98159..0b97a4015 100644 --- a/docs/docs/melonjs/src/geometries/toarccanvas.js.html +++ b/docs/docs/melonjs/src/geometries/toarccanvas.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 76e857315..444b1ea8d 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 f14be1497..87b8c9906 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 9a3460581..173afd1e9 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 b6a003078..3bb15f6b1 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 ddce38c94..01f42473b 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 5dae822c3..319576147 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 ba6819a42..d6947742d 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 21f5c4a9d..32aa68626 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 4a533aa78..9975fa57a 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 263693b74..cab0fc608 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 9b93868b4..e59738a70 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 ab5092393..9efa609ef 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 5edc7b3fe..25a6d63b3 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 ac79f7da5..c3acece15 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 20ea4de74..583d7040c 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 08154aad7..d981a0608 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 3ff98f040..a54ab1ae3 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 34948d6e0..7e9b4d460 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 839cba6a5..fd03e6092 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 f3bf61cbb..f26f06785 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 44e84d5fb..c9da5fbf5 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 0767f962b..219fd4076 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 bc3fc19f9..0c2236dd8 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 dfb47ac67..3ad4d4563 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 c674c9755..546ecc7b5 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 00738d48e..0a2da7272 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 b15dd3afc..3f8a977cb 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 0a21070ea..f32c134b6 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/fetchdata.js.html b/docs/docs/melonjs/src/loader/parsers/fetchdata.js.html index e2c15b614..c08c5b00a 100644 --- a/docs/docs/melonjs/src/loader/parsers/fetchdata.js.html +++ b/docs/docs/melonjs/src/loader/parsers/fetchdata.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 c666c79bf..c79e3fd8d 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 5a1ecccda..88b0a5bc0 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 0ff7d74c7..ff5408d73 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 fc0657475..a5a9f7df0 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 9d745c74f..d67c3d13a 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/parsers/video.js.html b/docs/docs/melonjs/src/loader/parsers/video.js.html index 657ee92c6..904bdf8e7 100644 --- a/docs/docs/melonjs/src/loader/parsers/video.js.html +++ b/docs/docs/melonjs/src/loader/parsers/video.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 1ae3249f2..a167360e4 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 1c3687ed5..63448d18e 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 e84ba00c9..f5a19b0ec 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 9defc9451..785801a0a 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 4e5682b82..9dd85bc6c 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 326d958e2..dc3555900 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 821c03c53..d281902d4 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 d826f33d6..8ab4cee19 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 295eb695c..cdab5088b 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 2e4e0ebce..bfbdec93b 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 0cbebef85..7514c4de7 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 113c62862..7afd92fbc 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 03bd45871..812c81d46 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 2bc8b7410..b347d9b32 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 c0a9f9b38..7676b0795 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 32a3f9102..5ce764687 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 40a4f7114..b1d783f43 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 1ca8c7af1..1f65c6da8 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 54a2984ab..63db87cee 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 4f970cd98..3081437d6 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 9648ac45b..8a80cfd0f 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 96638ce7c..ec963670f 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 05b8230ed..c12a60423 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 5b8248d58..c012ca3e4 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 afd2c01d9..cea8bddbd 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 6c3ba5ab6..4e2199320 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 8b946aad0..1d0e68536 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 f43ac777c..eb855c875 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 07708f726..4b4f6db38 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 0f5e2d1b8..abe8912b4 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 072f7032c..e777897fe 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 f71864713..912549e5c 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 ddbc094f6..e390c0569 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 4e18aa5bb..8509b22bf 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 a253079a1..d820dbe56 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 631642717..b502dd35a 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 40daf58d8..96aa168ef 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 615cab305..343216276 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 f9d7861f2..4cda9b16c 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 ef1cdced9..8fec89ccb 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 6ee3c0c24..ee19025c1 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 b74831f7f..35fb86ddc 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 e98a55b5b..8640fc41c 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 41c142513..7f1073180 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 1e40734f1..0e6180264 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 @@ - + diff --git a/docs/docs/melonjs/src/state/stage.js.html b/docs/docs/melonjs/src/state/stage.js.html index 4edd4d44c..68fe9a498 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 096f69bcb..d6257d5f3 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 df1e329a0..c2f920e2c 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 825b3ae61..1694a1b17 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 4d4809185..ac85a5e40 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 e2dcbc532..3fb944fe6 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 6f8dee930..b1631a6fe 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 4bc4109b9..602af26f4 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 61f42c716..8b42d9385 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 beabae589..58741a948 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 2fa442e37..ca54aca06 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 0ba256475..af62a3388 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 48fbdfd36..8cb442cf3 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 2cf1d3818..9eb218e92 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 2610986ae..613ee3702 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 a70799630..473be65b7 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 3264e9efd..53640a4e5 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 5695323d1..ec4308e3d 100644 --- a/docs/docs/melonjs/src/utils/utils.js.html +++ b/docs/docs/melonjs/src/utils/utils.js.html @@ -1,5 +1,5 @@ - + @@ -540,6 +540,50 @@ 117
                            • +
                            • + 118 +
                            • + +
                            • + 119 +
                            • + +
                            • + 120 +
                            • + +
                            • + 121 +
                            • + +
                            • + 122 +
                            • + +
                            • + 123 +
                            • + +
                            • + 124 +
                            • + +
                            • + 125 +
                            • + +
                            • + 126 +
                            • + +
                            • + 127 +
                            • + +
                            • + 128 +
                            • +
                            import { toHex } from "./string.js";
                             
                            @@ -576,6 +620,17 @@
                              * }
                              */
                             export function checkVersion(v1, v2) {
                            +    // Convert to proper "x.y.z" format if necessary
                            +    if (/^\d+$/.test(v1)) {
                            +        v1 += ".0.0";
                            +    } else if (/^\d+\.\d+$/.test(v1)) {
                            +        v1 += ".0";
                            +    }
                            +    if (/^\d+$/.test(v2)) {
                            +        v2 += ".0.0";
                            +    } else if (/^\d+\.\d+$/.test(v2)) {
                            +        v2 += ".0";
                            +    }
                                 return compare(v1, v2);
                             }
                             
                            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 2885ed38f..4c75b3d3d 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 71b63dcd4..23e504baa 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 bec202cdc..26f933578 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 156808dda..bfec37369 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 d0b0aad0c..1527c8d4c 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 f4ff3b3a8..058ea8a6c 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 8628afb05..7bc18d7c9 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 403143f86..a5c68f656 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 fc866bb9a..72673b9c5 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 68eb1b4f1..e4f87191c 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 74e683308..0473ca45a 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 8588491ef..f3c2f1cb9 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 3b860e4c5..042068f90 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 a82921167..390885eae 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 b69814592..46df4be14 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 edc227ddb..1f8528cc1 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 2c51f4f6d..85df6fce6 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 d65a830ad..747e0bc58 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 4c9877bb2..93a382aec 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 13d3a6fbc..c70e612b1 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 0def165fa..c6b4b5835 100644
                            --- a/docs/docs/melonjs/utils.html
                            +++ b/docs/docs/melonjs/utils.html
                            @@ -1,5 +1,5 @@
                             
                            -
                            +
                             
                             
                               
                            @@ -288,7 +288,7 @@ 

                            Public Methods

                            - utils.js:39 + utils.js:50 diff --git a/docs/docs/melonjs/utils/agent.html b/docs/docs/melonjs/utils/agent.html index 1faa807ac..551655223 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 ea3ce52c1..bcdccf20b 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 c4cc5bbc1..275f4e2f0 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 864681825..e19d44876 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 726259e20..1b4d7b71b 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 967c81ffe..f963ad781 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 a8197a363..c603bd999 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 b5784c73f..4880306de 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 0b8792eb9..bf7dcd92c 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 343acc58f..ea624bc86 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 9df84242d..b476be5ad 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 8ff192971..60f875978 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 5fabc2aae..6c1bbec46 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 70f0ef9d0..07ab56409 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 dad629159..176163cbd 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 06f980a88..44d19d477 100644 --- a/docs/docs/melonjs/utils/getUriFragment.html +++ b/docs/docs/melonjs/utils/getUriFragment.html @@ -1,5 +1,5 @@ - + @@ -344,7 +344,7 @@

                            Public Properties

                            - utils.js:39 + utils.js:50 @@ -393,7 +393,7 @@

                            Public Properties

                            - utils.js:39 + utils.js:50 @@ -442,7 +442,7 @@

                            Public Properties

                            - utils.js:39 + utils.js:50 @@ -491,7 +491,7 @@

                            Public Properties

                            - utils.js:39 + utils.js:50 @@ -540,7 +540,7 @@

                            Public Properties

                            - utils.js:39 + utils.js:50 @@ -589,7 +589,7 @@

                            Public Properties

                            - utils.js:39 + utils.js:50 diff --git a/docs/docs/melonjs/utils/string.html b/docs/docs/melonjs/utils/string.html index 8b1119566..f9351f81f 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 f15c3ac37..b21b51e6f 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 192acd343..fef5b7183 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 b1ffc8b52..62ce6ad95 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 01f3bf680..f417ba1d0 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 35be3f72a..e87f40aaf 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 095d28370..c1460d902 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 4b9da690e..634a1ab17 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 49bf30fb9..479c4c6d3 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 914567a72..073424daa 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 14553e51f..9436d5342 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 7d245a4c7..4b2947e24 100644 --- a/docs/docs/settings.html +++ b/docs/docs/settings.html @@ -1,5 +1,5 @@ - +