diff --git a/.editorconfig b/.editorconfig index 857d5df1..6d7a7c07 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1 +1 @@ -indent_style = tab \ No newline at end of file +indent_style = space \ No newline at end of file diff --git a/.eslintrc.json b/.eslintrc.json index a838d5b4..b1d6a3c6 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,39 +1,38 @@ { - "env": { - "browser": true, - "es2021": true - }, - "extends": [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "prettier" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "ecmaVersion": 12, - "sourceType": "module" - }, - "plugins": ["@typescript-eslint", "prettier"], - "rules": { - "indent": 0, - "linebreak-style": ["error", "unix"], - "quotes": ["error", "single"], - "semi": ["warn", "always"], - "eqeqeq": ["error", "always"], - "@typescript-eslint/no-namespace": 0, - "@typescript-eslint/explicit-module-boundary-types": 0, - "no-multiple-empty-lines": 1, - "prettier/prettier": ["warn"] - }, - "ignorePatterns": [ - "lib/", - "dist/", - "src/helper/", - "docs/", - "release", - "webpack.config.js", - "webpack.window.config.js", - "tests/**/*", - "webpack.es5.config.js" - ] + "env": { + "browser": true, + "es2021": true + }, + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/recommended", + "prettier" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaVersion": 12, + "sourceType": "module" + }, + "plugins": ["@typescript-eslint", "prettier"], + "rules": { + "linebreak-style": ["error", "unix"], + "eqeqeq": ["error", "always"], + "@typescript-eslint/no-namespace": 0, + "@typescript-eslint/explicit-module-boundary-types": 0, + "no-multiple-empty-lines": 1, + "prettier/prettier": ["warn"] + }, + "ignorePatterns": [ + "lib/", + "dist/", + "src/helper/", + "docs/", + "release", + "webpack.config.js", + "webpack.window.config.js", + "tests/**/*", + "webpack.es5.config.js", + "webpack.*", + "buildUtils/" + ] } diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 1105153d..e6f2d54a 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,13 +1,13 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '' -labels: 'bug' -assignees: '' - ---- - -**Describe the bug** - -A clear and concise description of what the bug is. - +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: 'bug' +assignees: '' + +--- + +**Describe the bug** + +A clear and concise description of what the bug is. + diff --git a/.github/ISSUE_TEMPLATE/feature.md b/.github/ISSUE_TEMPLATE/feature.md index 7170be3c..2d2fc75c 100644 --- a/.github/ISSUE_TEMPLATE/feature.md +++ b/.github/ISSUE_TEMPLATE/feature.md @@ -1,15 +1,15 @@ ---- -name: Feature -about: Create a feature idea -title: '' -labels: 'feature' -assignees: '' - ---- - -**Describe the Feature** - -A clear and concise description of what the feature is. - - - +--- +name: Feature +about: Create a feature idea +title: '' +labels: 'feature' +assignees: '' + +--- + +**Describe the Feature** + +A clear and concise description of what the feature is. + + + diff --git a/.github/ISSUE_TEMPLATE/release_track.md b/.github/ISSUE_TEMPLATE/release_track.md index f251b89d..c0552378 100644 --- a/.github/ISSUE_TEMPLATE/release_track.md +++ b/.github/ISSUE_TEMPLATE/release_track.md @@ -1,15 +1,15 @@ ---- -name: Release -about: Create a future release discussion -title: '' -labels: 'release' -assignees: '' - ---- - -**Describe the Release** - -A clear and concise description of what the release is. - - - +--- +name: Release +about: Create a future release discussion +title: '' +labels: 'release' +assignees: '' + +--- + +**Describe the Release** + +A clear and concise description of what the release is. + + + diff --git a/.github/ISSUE_TEMPLATE/vulnerability.md b/.github/ISSUE_TEMPLATE/vulnerability.md index ad74dd92..5b0cabac 100644 --- a/.github/ISSUE_TEMPLATE/vulnerability.md +++ b/.github/ISSUE_TEMPLATE/vulnerability.md @@ -1,14 +1,14 @@ ---- -name: Vulnerability -about: Quick way to report a vulnerability -title: '' -labels: 'Vulnerability' -assignees: '' - ---- - -How it was discovered: - -How to recreate: - -How to fix: +--- +name: Vulnerability +about: Quick way to report a vulnerability +title: '' +labels: 'Vulnerability' +assignees: '' + +--- + +How it was discovered: + +How to recreate: + +How to fix: diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 8abca405..f736fda1 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,11 +1,11 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates - -version: 2 -updates: - - package-ecosystem: "npm" # See documentation for possible values - directory: "/" # Location of package manifests - schedule: - interval: "daily" +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "npm" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "daily" diff --git a/.github/workflows/build-docs.yml b/.github/workflows/build-docs.yml index bc1678fd..f0b3d052 100644 --- a/.github/workflows/build-docs.yml +++ b/.github/workflows/build-docs.yml @@ -1,21 +1,21 @@ -name: Build Docs - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: '14.x' - - run: npx yarn install --frozen-lockfile +name: Build Docs + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: '14.x' + - run: npx yarn install --frozen-lockfile - run: npx yarn run build:docs \ No newline at end of file diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 25014b42..505e6f5c 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -1,68 +1,68 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -# -# ******** NOTE ******** -# We have attempted to detect the languages in your repository. Please check -# the `language` matrix defined below to confirm you have the correct set of -# supported CodeQL languages. -# -name: "CodeQL" - -on: - push: - paths: - - '**.ts' - pull_request: - paths: - - '**.ts' - schedule: - - cron: '24 8 * * 6' - -jobs: - analyze: - name: Analyze - runs-on: ubuntu-latest - - strategy: - fail-fast: false - matrix: - language: [ 'javascript' ] - # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] - # Learn more: - # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed - - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v1 - with: - languages: ${{ matrix.language }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - # queries: ./path/to/local/query, your-org/your-repo/queries@main - - # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). - # If this step fails, then you should remove it and run the build manually (see below) - - name: Autobuild - uses: github/codeql-action/autobuild@v1 - - # â„šī¸ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - - # âœī¸ If the Autobuild fails above, remove it and uncomment the following three lines - # and modify them (or add more) to build your code if your project - # uses a compiled language - - #- run: | - # make bootstrap - # make release - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 +# For most projects, this workflow file will not need changing; you simply need +# to commit it to your repository. +# +# You may wish to alter this file to override the set of languages analyzed, +# or to provide custom queries or build logic. +# +# ******** NOTE ******** +# We have attempted to detect the languages in your repository. Please check +# the `language` matrix defined below to confirm you have the correct set of +# supported CodeQL languages. +# +name: "CodeQL" + +on: + push: + paths: + - '**.ts' + pull_request: + paths: + - '**.ts' + schedule: + - cron: '24 8 * * 6' + +jobs: + analyze: + name: Analyze + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + language: [ 'javascript' ] + # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] + # Learn more: + # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v1 + with: + languages: ${{ matrix.language }} + # If you wish to specify custom queries, you can do so here or in a config file. + # By default, queries listed here will override any specified in a config file. + # Prefix the list here with "+" to use these queries and those in the config file. + # queries: ./path/to/local/query, your-org/your-repo/queries@main + + # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). + # If this step fails, then you should remove it and run the build manually (see below) + - name: Autobuild + uses: github/codeql-action/autobuild@v1 + + # â„šī¸ Command-line programs to run using the OS shell. + # 📚 https://git.io/JvXDl + + # âœī¸ If the Autobuild fails above, remove it and uncomment the following three lines + # and modify them (or add more) to build your code if your project + # uses a compiled language + + #- run: | + # make bootstrap + # make release + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v1 diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 607287a9..c3b411ef 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -1,21 +1,21 @@ -name: Format - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - format: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: '14.x' - - run: npx yarn install --frozen-lockfile +name: Format + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + format: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: '14.x' + - run: npx yarn install --frozen-lockfile - run: npx yarn run format \ No newline at end of file diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 8afbba5d..ef3676a3 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -1,25 +1,25 @@ -name: Lint - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - lint: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: '14.x' - - run: npx yarn install --frozen-lockfile - - run: echo "Linting" - - run: npx yarn run lint - - run: echo "Fixing" - - run: npx yarn run lint:fix +name: Lint + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + lint: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: '14.x' + - run: npx yarn install --frozen-lockfile + - run: echo "Linting" + - run: npx yarn run lint + - run: echo "Fixing" + - run: npx yarn run lint:fix - run: echo "Done" \ No newline at end of file diff --git a/.gitignore b/.gitignore index 6e9a4e4d..090c4fe1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ -dist -lib -node_modules -dev -private +dist +lib +node_modules +dev +private release \ No newline at end of file diff --git a/.npmignore b/.npmignore new file mode 100644 index 00000000..4789cf3a --- /dev/null +++ b/.npmignore @@ -0,0 +1,31 @@ +.github +.vscode +buildUtils +docs +examples +global +lib +node_modules +release +scripts +tests +wiki-pages +.editorconfig +.eslintrc.json +.gitignore +.npmignore +.prettierignore +.prettierrc +branch_guidelines.md +CHANGELOG.1.2.0.md +CHANGELOG.2.0.0.md +CHANGELOG.2.1.0.md +CHANGELOG.3.0.0.md +CHANGELOG.md +CODE_OF_CONDUCT.md +CONTRIBUTING.md +itch.io-description.md +SECURITY.md +tsconfig.json +webpack.config.js +yarn.lock \ No newline at end of file diff --git a/.prettierrc b/.prettierrc index f47b3cf8..9b5ec2b2 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,7 +1,8 @@ -{ - "useTabs": true, - "tabWidth": 4, - "trailingComma": "es5", - "singleQuote": true, - "semi": true -} \ No newline at end of file +{ + "useTabs": false, + "tabWidth": 2, + "trailingComma": "es5", + "singleQuote": true, + "semi": true, + "endOfLine": "lf" +} diff --git a/.vscode/extentions.json b/.vscode/extentions.json index a34b695d..bc13d745 100644 --- a/.vscode/extentions.json +++ b/.vscode/extentions.json @@ -1,8 +1,8 @@ -{ - "recommendations": [ - "esbenp.prettier-vscode", - "coenraads.bracket-pair-colorizer-2", - "dbaeumer.vscode-eslint", - "aaron-bond.better-comments" - ] -} +{ + "recommendations": [ + "esbenp.prettier-vscode", + "coenraads.bracket-pair-colorizer-2", + "dbaeumer.vscode-eslint", + "aaron-bond.better-comments" + ] +} diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 1e70192b..56c95c5f 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -1,24 +1,24 @@ -{ - "version": "2.0.0", - "tasks": [ - { - "type": "npm", - "script": "build", - "group": { - "kind": "build", - "isDefault": true - }, - "problemMatcher": [], - "label": "npm: build", - "detail": "sh scripts/build.sh" - }, - { - "type": "npm", - "script": "build:docs", - "group": "build", - "problemMatcher": [], - "label": "npm: build:docs", - "detail": "typedoc src/ --out docs/ --exclude \"src/helper/*.ts\" --exclude \"src/helper/**/*.ts\" --exclude \"src/utils/*.ts\" --exclude \"src/base/*.ts\" --name \"DuckEngine\" --includeVersion --theme ./node_modules/typedoc-neo-theme/bin/default" - } - ] -} +{ + "version": "2.0.0", + "tasks": [ + { + "type": "npm", + "script": "build", + "group": { + "kind": "build", + "isDefault": true + }, + "problemMatcher": [], + "label": "npm: build", + "detail": "sh scripts/build.sh" + }, + { + "type": "npm", + "script": "build:docs", + "group": "build", + "problemMatcher": [], + "label": "npm: build:docs", + "detail": "typedoc src/ --out docs/ --exclude \"src/helper/*.ts\" --exclude \"src/helper/**/*.ts\" --exclude \"src/utils/*.ts\" --exclude \"src/base/*.ts\" --name \"DuckEngine\" --includeVersion --theme ./node_modules/typedoc-neo-theme/bin/default" + } + ] +} diff --git a/CHANGELOG.1.2.0.md b/CHANGELOG.1.2.0.md index 1da09f95..34b47378 100644 --- a/CHANGELOG.1.2.0.md +++ b/CHANGELOG.1.2.0.md @@ -1,22 +1,22 @@ -# v1.2.0 Changelog - 2021-6-27 - -## Added - -- Map - - Added a Map class that is to be extended for code reusability -- Particles - - Added ParticleContainer class -- Effects - - Added new Effect class - - Added Explosion and Smoke preset effect -- Scene - - Added effect to add method - - Added presetEffect object to add method - -## Changed - -- TileMap - - TileMap class now extends the new Map class -- Misc - - Updated dependencies - - Changed version +# v1.2.0 Changelog - 2021-6-27 + +## Added + +- Map + - Added a Map class that is to be extended for code reusability +- Particles + - Added ParticleContainer class +- Effects + - Added new Effect class + - Added Explosion and Smoke preset effect +- Scene + - Added effect to add method + - Added presetEffect object to add method + +## Changed + +- TileMap + - TileMap class now extends the new Map class +- Misc + - Updated dependencies + - Changed version diff --git a/CHANGELOG.2.0.0.md b/CHANGELOG.2.0.0.md index d1e25f9b..7cc479a6 100644 --- a/CHANGELOG.2.0.0.md +++ b/CHANGELOG.2.0.0.md @@ -1,218 +1,218 @@ -# v2.0.0 Changelog - 2021-11-20 - -## Added - -- GameObjects - - Added zIndex and visible properties - - Added new misc gameobject CanvasModulate - - Added internalRaycasts for checking if it is colliding with an object - - Added isColliding, isOnFloor, isOnCeiling, and isOnWall methods - - Added texture prop - - Added type generic to GameObject for Texture class - - Added attachTo, attachChild, detachFrom, detachChild methods - - Added isAttached and attachedChildren properties - - Rect, RoundRect, Circle, StaticLight, CanvasModulate - - Added texture colors support - - Sprite - - Added textureKey parameter which is the key of a preloaded texture loaded with scene.loader - - Added anims property which is an AnimationManager - - Added defaultAnimation property which is a default animation that is created on init - - Added all properties from SpriteSheet to Sprite as SpriteSheet class has been removed and replaced with Sprite class - - Particle - - Added texture color and image support - - Now extends PhysicsObject which adds a lot more methods and properties (check [docs](https://ksplatdev.github.io/DuckEngine/)) -- Map - - Added id, zIndex, and visible properties -- Core - - Added id, zIndex, and visible properties to all renderable objects - - Added better rendering with depth sorting and only rendering and updating objects that are set to be visible - - Added ability to preload assets - - Added events and EventEmitter -- New Classes - - Models - - Added DisplayList class to manage renderable objects - - Added Texture to save and load images and colors - - Physics Misc - - Added Area class to detect intersections with other PhysicsBody hitboxes - - Misc - - Added PluginManager Class - - Math - - Added Vector2 class to manage coordinates and more - - Input - - KeyboardInput - - MouseInput - - Models - - Key - - Mouse - - GameObjects - - Misc - - Added CanvasModulate with zIndex of 1 which fills up the entire canvas with a color -- Game - - Config - - Added physics object option - - Added roundPixels option - - Added pauseRenderingOnBlur - - Added onPauseRendering - - Added onResumeRendering - - Added splashScreen object option - - Added eventEmitter property - - Added pluginManager property - - Added isRendering property - - Added fps property which is the current fps - - Added smoothDeltaTime property which is the smoothed out version of deltaTime - - Added browser property which is the user's browser - - Added "start sequence" to start method - - Start Sequence: - - Show splash screen - - Preload all assets from all scenes - - Create all assets from all scenes -- Scene - - Added preload and create method - - Added displayList property - - Added loader property - - Added misc.canvasModulate to add property - - Tools - - Added math property - - Added createVector function to tools.math - - Added vector property to tools.math which is a reference to the Vector2 class - - Add - - Added misc to gameobjects property -- Physics - - Added PhysicsServer class - - Added PhysicsBody class - - Added Hitbox class - - Collider - - Added support for group class as a collidesWith -- Input - - Added createKeyboardInput method to create a KeyBoardInput -- Loader - - Added constructor with scene parameter - - Added loadJSON, loadHTML, loadXML, loadFont, and loadAudio async methods - - Added imageStack, jsonStack, htmlStack, xmlStack, fontStack, and audioStack public properties -- Camera - - Added lerpX and lerpY to startFollow method - - Added cull method to only render certain objects - - Added autoCull method to only render in view objects, aka Frustum Culling -- Effect - - Added id, zIndex, and visible properties -- Math - - Added lerp function - - Added Vector2 class -- Misc - - Added renderableObject type to Duck.Types - - Added jsdoc comments - - Added Duck.TypeClasses which holds all of the classes as types - - Added Duck.Classes which holds all of the classes as constants - - Added Duck.Types which holds all of the types needed by classes - - Added Duck.Types.Math which holds all math related types such as Vector2Like, BoundsLike, and Vector2LikeOptional - - Added Loader and Texture namespaces to Duck.Types - - Added Duck.Layers - -## Changed - -- GameObjects - - Extends PhysicsBody class - - Moved most methods and properties to PhysicsBody - - Renamed draw method to _draw which is a public method, but should *not* be called manually - - Collider should not be updated manually, automatically updated in scene.physicsServer - - Changed how delta time is applied to velocity - - Changed velocity value to be in pixels per second - - SpriteSheet class has been removed and replaced with Sprite class - - Removed applyFilter from Sprite - - Changed how IDs are generated -- Core - - Game loop now uses displayList to render all visible renderable objects - - Reworked how assets are loaded and created - - All private properties and methods in all classes are either public or protected - - All PhysicsBodies now use Game.smoothDeltaTime instead of Game.deltaTime -- Game - - Improved AutoCanvas - - Typescript: canvas and ctx properties are never undefined - - Moved scene.currentCamera.begin and end to if visible condition - - Changed start method to be async - - Changed how delta time is calculated -- Scene - - Tools - - Moved randomInt and randomFloat to math - - Renamed this.add.sound to this.add.soundPlayer -- Physics - - Collider - - Colliders now use hitboxes instead of GameObjects - - Changed collider.shape to collider.object - - Changed collider.update diffCollidesWith parameter to be required and renamed to updatedCollidesWith - - Changed collider.update to collider.__update which shouldn't be called manually as it is called by PhysicsServer - - Changed collider.shape to collider.hitbox - - Reworked how colliders work -- StaticLight - - Made class extend GameObject class -- ParticleEmitter - - Renamed offload to offloadBounds which takes a Vector2LikeOptional -- Interactive - - Button and Text now extend the GameObject class - - Button default zIndex is set to 4 - - Text default zIndex is set to 5 - - Text width and height properties are correctly set using context.measureText - - Buttons now can be interacted with even with an active camera - - Button.scene is now a public property -- Input - - Changed how Input works, now works as a base class where you can create different inputs from - - Now uses Events and EventEmitter to work out of a loop -- Camera - - Made viewport property public - - Renamed follow method to startFollow -- Map - - Changed all private properties to be public -- Sound - - Renamed Sound class to SoundPlayer -- Loader - - Changed static method load to non-static loadTexture method -- Misc - - Changed all classes that included the game property to be a public property - - File Structure - - Moved particles and interactive folders to gameobjects folder - - Modified start message - - Changed project from npm to yarn - - Changed build script - - Updated README.md - - Updated security policy - - Updated dev dependencies - -## Removed - -- GameObjects - - Removed props x and y and changed to position which is a Vector2 - - Removed props vx and vy and changed to velocity which is a Vector2 - - Removed fillColor prop (now is called texture) - - Removed most methods and properties from GameObject as it now extends PhysicsBody which as all removed methods and properties and more -- Particle - - Removed props floatVX and floatVY and changed to floatVelocity Vector2 -- Scene - - Removed render method - - Removed adding itself to game scene stack as that produced duplicate scenes -- Math - - Removed Duck.Types.Helper.alphaValue return type from randomFloat -- StaticLight - - Removed x and y props, now is position vector2 -- Interactive - - Removed x and y props, now is position vector2 -- ParticleEmitter - - Removed draw method - - Removed offload method as it has been renamed and changed to offloadBounds -- Input - - Removed all methods and properties excluding game property -- Camera - - Removed scrollToZoom method -- Removed Classes - - ParticleContainer - - SpriteSheet (Moved its functionality to Sprite) - - DuckStorage - -## Fixed - -- Fixed "bouncy" and "laggy" rect to round-rect collision response [#16](https://github.com/ksplatdev/DuckEngine/issues/16) -- Fixed Button unable to be interacted with if there is an active camera -- Fixed scene adding itself to game scene stack as that produced duplicate scenes - -## Bugs - -## [Security Policy](SECURITY.md) +# v2.0.0 Changelog - 2021-11-20 + +## Added + +- GameObjects + - Added zIndex and visible properties + - Added new misc gameobject CanvasModulate + - Added internalRaycasts for checking if it is colliding with an object + - Added isColliding, isOnFloor, isOnCeiling, and isOnWall methods + - Added texture prop + - Added type generic to GameObject for Texture class + - Added attachTo, attachChild, detachFrom, detachChild methods + - Added isAttached and attachedChildren properties + - Rect, RoundRect, Circle, StaticLight, CanvasModulate + - Added texture colors support + - Sprite + - Added textureKey parameter which is the key of a preloaded texture loaded with scene.loader + - Added anims property which is an AnimationManager + - Added defaultAnimation property which is a default animation that is created on init + - Added all properties from SpriteSheet to Sprite as SpriteSheet class has been removed and replaced with Sprite class + - Particle + - Added texture color and image support + - Now extends PhysicsObject which adds a lot more methods and properties (check [docs](https://ksplatdev.github.io/DuckEngine/)) +- Map + - Added id, zIndex, and visible properties +- Core + - Added id, zIndex, and visible properties to all renderable objects + - Added better rendering with depth sorting and only rendering and updating objects that are set to be visible + - Added ability to preload assets + - Added events and EventEmitter +- New Classes + - Models + - Added DisplayList class to manage renderable objects + - Added Texture to save and load images and colors + - Physics Misc + - Added Area class to detect intersections with other PhysicsBody hitboxes + - Misc + - Added PluginManager Class + - Math + - Added Vector2 class to manage coordinates and more + - Input + - KeyboardInput + - MouseInput + - Models + - Key + - Mouse + - GameObjects + - Misc + - Added CanvasModulate with zIndex of 1 which fills up the entire canvas with a color +- Game + - Config + - Added physics object option + - Added roundPixels option + - Added pauseRenderingOnBlur + - Added onPauseRendering + - Added onResumeRendering + - Added splashScreen object option + - Added eventEmitter property + - Added pluginManager property + - Added isRendering property + - Added fps property which is the current fps + - Added smoothDeltaTime property which is the smoothed out version of deltaTime + - Added browser property which is the user's browser + - Added "start sequence" to start method + - Start Sequence: + - Show splash screen + - Preload all assets from all scenes + - Create all assets from all scenes +- Scene + - Added preload and create method + - Added displayList property + - Added loader property + - Added misc.canvasModulate to add property + - Tools + - Added math property + - Added createVector function to tools.math + - Added vector property to tools.math which is a reference to the Vector2 class + - Add + - Added misc to gameobjects property +- Physics + - Added PhysicsServer class + - Added PhysicsBody class + - Added Hitbox class + - Collider + - Added support for group class as a collidesWith +- Input + - Added createKeyboardInput method to create a KeyBoardInput +- Loader + - Added constructor with scene parameter + - Added loadJSON, loadHTML, loadXML, loadFont, and loadAudio async methods + - Added imageStack, jsonStack, htmlStack, xmlStack, fontStack, and audioStack public properties +- Camera + - Added lerpX and lerpY to startFollow method + - Added cull method to only render certain objects + - Added autoCull method to only render in view objects, aka Frustum Culling +- Effect + - Added id, zIndex, and visible properties +- Math + - Added lerp function + - Added Vector2 class +- Misc + - Added renderableObject type to Duck.Types + - Added jsdoc comments + - Added Duck.TypeClasses which holds all of the classes as types + - Added Duck.Classes which holds all of the classes as constants + - Added Duck.Types which holds all of the types needed by classes + - Added Duck.Types.Math which holds all math related types such as Vector2Like, BoundsLike, and Vector2LikeOptional + - Added Loader and Texture namespaces to Duck.Types + - Added Duck.Layers + +## Changed + +- GameObjects + - Extends PhysicsBody class + - Moved most methods and properties to PhysicsBody + - Renamed draw method to _draw which is a public method, but should *not* be called manually + - Collider should not be updated manually, automatically updated in scene.physicsServer + - Changed how delta time is applied to velocity + - Changed velocity value to be in pixels per second + - SpriteSheet class has been removed and replaced with Sprite class + - Removed applyFilter from Sprite + - Changed how IDs are generated +- Core + - Game loop now uses displayList to render all visible renderable objects + - Reworked how assets are loaded and created + - All private properties and methods in all classes are either public or protected + - All PhysicsBodies now use Game.smoothDeltaTime instead of Game.deltaTime +- Game + - Improved AutoCanvas + - Typescript: canvas and ctx properties are never undefined + - Moved scene.currentCamera.begin and end to if visible condition + - Changed start method to be async + - Changed how delta time is calculated +- Scene + - Tools + - Moved randomInt and randomFloat to math + - Renamed this.add.sound to this.add.soundPlayer +- Physics + - Collider + - Colliders now use hitboxes instead of GameObjects + - Changed collider.shape to collider.object + - Changed collider.update diffCollidesWith parameter to be required and renamed to updatedCollidesWith + - Changed collider.update to collider.__update which shouldn't be called manually as it is called by PhysicsServer + - Changed collider.shape to collider.hitbox + - Reworked how colliders work +- StaticLight + - Made class extend GameObject class +- ParticleEmitter + - Renamed offload to offloadBounds which takes a Vector2LikeOptional +- Interactive + - Button and Text now extend the GameObject class + - Button default zIndex is set to 4 + - Text default zIndex is set to 5 + - Text width and height properties are correctly set using context.measureText + - Buttons now can be interacted with even with an active camera + - Button.scene is now a public property +- Input + - Changed how Input works, now works as a base class where you can create different inputs from + - Now uses Events and EventEmitter to work out of a loop +- Camera + - Made viewport property public + - Renamed follow method to startFollow +- Map + - Changed all private properties to be public +- Sound + - Renamed Sound class to SoundPlayer +- Loader + - Changed static method load to non-static loadTexture method +- Misc + - Changed all classes that included the game property to be a public property + - File Structure + - Moved particles and interactive folders to gameobjects folder + - Modified start message + - Changed project from npm to yarn + - Changed build script + - Updated README.md + - Updated security policy + - Updated dev dependencies + +## Removed + +- GameObjects + - Removed props x and y and changed to position which is a Vector2 + - Removed props vx and vy and changed to velocity which is a Vector2 + - Removed fillColor prop (now is called texture) + - Removed most methods and properties from GameObject as it now extends PhysicsBody which as all removed methods and properties and more +- Particle + - Removed props floatVX and floatVY and changed to floatVelocity Vector2 +- Scene + - Removed render method + - Removed adding itself to game scene stack as that produced duplicate scenes +- Math + - Removed Duck.Types.Helper.alphaValue return type from randomFloat +- StaticLight + - Removed x and y props, now is position vector2 +- Interactive + - Removed x and y props, now is position vector2 +- ParticleEmitter + - Removed draw method + - Removed offload method as it has been renamed and changed to offloadBounds +- Input + - Removed all methods and properties excluding game property +- Camera + - Removed scrollToZoom method +- Removed Classes + - ParticleContainer + - SpriteSheet (Moved its functionality to Sprite) + - DuckStorage + +## Fixed + +- Fixed "bouncy" and "laggy" rect to round-rect collision response [#16](https://github.com/ksplatdev/DuckEngine/issues/16) +- Fixed Button unable to be interacted with if there is an active camera +- Fixed scene adding itself to game scene stack as that produced duplicate scenes + +## Bugs + +## [Security Policy](SECURITY.md) diff --git a/CHANGELOG.2.1.0.md b/CHANGELOG.2.1.0.md index 2d340a59..bb42392d 100644 --- a/CHANGELOG.2.1.0.md +++ b/CHANGELOG.2.1.0.md @@ -1,143 +1,143 @@ -# v2.1.0 Changelog - 2021-11-23 - -This update increases performance and decreases memory usage and GC calls by creating a new CanvasRenderer and RendererPipeline. - -This update starts the overhaul of the UI *(previously Interactive)* system with new features and fixes. - -This update adds new features to textures by using cache and more new texture classes. - -*Most changes and additions are included in this changelog, however, some ***may*** be missing.* -*(Found something missing? [Contribute!](README.md#developers-guide))* - ------------------------------------------------------------------------------------------------------- - -## Added - -- SoundPlayer - - Added loop to config - - Added loop and stop method -- Core - - Renderer - - Added new CanvasRenderer and RendererPipeline - - Made Game loop more efficient by looping only through visible scenes and already pooled visible renderables use RendererPipeline - - This makes GC calls less often - - DisplayManager - - Added new class DisplayManages, Manages the scale of the canvas -- Game - - Added condition where deltaTimeArray must have more than 99 items before rendering to prevent delta time speed up on game start - - Events - - Added SYNC_CACHE event -- Scene - - Added onSceneActive and onSceneInactive methods that are called when visible is set to true and false - - Added createTimer method that returns a new Timer instance - - Added setVisible method to set the visibility of the scene and it immediately updates it by pooling the RendererPipeline -- GameObject - - Added setVisible method to set the visibility of the scene and it immediately updates it by pooling the RendererPipeline -- Events - - Added Renderer Events - - Added Display Events -- ParticleEmitter - - Added autoCreate option to constructor -- Textures - - Added new TextureBase class - - Added new TextureSheet class to store info about spritesheets - - Added new TextureAtlas class which creates and loads Texture classes into Scene.loader.textureStack (previously called imageStack) that are clipped from the main texture -- Loader - - Added CacheManager support for faster loading - - Added loadTextureSheet method to create and load a spritesheet - - Added loadTextureAtlas method which loads and creates a TextureAtlas class -- CacheManager - - Added support for fallback to memory-cache for all methods that use localStorage, does not interfer with syncValues -- UI - - Added new UI class -- Camera - - Added optional options (Duck.Types.Camera.CullingOptions) to cull and autoCull methods -- Group - - Added physics filter can now also filter hitboxes and PhysicsBodies - - Added method at to return an item or undefined at a specified index -- Keyboard Input & Key - - Added state argument to keyState callback -- Types - - Added new Renderable type (replaces old renderable type) - - Added new prop culled -- Misc - - Added wiki-pages folder - - Added new layer "fades" to Duck.Layers.Rendering.zIndex - - Added new wiki page, [Getting Started](https://github.com/ksplatdev/DuckEngine/wiki/Getting-Started) - - Added checkout script for developers - -## Changed - -- ParticleEmitter - - Made create and createOne methods public -- Core - - Changed how rendering is handled (new CanvasRenderer and RendererPipeline) - - All renderables now implement the new Renderable interface - - Renderables only render if both the visible and culled properties are true -- Game - - Loading always has a delay for pooling of RendererPipeline: (config.splashScreen.extraDuration || 0) + (config.poolingInterval || 1000) - - oldWidth and oldHeight properties are now public instead of protected - - New DisplayManager now handles scaling - - Changed config.scale to be Duck.Types.Math.Vector2Like instead of Duck.Types.Misc.Scale -- StaticLight - - Blend mode is now lighten instead of lighter -- Gameobjects/interactive is now Gameobjects/ui in the file structure and type classes and classes -- UI - - All previous uis *(previously called Interactive)* now extend the new UI class -- File Structure - - Move src/core/models/texture.ts to src/core/texture -- Camera - - Changed how renderable's visible and enabled properties are effected by cull and autoCull methods - - Ex: If a renderable's visible property is false, it will stay false even though it's culled property is true - - Renderables only render if both the visible and culled properties are true - - Made fieldOfView and distance (zoom) properties public -- Loader - - Changed imageStack property to textureStack, an array of StackItem with TextureBase classes -- Group - - Change group filter interactive to ui - - Changed type generic to any making groups allow a group of anything -- Helpers - - Colors - - getValuesRGB now returns numbers instead of strings - -## Removed - -- Game - - Removed ctx property which is now replaced by Game.renderer.ctx - - Removed fullscreen and unfullscreen methods, replaced by Game.displayManager.fullscreen and unfullscreen - - Removed scaleToWindow and resetScale methods, replaced by Game.displayManager.scaleToWindow and resetScale - - Events - - Removed fullscreen and unfullscreen events, replaces by DisplayEvents -- Types - - Removed **type** Duck.Types.Renderable which has been replaced with Duck.Types.Renderable **interface** that is now implemented into classes - -## Deprecated - -- Render - - Deprecated onChange method - -## Fixed - -- SoundPlayer - - Fixed all types in config to true types -- Game.scaleToWindow always debugs without config setting -- Fixed effects showing the particles before emitting -- Fixed ParticleEmitter particles showing before emitting -- Fixed EventEmitter not applying args correctly to callbacks -- Fixed PhysicsServer also applying gravity which was incorrect -- Fixed ParticleEmitter.setRange not updated existing particle positions based on new ranges -- Fixed Effect following not setting the ranges correctly -- Fixed JSDoc Comments "@returns" -- Fixed group filter method not correctly filtering -- Fixed camera cull and autoCull not preserving the renderable's falsy visibility if set (new feature) -- Fixed delta time speed up on game start for the first second by adding a condition to check if the array is populated before rendering - -## FaQ - -Q: Any major changes in version 2.1.0? -> To find all major core changes and additions, look into [Added](#added) and [Changed](#changed) -> Core sub-lists - -Q: What is a Texture Atlas? -> A TextureAtlas is a new class added in 2.1.0. This class parses a passed JSON file and creates and clips images from the passed texture into -> Texture classes which are then pushed onto the Scene.loader.textureStack array for later use. This helps load multiple textures from one image. -> [Wiki Article](https://en.wikipedia.org/wiki/Texture_atlas) +# v2.1.0 Changelog - 2021-11-23 + +This update increases performance and decreases memory usage and GC calls by creating a new CanvasRenderer and RendererPipeline. + +This update starts the overhaul of the UI *(previously Interactive)* system with new features and fixes. + +This update adds new features to textures by using cache and more new texture classes. + +*Most changes and additions are included in this changelog, however, some ***may*** be missing.* +*(Found something missing? [Contribute!](README.md#developers-guide))* + +------------------------------------------------------------------------------------------------------ + +## Added + +- SoundPlayer + - Added loop to config + - Added loop and stop method +- Core + - Renderer + - Added new CanvasRenderer and RendererPipeline + - Made Game loop more efficient by looping only through visible scenes and already pooled visible renderables use RendererPipeline + - This makes GC calls less often + - DisplayManager + - Added new class DisplayManages, Manages the scale of the canvas +- Game + - Added condition where deltaTimeArray must have more than 99 items before rendering to prevent delta time speed up on game start + - Events + - Added SYNC_CACHE event +- Scene + - Added onSceneActive and onSceneInactive methods that are called when visible is set to true and false + - Added createTimer method that returns a new Timer instance + - Added setVisible method to set the visibility of the scene and it immediately updates it by pooling the RendererPipeline +- GameObject + - Added setVisible method to set the visibility of the scene and it immediately updates it by pooling the RendererPipeline +- Events + - Added Renderer Events + - Added Display Events +- ParticleEmitter + - Added autoCreate option to constructor +- Textures + - Added new TextureBase class + - Added new TextureSheet class to store info about spritesheets + - Added new TextureAtlas class which creates and loads Texture classes into Scene.loader.textureStack (previously called imageStack) that are clipped from the main texture +- Loader + - Added CacheManager support for faster loading + - Added loadTextureSheet method to create and load a spritesheet + - Added loadTextureAtlas method which loads and creates a TextureAtlas class +- CacheManager + - Added support for fallback to memory-cache for all methods that use localStorage, does not interfer with syncValues +- UI + - Added new UI class +- Camera + - Added optional options (Duck.Types.Camera.CullingOptions) to cull and autoCull methods +- Group + - Added physics filter can now also filter hitboxes and PhysicsBodies + - Added method at to return an item or undefined at a specified index +- Keyboard Input & Key + - Added state argument to keyState callback +- Types + - Added new Renderable type (replaces old renderable type) + - Added new prop culled +- Misc + - Added wiki-pages folder + - Added new layer "fades" to Duck.Layers.Rendering.zIndex + - Added new wiki page, [Getting Started](https://github.com/ksplatdev/DuckEngine/wiki/Getting-Started) + - Added checkout script for developers + +## Changed + +- ParticleEmitter + - Made create and createOne methods public +- Core + - Changed how rendering is handled (new CanvasRenderer and RendererPipeline) + - All renderables now implement the new Renderable interface + - Renderables only render if both the visible and culled properties are true +- Game + - Loading always has a delay for pooling of RendererPipeline: (config.splashScreen.extraDuration || 0) + (config.poolingInterval || 1000) + - oldWidth and oldHeight properties are now public instead of protected + - New DisplayManager now handles scaling + - Changed config.scale to be Duck.Types.Math.Vector2Like instead of Duck.Types.Misc.Scale +- StaticLight + - Blend mode is now lighten instead of lighter +- Gameobjects/interactive is now Gameobjects/ui in the file structure and type classes and classes +- UI + - All previous uis *(previously called Interactive)* now extend the new UI class +- File Structure + - Move src/core/models/texture.ts to src/core/texture +- Camera + - Changed how renderable's visible and enabled properties are effected by cull and autoCull methods + - Ex: If a renderable's visible property is false, it will stay false even though it's culled property is true + - Renderables only render if both the visible and culled properties are true + - Made fieldOfView and distance (zoom) properties public +- Loader + - Changed imageStack property to textureStack, an array of StackItem with TextureBase classes +- Group + - Change group filter interactive to ui + - Changed type generic to any making groups allow a group of anything +- Helpers + - Colors + - getValuesRGB now returns numbers instead of strings + +## Removed + +- Game + - Removed ctx property which is now replaced by Game.renderer.ctx + - Removed fullscreen and unfullscreen methods, replaced by Game.displayManager.fullscreen and unfullscreen + - Removed scaleToWindow and resetScale methods, replaced by Game.displayManager.scaleToWindow and resetScale + - Events + - Removed fullscreen and unfullscreen events, replaces by DisplayEvents +- Types + - Removed **type** Duck.Types.Renderable which has been replaced with Duck.Types.Renderable **interface** that is now implemented into classes + +## Deprecated + +- Render + - Deprecated onChange method + +## Fixed + +- SoundPlayer + - Fixed all types in config to true types +- Game.scaleToWindow always debugs without config setting +- Fixed effects showing the particles before emitting +- Fixed ParticleEmitter particles showing before emitting +- Fixed EventEmitter not applying args correctly to callbacks +- Fixed PhysicsServer also applying gravity which was incorrect +- Fixed ParticleEmitter.setRange not updated existing particle positions based on new ranges +- Fixed Effect following not setting the ranges correctly +- Fixed JSDoc Comments "@returns" +- Fixed group filter method not correctly filtering +- Fixed camera cull and autoCull not preserving the renderable's falsy visibility if set (new feature) +- Fixed delta time speed up on game start for the first second by adding a condition to check if the array is populated before rendering + +## FaQ + +Q: Any major changes in version 2.1.0? +> To find all major core changes and additions, look into [Added](#added) and [Changed](#changed) -> Core sub-lists + +Q: What is a Texture Atlas? +> A TextureAtlas is a new class added in 2.1.0. This class parses a passed JSON file and creates and clips images from the passed texture into +> Texture classes which are then pushed onto the Scene.loader.textureStack array for later use. This helps load multiple textures from one image. +> [Wiki Article](https://en.wikipedia.org/wiki/Texture_atlas) diff --git a/CHANGELOG.3.0.0.md b/CHANGELOG.3.0.0.md new file mode 100644 index 00000000..50361110 --- /dev/null +++ b/CHANGELOG.3.0.0.md @@ -0,0 +1,132 @@ +# 3.0.0 Changelog - 2022-06-28 -> 2022-12-11 + +This update improves and adds flexibility to rendering. + +This update overhauls the sound system by adding support for WebAudio and fallback to HTMLAudio. + +This update improves the animation system by adding Tweens and more. + +This update overhauls the input system by adding support for Gamepads and Touch support. As well as the new InputServer and pooling. + +This updates improves tilemaps by adding support and parsing of Tiled maps. As well as camera culling & autoCulling and collisions. + +------------------------------------------------------------------------------------------------------ + +## Added + +- Rendering + - Added Color class to store and manage color info and strokes +- Sound + - Added Sound class which stores DuckEngine WebAudio or HTMLAudio sound player classes to play audio + - Added abstract BaseSoundPlayer class + - Added WebSoundPlayer class for use of WebAudio API to play audio + - Added HTMLSoundPlayer class for use of HTMLAudio to play audio (replace old SoundPlayer) + - Added new SoundSprite class for the use and making of sound sprites +- Scene + - Add + - Added color method to Scene.add + - Added sound method to Scene.add to add the new Sound class + - Tools + - Added staticColor property which refers to new Color class + - Added arguments to Scene.tools.color.random(), stroke and strokeWidth may now be passed +- Camera + - Added method shakeDir to shake camera in a passed Vector2 direction +- Particle System + - Added new abstract ParticleComponent class for different modifiers to Particles emitted by a ParticleEmitter + - Added preset ParticleComponent classes + - Added GravityParticleComponent which applies gravity to Particles emitted by a ParticleEmitter +- Game + - Added new static property versionInfo that includes the version and date of build +- Loader + - Added loadAudioBuffer to load AudioBuffer for new WebSoundPlayer class and for use of WebAudio API + - Added audioBufferStack to store loaded AudioBuffer +- Input + - Added new InputServer class which controls pooling of controllers & touch inputs + +## Changed + +- Core + - Loop + - Made Scene.update get called before the PhysicsServer.tick + - Current Loop Steps: + - Clear Frame + - Active Camera Start + - Scene.update + - Scene.__tick + - Scene.physicsServer.__tick + - Renderables are drawn + - Active Camera End + - CanvasRenderer & RendererPipeline + - Does not take poolingInterval argument anymore +- Misc + - Changed startup message and version + - Changed version util to versionInfo which is now an object with the version and build +- Rendering + - Replaced all use of strings for colors with new Color class +- Scene + - Tools + - color.random now returns a Color instance and not a string + - color.random stroke arg can now be a boolean to also generate a random color stroke + - Properties onSceneActive and onSceneInactive renamed to onActive and onInactive +- Coding Style + - Use of two spaces for indentions +- Sound + - HTMLSoundPlayer (old SoundPlayer class) + - Changed name to HTMLSoundPlayer (new and improved HTML audio player, look at Added/Sound) + - Changed playSprite method to be renamed to playSoundSprite + - Changed sprites property to be renamed to soundSprites which is now an array of new SoundSprite class +- PluginManager + - PluginManager.call can now take overrideArgs to override passed arguments with the ones passed in PluginManager.call +- Game + - DisplayManager + - Fixed smartScale not being called on camera load and switch when needed +- Camera + - Changed lookAt property to a new public property position which is now a Vector2 + - Changed viewport.scale to a Vector2 + - Renamed distance to zoom + - Refactored some Camera code +- Types + - Sound + - Renamed interface Config to SoundConfig + - Renamed interface Sprite to SpriteStruct + - SoundConfig + - Renamed sprites option to spriteStruct + +## Removed + +- Sound + - Removed SoundPlayer class which is replace by HTMLSoundPlayer class which is accessed through new Sound.soundPlayer class if using HTMLAudio +- Scene + - Add + - Removed soundPlayer from Scene.add which is replaced by new Sound class +- Scene/Render + - Removed onChange method as it was deprecated in v2.1.0, replaced by properties Scene.onActive and Scene.onInactive (old names .onSceneActive and onSceneInactive) +- Camera + - Removed lerpX and lerpY properties which is now replaced by a public lerpAmount property of type Vector2 +- Duck + - Types + - Helper + - Removed useless AlphaValue type and replace all occurrences with number + +## Deprecated + +## Fixed + +- Game + - switchScene + - Fixed scenes not switching instantly as it would set the Scene.visible prop instead of calling Scene.setVisible to skip the poolingInterval + - renderer + - pipeline + - Fixed RendererPipeline ignoring Game.config.poolingInterval +- Scene + - Tools + - Fixed chance of color.random returning invalid color + - __tick + - Fixed Scene.__tick not checking if Game.config.physics.enabled is true before running +- Camera + - Fixed autoCull checking if renderable is only instance of a certain GameObject leaving out custom GameObject and more + - Now filters by shape to check for autoCulling +- CanvasRenderer + - Fixed setStrokeStyle not properly setting stroke color + +## FaQ diff --git a/CHANGELOG.md b/CHANGELOG.md index d4c89ee2..fe89ce2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,25 +1,11 @@ -# DuckEngine Changelog - -Only [supported versions](SECURITY.md#Supported\Versions)' changelogs will be added. - -## Major and Minor Versions - -### [2.1.0](CHANGELOG.2.1.0.md) - -### [2.0.0](CHANGELOG.2.0.0.md) - -### [1.2.0](CHANGELOG.1.2.0.md) - -## Patches - -### 2.0.1 - -#### Fixed - -- Types - - Fixed Preset Effect Types in constructor -- Effect - - Fixed Effect Class auto emitting -- Models - - Fixed DisplayList and PhysicsList always logging removal of items - - Fixed Particle Being added to DisplayList and PhysicsList +# DuckEngine Changelog + +Only [supported versions](SECURITY.md#Supported\Versions)' changelogs will be added. + +## Major and Minor Versions + +### **[3.0.0](CHANGELOG.3.0.0.md)** + +### [2.1.0](CHANGELOG.2.1.0.md) + +## Patches diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 3c200c24..6e2d08b2 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,76 +1,76 @@ -# Contributor Covenant Code of Conduct - -## Our Pledge - -In the interest of fostering an open and welcoming environment, we as -contributors and maintainers pledge to making participation in our project and -our community a harassment-free experience for everyone, regardless of age, body -size, disability, ethnicity, sex characteristics, gender identity and expression, -level of experience, education, socio-economic status, nationality, personal -appearance, race, religion, or sexual identity and orientation. - -## Our Standards - -Examples of behavior that contributes to creating a positive environment -include: - -* Using welcoming and inclusive language -* Being respectful of differing viewpoints and experiences -* Gracefully accepting constructive criticism -* Focusing on what is best for the community -* Showing empathy towards other community members - -Examples of unacceptable behavior by participants include: - -* The use of sexualized language or imagery and unwelcome sexual attention or - advances -* Trolling, insulting/derogatory comments, and personal or political attacks -* Public or private harassment -* Publishing others' private information, such as a physical or electronic - address, without explicit permission -* Other conduct which could reasonably be considered inappropriate in a - professional setting - -## Our Responsibilities - -Project maintainers are responsible for clarifying the standards of acceptable -behavior and are expected to take appropriate and fair corrective action in -response to any instances of unacceptable behavior. - -Project maintainers have the right and responsibility to remove, edit, or -reject comments, commits, code, wiki edits, issues, and other contributions -that are not aligned to this Code of Conduct, or to ban temporarily or -permanently any contributor for other behaviors that they deem inappropriate, -threatening, offensive, or harmful. - -## Scope - -This Code of Conduct applies both within project spaces and in public spaces -when an individual is representing the project or its community. Examples of -representing a project or community include using an official project e-mail -address, posting via an official social media account, or acting as an appointed -representative at an online or offline event. Representation of a project may be -further defined and clarified by project maintainers. - -## Enforcement - -Instances of abusive, harassing, or otherwise unacceptable behavior may be -reported by contacting the project team at . All -complaints will be reviewed and investigated and will result in a response that -is deemed necessary and appropriate to the circumstances. The project team is -obligated to maintain confidentiality with regard to the reporter of an incident. -Further details of specific enforcement policies may be posted separately. - -Project maintainers who do not follow or enforce the Code of Conduct in good -faith may face temporary or permanent repercussions as determined by other -members of the project's leadership. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, -available at - -[homepage]: https://www.contributor-covenant.org - -For answers to common questions about this code of conduct, see - +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at . All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see + diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 06be0dde..baf74e7d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,58 +1,58 @@ -# Contributing to DuckEngine - -We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's: - -- Reporting a bug -- Discussing the current state of the code -- Submitting a fix -- Proposing new features -- Becoming a maintainer - -## We Develop with Github - -We use github to host code, to track issues and feature requests, as well as accept pull requests. - -## All Code Changes Happen Through Pull Requests - -Pull requests are the best way to propose changes to the codebase. We actively welcome your pull requests: - -1. Fork the repo and create your branch from `main` or `staging`. -2. If you've added code that should be tested, add tests. -3. If you've changed APIs, update the documentation. -4. Ensure the test suite passes. -5. Make sure your code lints. -6. Issue that pull request! - -## Any contributions you make will be under the MIT Software License - -In short, when you submit code changes, your submissions are understood to be under the same [MIT License](http://choosealicense.com/licenses/mit/) that covers the project. Feel free to contact the maintainers if that's a concern. - -## Report bugs using Github's [issues](https://github.com/ksplatdev/DuckEngine/issues) - -We use GitHub issues to track public bugs. Report a bug by [opening a new bug issue](https://github.com/ksplatdev/DuckEngine/issues/new?assignees=&labels=bug&template=bug_report.md&title=); it's that easy! - -## Write bug reports with detail, background, and sample code - -**Great Bug Reports** tend to have: - -- A quick summary and/or background -- Steps to reproduce - - Be specific! - - Give sample code if you can. -- What you expected would happen -- What actually happens -- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work) - -People *love* thorough bug reports. I'm not even kidding. - -## Use a Consistent Coding Style - -- Tab for indentation rather than spaces - -## License - -By contributing, you agree that your contributions will be licensed under its MIT License. - -## References - -This document was adapted from the open-source contribution guidelines for [Facebook's Draft](https://github.com/facebook/draft-js/blob/a9316a723f9e918afde44dea68b5f9f39b7d9b00/CONTRIBUTING.md) +# Contributing to DuckEngine + +We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's: + +- Reporting a bug +- Discussing the current state of the code +- Submitting a fix +- Proposing new features +- Becoming a maintainer + +## We Develop with Github + +We use github to host code, to track issues and feature requests, as well as accept pull requests. + +## All Code Changes Happen Through Pull Requests + +Pull requests are the best way to propose changes to the codebase. We actively welcome your pull requests: + +1. Fork the repo and create your branch from `main` or `staging`. +2. If you've added code that should be tested, add tests. +3. If you've changed APIs, update the documentation. +4. Ensure the test suite passes. +5. Make sure your code lints. +6. Issue that pull request! + +## Any contributions you make will be under the MIT Software License + +In short, when you submit code changes, your submissions are understood to be under the same [MIT License](http://choosealicense.com/licenses/mit/) that covers the project. Feel free to contact the maintainers if that's a concern. + +## Report bugs using Github's [issues](https://github.com/ksplatdev/DuckEngine/issues) + +We use GitHub issues to track public bugs. Report a bug by [opening a new bug issue](https://github.com/ksplatdev/DuckEngine/issues/new?assignees=&labels=bug&template=bug_report.md&title=); it's that easy! + +## Write bug reports with detail, background, and sample code + +**Great Bug Reports** tend to have: + +- A quick summary and/or background +- Steps to reproduce + - Be specific! + - Give sample code if you can. +- What you expected would happen +- What actually happens +- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work) + +People *love* thorough bug reports. I'm not even kidding. + +## Use a Consistent Coding Style + +- Tab for indentation rather than spaces + +## License + +By contributing, you agree that your contributions will be licensed under its MIT License. + +## References + +This document was adapted from the open-source contribution guidelines for [Facebook's Draft](https://github.com/facebook/draft-js/blob/a9316a723f9e918afde44dea68b5f9f39b7d9b00/CONTRIBUTING.md) diff --git a/LICENSE b/LICENSE index 396ccbe0..dffe4295 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,21 @@ -MIT License - -Copyright (c) 2021 Bleart Emini - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +MIT License + +Copyright (c) 2022-2023 Bleart Emini + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 9c462ac2..0b5f039a 100644 --- a/README.md +++ b/README.md @@ -1,204 +1,191 @@ -# ![DuckEngine](global/Logo.png) - -**v2.0.0 released! [Changelog](CHANGELOG.md)** - -| [Docs](#docs) | [Wiki](#wiki) | [Getting Started](https://github.com/ksplatdev/DuckEngine/wiki/Getting-Started) | [Demos](#demos) | [Download](#download) | - -![Build Badge](https://img.shields.io/github/workflow/status/ksplatdev/DuckEngine/CodeQL?style=flat-square) -![Release Badge](https://img.shields.io/github/v/release/ksplatdev/DuckEngine?style=flat-square) -![License Badge](https://img.shields.io/github/license/ksplatdev/DuckEngine?label=license&style=flat-square) -[![wakatime](https://wakatime.com/badge/github/ksplatdev/DuckEngine.svg)](https://wakatime.com/badge/github/ksplatdev/DuckEngine) -![Lint Badge](https://github.com/ksplatdev/DuckEngine/actions/workflows/lint.yml/badge.svg) -![Format Badge](https://github.com/ksplatdev/DuckEngine/actions/workflows/format.yml/badge.svg) -[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) - -A 2D Game Engine for the web. - -## Features - -- Customizable Hitbox Based Physics Engine -- Multiple Scenes -- Fast & Performant -- Sprites & Spritesheets -- Many GameObjects -- Plugins & PluginManager -- Multiple Cameras with Effects -- Animations & State Machines & Cutscenes -- Hitboxes and Colliders -- Keyboard, and Mouse Inputs -- DPR / Mobile Scaling -- Advanced Particle System -- Cache & Fast Loading Times -- Effects and Presets -- Advanced UI System -- Groups & Management -- Advanced Tilemap System -- Small Package Size -- Static Lighting -- Asset Preloader & Manager -- Textures & Manager -- Made fully in TypeScript -- Typedefs -- [Docs](#docs) -- A lot more... - -## Performance & Compatibility - -### Browser Requirements - -1. Browser supports ES6 (EcmaScript2015) -2. Browser supports Canvas APIs - -### Rankings - -1. Chromium Based Browsers, includes Chrome, Opera, Edge, Vivaldi, and Brave -2. Safari -3. Firefox | [Bugs](#firefox-bugs) - -### Recommendation - -- Google Chrome or any other Chromium based browser - -### Browser Bugs - -#### Firefox Bugs - -- More stuttering than Chromium Browsers and Safari. -- Garbage collection occurs more often than Safari and Chromium Browsers. (Causes *very* minor and not noticeable stutters.) - -## Download - -### Github - -1. Download the [latest release](https://github.com/ksplatdev/DuckEngine/releases/latest). -2. Setup an asset bundler like webpack or parcel. -3. Import DuckEngine. -4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -### NPM - -1. Run `npm install duckengine`. -2. Setup an asset bundler like webpack or parcel. -3. Import DuckEngine. -4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -### CDN - -1. Setup an asset bundler like webpack or parcel. -2. Import DuckEngine from URL - - Regular - - Minified -3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -### Itch.io - -1. Download DuckEngine from -2. Import DuckEngine into your project. -3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -## [Docs](https://ksplatdev.github.io/DuckEngine/) - -Learn how to use DuckEngine with simple, clean, documentation with typings and more. - -## [Discussions](https://github.com/ksplatdev/DuckEngine/discussions) - -Ask questions, share ideas, engage with the community, and share your work with DuckEngine Discussions. - -## [Wiki](https://github.com/ksplatdev/DuckEngine/wiki) - -Read and learn about DuckEngine with the DuckEngine wiki. - -## How to use with Typescript - -How to use DuckEngine with Typescript. - -1. Setup webpack/parcel and tsconfig. -2. Import DuckEngine and Duck for types. - -Not working ? Add the following to your tsconfig.json - -```json -{ - "typeRoots": [ - "./node_modules/@types", - "path_to_duckengine_index.d.ts" - ], - "types": [ - "DuckEngine" - ] -} -``` - -### Duck Namespace - -The Duck Namespace has types such as gameobject, every class config, all classes, and more. - -### [Typescript Example](examples/ts/myScene.ts) - -## Developers' Guide - -### Requirements - -1. Knowledge of TypeScript, Git, and HTML Canvas. -2. Reading and agreeing to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. -3. Basic knowledge of how DuckEngine works. - -### How to contribute - -1. Reading and agree to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. -2. Fork the repository and create a new branch following the [branch guidelines](branch_guidelines.md). -3. Clone the fork to your device. -4. CD (change directories) into the cloned directory. -5. Run `yarn upgrade`. -6. Run `yarn run build` or `ctrl + shift + b` for vscode users. -7. Make your changes. -8. Test your changes on codesandbox by forking this [codesandbox](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) and updating the duckengine.js file. (Or any other way you would like to test it.) -9. Create a pull request. -10. Wait for it to be reviewed and revised and possibly merged. - -### Dev Scripts - -1. `yarn run test` - Opens the [codesandbox test](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js). -2. `yarn run build` - Compiles typescript, bundles files, creates minified version, builds docs, and copies package.json to dist. -3. `yarn run build:docs` - Uses TypeDoc to build docs. -4. `yarn run webpack` - Bundles files in lib directory. -5. `yarn run minify` - Uses uglifyjs to minify bundled file. -6. `yarn run format` - Uses Prettier to format files. -7. `yarn run format:watch` - Watches for changes and formats once changes are saved. -8. `yarn run lint` - Uses ESLint to lint all files in the src directory. -9. `yarn run lint:watch` - Watches for changes and fixes all fixable issues found by ESLint. -10. `yarn run lint:fix` - Uses ESLint to fix all fixable issues found by ESLint. -11. `yarn run tree` - Prints out all files and directories used in [readme](#file-structure). -12. `yarn run serve` - Serves the docs on :8080. -13. `yarn run checkout` - Runs the checkout shell script with bash. Run before thinking about publishing a release. - -### Branches - -1. main - main branch -2. staging - stage changes to this branch - -## Versions - -DuckEngine follows [SemVer](https://semver.org/). - -## Demos - -### [Simple Demo Game](https://github.com/ksplatdev/DuckEngine-Demo-Game/tree/main) - -### [Test Template](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) - -### [Particle Test](https://codesandbox.io/s/duckengine-particle-test-dhcr1?file=/src/scene.js) - -### [Tilemap test](https://codesandbox.io/s/duckengine-tilemap-test-ryqqz?file=/src/scene.js) - -## Attribution - -The cube in the [DuckEngine Logo](global/Logo.png) is by JosÊ Manuel de LaÃĄ from the Noun Project. - -## License - -[MIT](LICENSE) - -## Author - -Bleart Emini +# ![DuckEngine](global/Logo.png) + +**v3.0.0 released! [Changelog](CHANGELOG.md)** + +| [Docs](#docs) | [Wiki](#wiki) | [Getting Started](https://github.com/ksplatdev/DuckEngine/wiki/Getting-Started) | [Demos](#demos) | [Download](#download) | + +![Build Badge](https://img.shields.io/github/actions/workflow/status/ksplatdev/DuckEngine/codeql-analysis.yml?branch=main) +![Release Badge](https://img.shields.io/github/v/release/ksplatdev/DuckEngine) +![License Badge](https://img.shields.io/github/license/ksplatdev/DuckEngine) +![Lint Badge](https://img.shields.io/github/actions/workflow/status/ksplatdev/DuckEngine/lint.yml?branch=main) +![Format Badge](https://img.shields.io/github/actions/workflow/status/ksplatdev/DuckEngine/format.yml?branch=main) +[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) + +A 2D Game Engine for the web. + +## Features + +- Fast & Advanced Physics Engine // [DuckPhysics](https://github.com/ksplatdev/DuckPhysics) +- Multiple Scenes +- Fast & Performant +- Sprites & Spritesheets +- Many GameObjects +- Plugins & PluginManager +- Multiple Cameras with Effects +- Animations & State Machines & Cutscenes +- Keyboard, and Mouse Inputs +- DPR / Mobile Scaling +- Advanced Particle System +- Cache & Fast Loading Times +- Effects and Presets +- Advanced UI System +- Groups & Management +- Advanced Tilemap System +- Small Package Size +- Static Lighting +- Asset Preloader & Manager +- Textures & Manager +- Made fully in TypeScript +- Typedefs +- [Docs](#docs) +- A lot more... + +## Performance & Compatibility + +### Browser Requirements + +1. Browser supports ES6 (EcmaScript2015) +2. Browser supports Canvas APIs + +## Download + +### Github + +1. Download the [latest release](https://github.com/ksplatdev/DuckEngine/releases/latest). +2. Setup an asset bundler like webpack or parcel. +3. Import DuckEngine. +4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +### NPM + +1. Run `npm install duckengine`. +2. Setup an asset bundler like webpack or parcel. +3. Import DuckEngine. +4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +### CDN + +1. Setup an asset bundler like webpack or parcel. +2. Import DuckEngine from URL + - Regular + - Minified +3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +### Itch.io + +1. Download DuckEngine from +2. Import DuckEngine into your project. +3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +## [Docs](https://ksplatdev.github.io/DuckEngine/) + +Learn how to use DuckEngine with simple, clean, documentation with typings and more. + +## [Discussions](https://github.com/ksplatdev/DuckEngine/discussions) + +Ask questions, share ideas, engage with the community, and share your work with DuckEngine Discussions. + +## [Wiki](https://github.com/ksplatdev/DuckEngine/wiki) + +Read and learn about DuckEngine with the DuckEngine wiki. + +## How to use with Typescript + +How to use DuckEngine with Typescript. + +1. Setup webpack/parcel and tsconfig. +2. Import DuckEngine and Duck for types. + +Not working? Add the following to your tsconfig.json + +```json +{ + "typeRoots": [ + "./node_modules/@types", + "path_to_duckengine_index.d.ts" + ], + "types": [ + "DuckEngine" + ] +} +``` + +### Duck Namespace + +The Duck Namespace has types such as gameobject, every class config, all classes, and more. + +### [Typescript Example](examples/ts/myScene.ts) + +## Developers' Guide + +### Build Requirements + +- Must be on a linux machine or WSL +- Must be able to run shell scripts for building +- Must have typescript and yarn installed to path + +### Contributing Requirements + +1. Knowledge of TypeScript, Git, and HTML Canvas. +2. Reading and agreeing to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. +3. Basic knowledge of how DuckEngine works. + +### How to contribute + +1. Reading and agree to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. +2. Fork the repository and create a new branch following the [branch guidelines](branch_guidelines.md). +3. Clone the fork to your device. +4. CD (change directories) into the cloned directory. +5. Run `yarn`. +6. Run `yarn build` or `ctrl + shift + b` for vscode users. +7. Make your changes. +8. Test your changes on codesandbox by forking this [codesandbox](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) and updating the duckengine.js file. (Or any other way you would like to test it.) +9. Create a pull request. +10. Wait for it to be reviewed and revised and possibly merged. + +### Dev Scripts + +1. `yarn run test` - Opens the [codesandbox test](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js). +2. `yarn run build` - Compiles typescript, bundles files, creates minified version, builds docs, and copies package.json to dist. +3. `yarn run build:docs` - Uses TypeDoc to build docs. +4. `yarn run webpack` - Bundles files in lib directory. +5. `yarn run minify` - Uses uglifyjs to minify bundled file. +6. `yarn run format` - Uses Prettier to format files. +7. `yarn run format:watch` - Watches for changes and formats once changes are saved. +8. `yarn run lint` - Uses ESLint to lint all files in the src directory. +9. `yarn run lint:watch` - Watches for changes and fixes all fixable issues found by ESLint. +10. `yarn run lint:fix` - Uses ESLint to fix all fixable issues found by ESLint. +11. `yarn run tree` - Prints out all files and directories. +12. `yarn run serve` - Serves the documentation on :8080. +13. `yarn run checkout` - Runs the checkout shell script with bash. Run before thinking about publishing a release. + +### Branches + +1. main - main branch +2. *-staging - stage changes to this branch + +## Versions + +DuckEngine follows [SemVer](https://semver.org/). + +## Demos + +### [Simple Demo Game](https://github.com/ksplatdev/DuckEngine-Demo-Game/tree/main) + +### [Test Template](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) + +### [Particle Test](https://codesandbox.io/s/duckengine-particle-test-dhcr1?file=/src/scene.js) + +### [Tilemap test](https://codesandbox.io/s/duckengine-tilemap-test-ryqqz?file=/src/scene.js) + +## Attribution + +The cube in the [DuckEngine Logo](global/Logo.png) is by JosÊ Manuel de LaÃĄ from the Noun Project. + +## License + +[MIT](LICENSE) + +## Author + +Bleart Emini diff --git a/SECURITY.md b/SECURITY.md index 75389aac..d5e50430 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -1,16 +1,17 @@ -# Security Policy - -## Supported Versions - -| Version | Supported | -| ------- | ------------------ | -| 2.x.x | :white_check_mark: | -| 1.2.x | :white_check_mark: | -| 1.0.x -> 1.1.x | :x: | -| 1.x.x-beta | :x: | - -## Reporting a Vulnerability - -To report a vulnerability, [create an vulnerability issue](https://github.com/ksplatdev/DuckEngine/issues/new?assignees=&labels=Vulnerability&template=vulnerability.md&title=Vulnerability). - -Fill out the template in detail. You will get a response within a week. +# Security Policy + +## Supported Versions + +| Version | Supported | +| ------- | ------------------ | +| 3.0.0 | :white_check_mark: | +| 2.1.0 | :white_check_mark: | +| 2.0.x | :x: | +| 1.x.x | :x: | +| 1.x.x-beta | :x: | + +## Reporting a Vulnerability + +To report a vulnerability, [create an vulnerability issue](https://github.com/ksplatdev/DuckEngine/issues/new?assignees=&labels=Vulnerability&template=vulnerability.md&title=Vulnerability). + +Fill out the template in detail. You will get a response within a week. diff --git a/branch_guidelines.md b/branch_guidelines.md index 69915c0c..db8dcb4d 100644 --- a/branch_guidelines.md +++ b/branch_guidelines.md @@ -1,13 +1,13 @@ -# DuckEngine Branch Guidelines - -## Naming Branches - -Format: \[ feature | release | fix \] - \[ short-descriptive-name \] - -Example: feature-duck-physics - -### Rules - -* Must be all lowercase -* No whitespaces, use hyphens (-) instead -* Must be appropriate +# DuckEngine Branch Guidelines + +## Naming Branches + +Format: \[ feature | release | fix \] - \[ short-descriptive-name \] + +Example: feature-duck-physics + +### Rules + +* Must be all lowercase +* No whitespaces, use hyphens (-) instead +* Must be appropriate diff --git a/buildUtils/buildNum.js b/buildUtils/buildNum.js new file mode 100644 index 00000000..4e7b0dc5 --- /dev/null +++ b/buildUtils/buildNum.js @@ -0,0 +1,20 @@ +function buildNum() { + const str = String; + + const dateObj = new Date(); + const month = dateObj.getUTCMonth() + 1; //months from 1-12 + const day = dateObj.getUTCDate(); + const year = dateObj.getUTCFullYear(); + + const hour = dateObj.getUTCHours(); + const minutes = dateObj.getUTCMinutes(); + const seconds = dateObj.getUTCSeconds(); + + const stringVersion = + str(year) + str(month) + str(day) + str(hour) + str(minutes) + str(seconds); + const buildNum = Number(stringVersion); + + return buildNum; +} + +module.exports = buildNum; diff --git a/docs/assets/search.js b/docs/assets/search.js index b06cef96..696ad770 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = {"kinds":{"2":"Module","4":"Namespace","8":"Enumeration","16":"Enumeration member","32":"Variable","64":"Function","128":"Class","256":"Interface","512":"Constructor","1024":"Property","2048":"Method","65536":"Type literal","262144":"Accessor","4194304":"Type alias"},"rows":[{"id":0,"kind":2,"name":"core/animation/animation","url":"modules/core_animation_animation.html","classes":"tsd-kind-module"},{"id":1,"kind":128,"name":"Animation","url":"classes/core_animation_animation.Animation.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animation"},{"id":2,"kind":512,"name":"constructor","url":"classes/core_animation_animation.Animation.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":3,"kind":1024,"name":"key","url":"classes/core_animation_animation.Animation.html#key","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":4,"kind":1024,"name":"config","url":"classes/core_animation_animation.Animation.html#config","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":5,"kind":1024,"name":"game","url":"classes/core_animation_animation.Animation.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":6,"kind":1024,"name":"scene","url":"classes/core_animation_animation.Animation.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":7,"kind":1024,"name":"sprite","url":"classes/core_animation_animation.Animation.html#sprite","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":8,"kind":1024,"name":"countBy","url":"classes/core_animation_animation.Animation.html#countBy","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":9,"kind":1024,"name":"repeat","url":"classes/core_animation_animation.Animation.html#repeat","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":10,"kind":1024,"name":"repeatCounter","url":"classes/core_animation_animation.Animation.html#repeatCounter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":11,"kind":1024,"name":"frames","url":"classes/core_animation_animation.Animation.html#frames","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":12,"kind":1024,"name":"reversedFrames","url":"classes/core_animation_animation.Animation.html#reversedFrames","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":13,"kind":1024,"name":"animationNormalTimer","url":"classes/core_animation_animation.Animation.html#animationNormalTimer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":14,"kind":1024,"name":"animationReverseTimer","url":"classes/core_animation_animation.Animation.html#animationReverseTimer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":15,"kind":1024,"name":"delayTimer","url":"classes/core_animation_animation.Animation.html#delayTimer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":16,"kind":1024,"name":"currentIndex","url":"classes/core_animation_animation.Animation.html#currentIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":17,"kind":1024,"name":"currentFrame","url":"classes/core_animation_animation.Animation.html#currentFrame","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":18,"kind":2048,"name":"createFrames","url":"classes/core_animation_animation.Animation.html#createFrames","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/animation/animation.Animation"},{"id":19,"kind":2048,"name":"normalStep","url":"classes/core_animation_animation.Animation.html#normalStep","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/animation/animation.Animation"},{"id":20,"kind":2048,"name":"reverseStep","url":"classes/core_animation_animation.Animation.html#reverseStep","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/animation/animation.Animation"},{"id":21,"kind":2048,"name":"setRepeat","url":"classes/core_animation_animation.Animation.html#setRepeat","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":22,"kind":2048,"name":"setRepeatReverse","url":"classes/core_animation_animation.Animation.html#setRepeatReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":23,"kind":2048,"name":"play","url":"classes/core_animation_animation.Animation.html#play","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":24,"kind":2048,"name":"playReverse","url":"classes/core_animation_animation.Animation.html#playReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":25,"kind":2048,"name":"pause","url":"classes/core_animation_animation.Animation.html#pause","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":26,"kind":2048,"name":"pauseReverse","url":"classes/core_animation_animation.Animation.html#pauseReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":27,"kind":2048,"name":"resume","url":"classes/core_animation_animation.Animation.html#resume","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":28,"kind":2048,"name":"resumeReverse","url":"classes/core_animation_animation.Animation.html#resumeReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":29,"kind":2048,"name":"stop","url":"classes/core_animation_animation.Animation.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":30,"kind":2048,"name":"stopReverse","url":"classes/core_animation_animation.Animation.html#stopReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":31,"kind":2048,"name":"restart","url":"classes/core_animation_animation.Animation.html#restart","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":32,"kind":2048,"name":"restartReverse","url":"classes/core_animation_animation.Animation.html#restartReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":33,"kind":2,"name":"core/animation/animationFrame","url":"modules/core_animation_animationFrame.html","classes":"tsd-kind-module"},{"id":34,"kind":128,"name":"AnimationFrame","url":"classes/core_animation_animationFrame.AnimationFrame.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animationFrame"},{"id":35,"kind":512,"name":"constructor","url":"classes/core_animation_animationFrame.AnimationFrame.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":36,"kind":1024,"name":"col","url":"classes/core_animation_animationFrame.AnimationFrame.html#col","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":37,"kind":1024,"name":"row","url":"classes/core_animation_animationFrame.AnimationFrame.html#row","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":38,"kind":1024,"name":"sprite","url":"classes/core_animation_animationFrame.AnimationFrame.html#sprite","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":39,"kind":2048,"name":"set","url":"classes/core_animation_animationFrame.AnimationFrame.html#set","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":40,"kind":2,"name":"core/animation/animationManager","url":"modules/core_animation_animationManager.html","classes":"tsd-kind-module"},{"id":41,"kind":128,"name":"AnimationManager","url":"classes/core_animation_animationManager.AnimationManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animationManager"},{"id":42,"kind":512,"name":"constructor","url":"classes/core_animation_animationManager.AnimationManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":43,"kind":1024,"name":"game","url":"classes/core_animation_animationManager.AnimationManager.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":44,"kind":1024,"name":"scene","url":"classes/core_animation_animationManager.AnimationManager.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":45,"kind":1024,"name":"sprite","url":"classes/core_animation_animationManager.AnimationManager.html#sprite","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":46,"kind":1024,"name":"animations","url":"classes/core_animation_animationManager.AnimationManager.html#animations","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":47,"kind":1024,"name":"currentAnimation","url":"classes/core_animation_animationManager.AnimationManager.html#currentAnimation","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":48,"kind":2048,"name":"createStateMachine","url":"classes/core_animation_animationManager.AnimationManager.html#createStateMachine","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":49,"kind":2048,"name":"setCurrentAnimation","url":"classes/core_animation_animationManager.AnimationManager.html#setCurrentAnimation","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":50,"kind":2048,"name":"add","url":"classes/core_animation_animationManager.AnimationManager.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":51,"kind":2048,"name":"remove","url":"classes/core_animation_animationManager.AnimationManager.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":52,"kind":2048,"name":"get","url":"classes/core_animation_animationManager.AnimationManager.html#get","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":53,"kind":2048,"name":"getIndex","url":"classes/core_animation_animationManager.AnimationManager.html#getIndex","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":54,"kind":2048,"name":"clear","url":"classes/core_animation_animationManager.AnimationManager.html#clear","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":55,"kind":2048,"name":"setRepeat","url":"classes/core_animation_animationManager.AnimationManager.html#setRepeat","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":56,"kind":2048,"name":"setRepeatReverse","url":"classes/core_animation_animationManager.AnimationManager.html#setRepeatReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":57,"kind":2048,"name":"play","url":"classes/core_animation_animationManager.AnimationManager.html#play","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":58,"kind":2048,"name":"playReverse","url":"classes/core_animation_animationManager.AnimationManager.html#playReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":59,"kind":2048,"name":"pause","url":"classes/core_animation_animationManager.AnimationManager.html#pause","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":60,"kind":2048,"name":"pauseReverse","url":"classes/core_animation_animationManager.AnimationManager.html#pauseReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":61,"kind":2048,"name":"resume","url":"classes/core_animation_animationManager.AnimationManager.html#resume","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":62,"kind":2048,"name":"resumeReverse","url":"classes/core_animation_animationManager.AnimationManager.html#resumeReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":63,"kind":2048,"name":"stop","url":"classes/core_animation_animationManager.AnimationManager.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":64,"kind":2048,"name":"stopReverse","url":"classes/core_animation_animationManager.AnimationManager.html#stopReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":65,"kind":2048,"name":"restart","url":"classes/core_animation_animationManager.AnimationManager.html#restart","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":66,"kind":2048,"name":"restartReverse","url":"classes/core_animation_animationManager.AnimationManager.html#restartReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":67,"kind":2,"name":"core/animation/animationState","url":"modules/core_animation_animationState.html","classes":"tsd-kind-module"},{"id":68,"kind":128,"name":"AnimationState","url":"classes/core_animation_animationState.AnimationState.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animationState"},{"id":69,"kind":512,"name":"constructor","url":"classes/core_animation_animationState.AnimationState.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":70,"kind":1024,"name":"key","url":"classes/core_animation_animationState.AnimationState.html#key","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":71,"kind":1024,"name":"animation","url":"classes/core_animation_animationState.AnimationState.html#animation","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":72,"kind":1024,"name":"autoAdvance","url":"classes/core_animation_animationState.AnimationState.html#autoAdvance","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":73,"kind":1024,"name":"vector","url":"classes/core_animation_animationState.AnimationState.html#vector","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":74,"kind":1024,"name":"connections","url":"classes/core_animation_animationState.AnimationState.html#connections","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":75,"kind":2,"name":"core/animation/stateMachine","url":"modules/core_animation_stateMachine.html","classes":"tsd-kind-module"},{"id":76,"kind":128,"name":"StateMachine","url":"classes/core_animation_stateMachine.StateMachine.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/stateMachine"},{"id":77,"kind":512,"name":"constructor","url":"classes/core_animation_stateMachine.StateMachine.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":78,"kind":1024,"name":"config","url":"classes/core_animation_stateMachine.StateMachine.html#config","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":79,"kind":1024,"name":"animations","url":"classes/core_animation_stateMachine.StateMachine.html#animations","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":80,"kind":1024,"name":"connections","url":"classes/core_animation_stateMachine.StateMachine.html#connections","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":81,"kind":1024,"name":"currentState","url":"classes/core_animation_stateMachine.StateMachine.html#currentState","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":82,"kind":2048,"name":"connectTo","url":"classes/core_animation_stateMachine.StateMachine.html#connectTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":83,"kind":2048,"name":"connectLoop","url":"classes/core_animation_stateMachine.StateMachine.html#connectLoop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":84,"kind":2048,"name":"travel","url":"classes/core_animation_stateMachine.StateMachine.html#travel","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":85,"kind":2048,"name":"canTravel","url":"classes/core_animation_stateMachine.StateMachine.html#canTravel","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":86,"kind":2,"name":"core/camera/camera","url":"modules/core_camera_camera.html","classes":"tsd-kind-module"},{"id":87,"kind":128,"name":"Camera","url":"classes/core_camera_camera.Camera.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/camera/camera"},{"id":88,"kind":512,"name":"constructor","url":"classes/core_camera_camera.Camera.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":89,"kind":1024,"name":"game","url":"classes/core_camera_camera.Camera.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":90,"kind":1024,"name":"scene","url":"classes/core_camera_camera.Camera.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":91,"kind":1024,"name":"lookAt","url":"classes/core_camera_camera.Camera.html#lookAt","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":92,"kind":1024,"name":"fieldOfView","url":"classes/core_camera_camera.Camera.html#fieldOfView","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":93,"kind":1024,"name":"distance","url":"classes/core_camera_camera.Camera.html#distance","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":94,"kind":1024,"name":"viewport","url":"classes/core_camera_camera.Camera.html#viewport","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":95,"kind":65536,"name":"__type","url":"classes/core_camera_camera.Camera.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":96,"kind":1024,"name":"left","url":"classes/core_camera_camera.Camera.html#__type.left","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":97,"kind":1024,"name":"right","url":"classes/core_camera_camera.Camera.html#__type.right","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":98,"kind":1024,"name":"top","url":"classes/core_camera_camera.Camera.html#__type.top","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":99,"kind":1024,"name":"bottom","url":"classes/core_camera_camera.Camera.html#__type.bottom","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":100,"kind":1024,"name":"w","url":"classes/core_camera_camera.Camera.html#__type.w","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":101,"kind":1024,"name":"h","url":"classes/core_camera_camera.Camera.html#__type.h","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":102,"kind":1024,"name":"scale","url":"classes/core_camera_camera.Camera.html#__type.scale","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":103,"kind":1024,"name":"aspectRatio","url":"classes/core_camera_camera.Camera.html#aspectRatio","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":104,"kind":1024,"name":"isMain","url":"classes/core_camera_camera.Camera.html#isMain","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":105,"kind":1024,"name":"bounds","url":"classes/core_camera_camera.Camera.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":106,"kind":1024,"name":"following","url":"classes/core_camera_camera.Camera.html#following","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":107,"kind":1024,"name":"lerpX","url":"classes/core_camera_camera.Camera.html#lerpX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":108,"kind":1024,"name":"lerpY","url":"classes/core_camera_camera.Camera.html#lerpY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":109,"kind":2048,"name":"begin","url":"classes/core_camera_camera.Camera.html#begin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":110,"kind":2048,"name":"end","url":"classes/core_camera_camera.Camera.html#end","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":111,"kind":2048,"name":"applyScale","url":"classes/core_camera_camera.Camera.html#applyScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":112,"kind":2048,"name":"applyTranslation","url":"classes/core_camera_camera.Camera.html#applyTranslation","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":113,"kind":2048,"name":"updateViewport","url":"classes/core_camera_camera.Camera.html#updateViewport","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":114,"kind":2048,"name":"setZoom","url":"classes/core_camera_camera.Camera.html#setZoom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":115,"kind":2048,"name":"setZoomSmooth","url":"classes/core_camera_camera.Camera.html#setZoomSmooth","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":116,"kind":2048,"name":"moveTo","url":"classes/core_camera_camera.Camera.html#moveTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":117,"kind":2048,"name":"startFollow","url":"classes/core_camera_camera.Camera.html#startFollow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":118,"kind":2048,"name":"stopFollow","url":"classes/core_camera_camera.Camera.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":119,"kind":2048,"name":"screenToWorld","url":"classes/core_camera_camera.Camera.html#screenToWorld","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":120,"kind":2048,"name":"worldToScreen","url":"classes/core_camera_camera.Camera.html#worldToScreen","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":121,"kind":2048,"name":"setFOV","url":"classes/core_camera_camera.Camera.html#setFOV","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":122,"kind":2048,"name":"setFOVSmooth","url":"classes/core_camera_camera.Camera.html#setFOVSmooth","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":123,"kind":2048,"name":"resetFOV","url":"classes/core_camera_camera.Camera.html#resetFOV","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":124,"kind":2048,"name":"resetZoom","url":"classes/core_camera_camera.Camera.html#resetZoom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":125,"kind":2048,"name":"setBounds","url":"classes/core_camera_camera.Camera.html#setBounds","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":126,"kind":2048,"name":"shake","url":"classes/core_camera_camera.Camera.html#shake","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":127,"kind":2048,"name":"cull","url":"classes/core_camera_camera.Camera.html#cull","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":128,"kind":2048,"name":"autoCull","url":"classes/core_camera_camera.Camera.html#autoCull","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":129,"kind":262144,"name":"defaultZoom","url":"classes/core_camera_camera.Camera.html#defaultZoom","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":130,"kind":262144,"name":"defaultFOV","url":"classes/core_camera_camera.Camera.html#defaultFOV","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":131,"kind":2,"name":"core/cutscene/cutscene","url":"modules/core_cutscene_cutscene.html","classes":"tsd-kind-module"},{"id":132,"kind":128,"name":"Cutscene","url":"classes/core_cutscene_cutscene.Cutscene.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/cutscene/cutscene"},{"id":133,"kind":512,"name":"constructor","url":"classes/core_cutscene_cutscene.Cutscene.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":134,"kind":1024,"name":"config","url":"classes/core_cutscene_cutscene.Cutscene.html#config","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":135,"kind":1024,"name":"instructions","url":"classes/core_cutscene_cutscene.Cutscene.html#instructions","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":136,"kind":1024,"name":"game","url":"classes/core_cutscene_cutscene.Cutscene.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":137,"kind":1024,"name":"steps","url":"classes/core_cutscene_cutscene.Cutscene.html#steps","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":138,"kind":1024,"name":"mainObject","url":"classes/core_cutscene_cutscene.Cutscene.html#mainObject","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":139,"kind":1024,"name":"otherObjects","url":"classes/core_cutscene_cutscene.Cutscene.html#otherObjects","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":140,"kind":1024,"name":"camera","url":"classes/core_cutscene_cutscene.Cutscene.html#camera","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":141,"kind":1024,"name":"otherCameras","url":"classes/core_cutscene_cutscene.Cutscene.html#otherCameras","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":142,"kind":1024,"name":"index","url":"classes/core_cutscene_cutscene.Cutscene.html#index","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":143,"kind":1024,"name":"running","url":"classes/core_cutscene_cutscene.Cutscene.html#running","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":144,"kind":2048,"name":"init","url":"classes/core_cutscene_cutscene.Cutscene.html#init","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":145,"kind":2048,"name":"start","url":"classes/core_cutscene_cutscene.Cutscene.html#start","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":146,"kind":2048,"name":"stop","url":"classes/core_cutscene_cutscene.Cutscene.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":147,"kind":2048,"name":"update","url":"classes/core_cutscene_cutscene.Cutscene.html#update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":148,"kind":2048,"name":"next","url":"classes/core_cutscene_cutscene.Cutscene.html#next","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":149,"kind":2048,"name":"sleep","url":"classes/core_cutscene_cutscene.Cutscene.html#sleep","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":150,"kind":2048,"name":"on","url":"classes/core_cutscene_cutscene.Cutscene.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":151,"kind":2048,"name":"off","url":"classes/core_cutscene_cutscene.Cutscene.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":152,"kind":2,"name":"core/debug/debug","url":"modules/core_debug_debug.html","classes":"tsd-kind-module"},{"id":153,"kind":32,"name":"Debug","url":"modules/core_debug_debug.html#Debug","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/debug/debug"},{"id":154,"kind":65536,"name":"__type","url":"modules/core_debug_debug.html#Debug.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/debug/debug.Debug"},{"id":155,"kind":1024,"name":"stack","url":"modules/core_debug_debug.html#Debug.__type.stack","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":156,"kind":65536,"name":"__type","url":"modules/core_debug_debug.html#Debug.__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":157,"kind":1024,"name":"Error","url":"modules/core_debug_debug.html#Debug.__type.Error","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":158,"kind":1024,"name":"Warn","url":"modules/core_debug_debug.html#Debug.__type.Warn","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":159,"kind":1024,"name":"Log","url":"modules/core_debug_debug.html#Debug.__type.Log","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":160,"kind":2,"name":"core/display/displayManager","url":"modules/core_display_displayManager.html","classes":"tsd-kind-module"},{"id":161,"kind":128,"name":"DisplayManager","url":"classes/core_display_displayManager.DisplayManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/display/displayManager"},{"id":162,"kind":512,"name":"constructor","url":"classes/core_display_displayManager.DisplayManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":163,"kind":1024,"name":"game","url":"classes/core_display_displayManager.DisplayManager.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":164,"kind":1024,"name":"eventEmitter","url":"classes/core_display_displayManager.DisplayManager.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":165,"kind":2048,"name":"scale","url":"classes/core_display_displayManager.DisplayManager.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":166,"kind":2048,"name":"dprScale","url":"classes/core_display_displayManager.DisplayManager.html#dprScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":167,"kind":2048,"name":"smallCorrectionScale","url":"classes/core_display_displayManager.DisplayManager.html#smallCorrectionScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":168,"kind":2048,"name":"scaleAspectRatio","url":"classes/core_display_displayManager.DisplayManager.html#scaleAspectRatio","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":169,"kind":2048,"name":"scaleToWindow","url":"classes/core_display_displayManager.DisplayManager.html#scaleToWindow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":170,"kind":2048,"name":"resetScale","url":"classes/core_display_displayManager.DisplayManager.html#resetScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":171,"kind":2048,"name":"fullscreen","url":"classes/core_display_displayManager.DisplayManager.html#fullscreen","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":172,"kind":2048,"name":"unfullscreen","url":"classes/core_display_displayManager.DisplayManager.html#unfullscreen","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":173,"kind":2,"name":"core/effect/effect","url":"modules/core_effect_effect.html","classes":"tsd-kind-module"},{"id":174,"kind":128,"name":"Effect","url":"classes/core_effect_effect.Effect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/effect/effect"},{"id":175,"kind":512,"name":"constructor","url":"classes/core_effect_effect.Effect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":176,"kind":1024,"name":"id","url":"classes/core_effect_effect.Effect.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":177,"kind":1024,"name":"shape","url":"classes/core_effect_effect.Effect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":178,"kind":1024,"name":"rangeX","url":"classes/core_effect_effect.Effect.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":179,"kind":1024,"name":"rangeY","url":"classes/core_effect_effect.Effect.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":180,"kind":1024,"name":"particleEmitter","url":"classes/core_effect_effect.Effect.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":181,"kind":1024,"name":"game","url":"classes/core_effect_effect.Effect.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":182,"kind":1024,"name":"visible","url":"classes/core_effect_effect.Effect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":183,"kind":1024,"name":"zIndex","url":"classes/core_effect_effect.Effect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":184,"kind":1024,"name":"culled","url":"classes/core_effect_effect.Effect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":185,"kind":1024,"name":"following","url":"classes/core_effect_effect.Effect.html#following","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":186,"kind":1024,"name":"randomMaxOffset","url":"classes/core_effect_effect.Effect.html#randomMaxOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/effect.Effect"},{"id":187,"kind":2048,"name":"emit","url":"classes/core_effect_effect.Effect.html#emit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":188,"kind":2048,"name":"stopEmit","url":"classes/core_effect_effect.Effect.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":189,"kind":2048,"name":"emitFor","url":"classes/core_effect_effect.Effect.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":190,"kind":2048,"name":"_draw","url":"classes/core_effect_effect.Effect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":191,"kind":2048,"name":"follow","url":"classes/core_effect_effect.Effect.html#follow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":192,"kind":2048,"name":"stopFollow","url":"classes/core_effect_effect.Effect.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":193,"kind":2,"name":"core/effect/preset/explosion","url":"modules/core_effect_preset_explosion.html","classes":"tsd-kind-module"},{"id":194,"kind":128,"name":"ExplosionEffect","url":"classes/core_effect_preset_explosion.ExplosionEffect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/effect/preset/explosion"},{"id":195,"kind":512,"name":"constructor","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":196,"kind":1024,"name":"maxAge","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#maxAge","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":197,"kind":1024,"name":"speedRange","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#speedRange","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":198,"kind":2048,"name":"emit","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#emit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":199,"kind":2048,"name":"stopEmit","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":200,"kind":2048,"name":"emitFor","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":201,"kind":2048,"name":"_draw","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":202,"kind":1024,"name":"id","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":203,"kind":1024,"name":"shape","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":204,"kind":1024,"name":"rangeX","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":205,"kind":1024,"name":"rangeY","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":206,"kind":1024,"name":"particleEmitter","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":207,"kind":1024,"name":"game","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":208,"kind":1024,"name":"visible","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":209,"kind":1024,"name":"zIndex","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":210,"kind":1024,"name":"culled","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":211,"kind":1024,"name":"following","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#following","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":212,"kind":1024,"name":"randomMaxOffset","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#randomMaxOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":213,"kind":2048,"name":"follow","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#follow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":214,"kind":2048,"name":"stopFollow","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":215,"kind":2,"name":"core/effect/preset/smoke","url":"modules/core_effect_preset_smoke.html","classes":"tsd-kind-module"},{"id":216,"kind":128,"name":"SmokeEffect","url":"classes/core_effect_preset_smoke.SmokeEffect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/effect/preset/smoke"},{"id":217,"kind":512,"name":"constructor","url":"classes/core_effect_preset_smoke.SmokeEffect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":218,"kind":1024,"name":"maxAge","url":"classes/core_effect_preset_smoke.SmokeEffect.html#maxAge","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":219,"kind":1024,"name":"speedRangeX","url":"classes/core_effect_preset_smoke.SmokeEffect.html#speedRangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":220,"kind":1024,"name":"speedRangeY","url":"classes/core_effect_preset_smoke.SmokeEffect.html#speedRangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":221,"kind":1024,"name":"interval","url":"classes/core_effect_preset_smoke.SmokeEffect.html#interval","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":222,"kind":2048,"name":"emit","url":"classes/core_effect_preset_smoke.SmokeEffect.html#emit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":223,"kind":2048,"name":"stopEmit","url":"classes/core_effect_preset_smoke.SmokeEffect.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":224,"kind":2048,"name":"emitFor","url":"classes/core_effect_preset_smoke.SmokeEffect.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":225,"kind":2048,"name":"_draw","url":"classes/core_effect_preset_smoke.SmokeEffect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":226,"kind":1024,"name":"id","url":"classes/core_effect_preset_smoke.SmokeEffect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":227,"kind":1024,"name":"shape","url":"classes/core_effect_preset_smoke.SmokeEffect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":228,"kind":1024,"name":"rangeX","url":"classes/core_effect_preset_smoke.SmokeEffect.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":229,"kind":1024,"name":"rangeY","url":"classes/core_effect_preset_smoke.SmokeEffect.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":230,"kind":1024,"name":"particleEmitter","url":"classes/core_effect_preset_smoke.SmokeEffect.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":231,"kind":1024,"name":"game","url":"classes/core_effect_preset_smoke.SmokeEffect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":232,"kind":1024,"name":"visible","url":"classes/core_effect_preset_smoke.SmokeEffect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":233,"kind":1024,"name":"zIndex","url":"classes/core_effect_preset_smoke.SmokeEffect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":234,"kind":1024,"name":"culled","url":"classes/core_effect_preset_smoke.SmokeEffect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":235,"kind":1024,"name":"following","url":"classes/core_effect_preset_smoke.SmokeEffect.html#following","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":236,"kind":1024,"name":"randomMaxOffset","url":"classes/core_effect_preset_smoke.SmokeEffect.html#randomMaxOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":237,"kind":2048,"name":"follow","url":"classes/core_effect_preset_smoke.SmokeEffect.html#follow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":238,"kind":2048,"name":"stopFollow","url":"classes/core_effect_preset_smoke.SmokeEffect.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":239,"kind":2,"name":"core/events/eventEmitter","url":"modules/core_events_eventEmitter.html","classes":"tsd-kind-module"},{"id":240,"kind":128,"name":"EventEmitter","url":"classes/core_events_eventEmitter.EventEmitter.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/events/eventEmitter"},{"id":241,"kind":512,"name":"constructor","url":"classes/core_events_eventEmitter.EventEmitter.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":242,"kind":1024,"name":"callbacks","url":"classes/core_events_eventEmitter.EventEmitter.html#callbacks","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":243,"kind":65536,"name":"__type","url":"classes/core_events_eventEmitter.EventEmitter.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":244,"kind":2048,"name":"on","url":"classes/core_events_eventEmitter.EventEmitter.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":245,"kind":2048,"name":"off","url":"classes/core_events_eventEmitter.EventEmitter.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":246,"kind":2048,"name":"emit","url":"classes/core_events_eventEmitter.EventEmitter.html#emit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":247,"kind":2,"name":"core/events/events","url":"modules/core_events_events.html","classes":"tsd-kind-module"},{"id":248,"kind":32,"name":"EVENTS","url":"modules/core_events_events.html#EVENTS","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/events"},{"id":249,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/events.EVENTS"},{"id":250,"kind":1024,"name":"BUTTON","url":"modules/core_events_events.html#EVENTS.__type.BUTTON","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":251,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":252,"kind":1024,"name":"CLICK","url":"modules/core_events_events.html#EVENTS.__type.__type-1.CLICK","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":253,"kind":1024,"name":"HOVER","url":"modules/core_events_events.html#EVENTS.__type.__type-1.HOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":254,"kind":1024,"name":"NOTHOVER","url":"modules/core_events_events.html#EVENTS.__type.__type-1.NOTHOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":255,"kind":1024,"name":"GROUP","url":"modules/core_events_events.html#EVENTS.__type.GROUP","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":256,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-5","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":257,"kind":1024,"name":"ADD","url":"modules/core_events_events.html#EVENTS.__type.__type-5.ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":258,"kind":1024,"name":"REMOVE","url":"modules/core_events_events.html#EVENTS.__type.__type-5.REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":259,"kind":1024,"name":"CUTSCENE","url":"modules/core_events_events.html#EVENTS.__type.CUTSCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":260,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-2","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":261,"kind":1024,"name":"START","url":"modules/core_events_events.html#EVENTS.__type.__type-2.START","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":262,"kind":1024,"name":"END","url":"modules/core_events_events.html#EVENTS.__type.__type-2.END","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":263,"kind":1024,"name":"NEXT","url":"modules/core_events_events.html#EVENTS.__type.__type-2.NEXT","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":264,"kind":1024,"name":"GAME","url":"modules/core_events_events.html#EVENTS.__type.GAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":265,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-4","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":266,"kind":1024,"name":"FOCUS","url":"modules/core_events_events.html#EVENTS.__type.__type-4.FOCUS-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":267,"kind":1024,"name":"BLUR","url":"modules/core_events_events.html#EVENTS.__type.__type-4.BLUR-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":268,"kind":1024,"name":"START","url":"modules/core_events_events.html#EVENTS.__type.__type-4.START-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":269,"kind":1024,"name":"STOP","url":"modules/core_events_events.html#EVENTS.__type.__type-4.STOP","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":270,"kind":1024,"name":"LOAD_BEGIN","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOAD_BEGIN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":271,"kind":1024,"name":"LOAD_FINISH","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOAD_FINISH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":272,"kind":1024,"name":"SCENE_ADD","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SCENE_ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":273,"kind":1024,"name":"SCENE_REMOVE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SCENE_REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":274,"kind":1024,"name":"LOAD_SCENE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOAD_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":275,"kind":1024,"name":"SWITCH_SCENE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SWITCH_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":276,"kind":1024,"name":"SHOW_SCENE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SHOW_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":277,"kind":1024,"name":"DRAW_SPLASH","url":"modules/core_events_events.html#EVENTS.__type.__type-4.DRAW_SPLASH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":278,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_events.html#EVENTS.__type.__type-4.CLEAR_FRAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":279,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SET_SCALE-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":280,"kind":1024,"name":"SET_BACKGROUND","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SET_BACKGROUND","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":281,"kind":1024,"name":"SYNC_CACHE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SYNC_CACHE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":282,"kind":1024,"name":"LOCK_POINTER","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":283,"kind":1024,"name":"UNLOCK_POINTER","url":"modules/core_events_events.html#EVENTS.__type.__type-4.UNLOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":284,"kind":1024,"name":"CONTEXT_LOST","url":"modules/core_events_events.html#EVENTS.__type.__type-4.CONTEXT_LOST","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":285,"kind":1024,"name":"CONTEXT_RESTORED","url":"modules/core_events_events.html#EVENTS.__type.__type-4.CONTEXT_RESTORED","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":286,"kind":1024,"name":"RENDERER","url":"modules/core_events_events.html#EVENTS.__type.RENDERER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":287,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-6","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":288,"kind":1024,"name":"PIPELINE_POOL","url":"modules/core_events_events.html#EVENTS.__type.__type-6.PIPELINE_POOL","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":289,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_events.html#EVENTS.__type.__type-6.CLEAR_FRAME-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":290,"kind":1024,"name":"DISPLAY","url":"modules/core_events_events.html#EVENTS.__type.DISPLAY","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":291,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-3","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":292,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_events.html#EVENTS.__type.__type-3.SET_SCALE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":293,"kind":1024,"name":"FULLSCREEN","url":"modules/core_events_events.html#EVENTS.__type.__type-3.FULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":294,"kind":1024,"name":"UNFULLSCREEN","url":"modules/core_events_events.html#EVENTS.__type.__type-3.UNFULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":295,"kind":1024,"name":"FOCUS","url":"modules/core_events_events.html#EVENTS.__type.__type-3.FOCUS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":296,"kind":1024,"name":"BLUR","url":"modules/core_events_events.html#EVENTS.__type.__type-3.BLUR","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":297,"kind":2,"name":"core/events/main/displayEvents","url":"modules/core_events_main_displayEvents.html","classes":"tsd-kind-module"},{"id":298,"kind":32,"name":"DisplayEvents","url":"modules/core_events_main_displayEvents.html#DisplayEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/main/displayEvents"},{"id":299,"kind":65536,"name":"__type","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/main/displayEvents.DisplayEvents"},{"id":300,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.SET_SCALE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":301,"kind":1024,"name":"FULLSCREEN","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.FULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":302,"kind":1024,"name":"UNFULLSCREEN","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.UNFULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":303,"kind":1024,"name":"FOCUS","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.FOCUS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":304,"kind":1024,"name":"BLUR","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.BLUR","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":305,"kind":2,"name":"core/events/main/gameEvents","url":"modules/core_events_main_gameEvents.html","classes":"tsd-kind-module"},{"id":306,"kind":32,"name":"GameEvents","url":"modules/core_events_main_gameEvents.html#GameEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/main/gameEvents"},{"id":307,"kind":65536,"name":"__type","url":"modules/core_events_main_gameEvents.html#GameEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/main/gameEvents.GameEvents"},{"id":308,"kind":1024,"name":"FOCUS","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.FOCUS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":309,"kind":1024,"name":"BLUR","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.BLUR","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":310,"kind":1024,"name":"START","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.START","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":311,"kind":1024,"name":"STOP","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.STOP","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":312,"kind":1024,"name":"LOAD_BEGIN","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOAD_BEGIN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":313,"kind":1024,"name":"LOAD_FINISH","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOAD_FINISH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":314,"kind":1024,"name":"SCENE_ADD","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SCENE_ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":315,"kind":1024,"name":"SCENE_REMOVE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SCENE_REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":316,"kind":1024,"name":"LOAD_SCENE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOAD_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":317,"kind":1024,"name":"SWITCH_SCENE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SWITCH_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":318,"kind":1024,"name":"SHOW_SCENE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SHOW_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":319,"kind":1024,"name":"DRAW_SPLASH","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.DRAW_SPLASH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":320,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.CLEAR_FRAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":321,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SET_SCALE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":322,"kind":1024,"name":"SET_BACKGROUND","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SET_BACKGROUND","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":323,"kind":1024,"name":"SYNC_CACHE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SYNC_CACHE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":324,"kind":1024,"name":"LOCK_POINTER","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":325,"kind":1024,"name":"UNLOCK_POINTER","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.UNLOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":326,"kind":1024,"name":"CONTEXT_LOST","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.CONTEXT_LOST","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":327,"kind":1024,"name":"CONTEXT_RESTORED","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.CONTEXT_RESTORED","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":328,"kind":2,"name":"core/events/main/rendererEvents","url":"modules/core_events_main_rendererEvents.html","classes":"tsd-kind-module"},{"id":329,"kind":32,"name":"RendererEvents","url":"modules/core_events_main_rendererEvents.html#RendererEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/main/rendererEvents"},{"id":330,"kind":65536,"name":"__type","url":"modules/core_events_main_rendererEvents.html#RendererEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/main/rendererEvents.RendererEvents"},{"id":331,"kind":1024,"name":"PIPELINE_POOL","url":"modules/core_events_main_rendererEvents.html#RendererEvents.__type.PIPELINE_POOL","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/rendererEvents.RendererEvents.__type"},{"id":332,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_main_rendererEvents.html#RendererEvents.__type.CLEAR_FRAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/rendererEvents.RendererEvents.__type"},{"id":333,"kind":2,"name":"core/events/other/buttonEvents","url":"modules/core_events_other_buttonEvents.html","classes":"tsd-kind-module"},{"id":334,"kind":32,"name":"ButtonEvents","url":"modules/core_events_other_buttonEvents.html#ButtonEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/other/buttonEvents"},{"id":335,"kind":65536,"name":"__type","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/other/buttonEvents.ButtonEvents"},{"id":336,"kind":1024,"name":"CLICK","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type.CLICK","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/buttonEvents.ButtonEvents.__type"},{"id":337,"kind":1024,"name":"HOVER","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type.HOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/buttonEvents.ButtonEvents.__type"},{"id":338,"kind":1024,"name":"NOTHOVER","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type.NOTHOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/buttonEvents.ButtonEvents.__type"},{"id":339,"kind":2,"name":"core/events/other/cutsceneEvents","url":"modules/core_events_other_cutsceneEvents.html","classes":"tsd-kind-module"},{"id":340,"kind":32,"name":"CutsceneEvents","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/other/cutsceneEvents"},{"id":341,"kind":65536,"name":"__type","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/other/cutsceneEvents.CutsceneEvents"},{"id":342,"kind":1024,"name":"START","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type.START","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/cutsceneEvents.CutsceneEvents.__type"},{"id":343,"kind":1024,"name":"END","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type.END","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/cutsceneEvents.CutsceneEvents.__type"},{"id":344,"kind":1024,"name":"NEXT","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type.NEXT","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/cutsceneEvents.CutsceneEvents.__type"},{"id":345,"kind":2,"name":"core/events/other/groupEvents","url":"modules/core_events_other_groupEvents.html","classes":"tsd-kind-module"},{"id":346,"kind":32,"name":"GroupEvents","url":"modules/core_events_other_groupEvents.html#GroupEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/other/groupEvents"},{"id":347,"kind":65536,"name":"__type","url":"modules/core_events_other_groupEvents.html#GroupEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/other/groupEvents.GroupEvents"},{"id":348,"kind":1024,"name":"ADD","url":"modules/core_events_other_groupEvents.html#GroupEvents.__type.ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/groupEvents.GroupEvents.__type"},{"id":349,"kind":1024,"name":"REMOVE","url":"modules/core_events_other_groupEvents.html#GroupEvents.__type.REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/groupEvents.GroupEvents.__type"},{"id":350,"kind":2,"name":"core/game","url":"modules/core_game.html","classes":"tsd-kind-module"},{"id":351,"kind":128,"name":"Game","url":"classes/core_game.Game.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/game"},{"id":352,"kind":512,"name":"constructor","url":"classes/core_game.Game.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/game.Game"},{"id":353,"kind":1024,"name":"config","url":"classes/core_game.Game.html#config","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":354,"kind":1024,"name":"canvas","url":"classes/core_game.Game.html#canvas","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":355,"kind":1024,"name":"renderer","url":"classes/core_game.Game.html#renderer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":356,"kind":1024,"name":"stack","url":"classes/core_game.Game.html#stack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":357,"kind":1024,"name":"animationFrame","url":"classes/core_game.Game.html#animationFrame","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":358,"kind":1024,"name":"cacheManager","url":"classes/core_game.Game.html#cacheManager","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":359,"kind":1024,"name":"deltaTimeArray","url":"classes/core_game.Game.html#deltaTimeArray","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":360,"kind":1024,"name":"deltaTime","url":"classes/core_game.Game.html#deltaTime","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":361,"kind":1024,"name":"smoothDeltaTime","url":"classes/core_game.Game.html#smoothDeltaTime","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":362,"kind":1024,"name":"oldTime","url":"classes/core_game.Game.html#oldTime","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":363,"kind":1024,"name":"now","url":"classes/core_game.Game.html#now","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":364,"kind":1024,"name":"fps","url":"classes/core_game.Game.html#fps","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":365,"kind":1024,"name":"isInFullscreen","url":"classes/core_game.Game.html#isInFullscreen","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":366,"kind":1024,"name":"oldWidth","url":"classes/core_game.Game.html#oldWidth","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":367,"kind":1024,"name":"oldHeight","url":"classes/core_game.Game.html#oldHeight","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":368,"kind":1024,"name":"scenes","url":"classes/core_game.Game.html#scenes","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":369,"kind":65536,"name":"__type","url":"classes/core_game.Game.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/game.Game"},{"id":370,"kind":2048,"name":"add","url":"classes/core_game.Game.html#__type.add","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/game.Game.__type"},{"id":371,"kind":2048,"name":"remove","url":"classes/core_game.Game.html#__type.remove","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/game.Game.__type"},{"id":372,"kind":1024,"name":"isRendering","url":"classes/core_game.Game.html#isRendering","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":373,"kind":1024,"name":"isLoaded","url":"classes/core_game.Game.html#isLoaded","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":374,"kind":1024,"name":"splashScreen","url":"classes/core_game.Game.html#splashScreen","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":375,"kind":1024,"name":"eventEmitter","url":"classes/core_game.Game.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":376,"kind":1024,"name":"pluginManager","url":"classes/core_game.Game.html#pluginManager","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":377,"kind":1024,"name":"displayManager","url":"classes/core_game.Game.html#displayManager","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":378,"kind":1024,"name":"browser","url":"classes/core_game.Game.html#browser","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":379,"kind":2048,"name":"start","url":"classes/core_game.Game.html#start","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":380,"kind":2048,"name":"stop","url":"classes/core_game.Game.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":381,"kind":2048,"name":"loop","url":"classes/core_game.Game.html#loop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":382,"kind":2048,"name":"drawSplashScreen","url":"classes/core_game.Game.html#drawSplashScreen","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":383,"kind":2048,"name":"hideSplashScreen","url":"classes/core_game.Game.html#hideSplashScreen","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":384,"kind":2048,"name":"sleep","url":"classes/core_game.Game.html#sleep","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":385,"kind":2048,"name":"setScale","url":"classes/core_game.Game.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":386,"kind":2048,"name":"setBackground","url":"classes/core_game.Game.html#setBackground","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":387,"kind":2048,"name":"switchScene","url":"classes/core_game.Game.html#switchScene","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":388,"kind":2048,"name":"showScene","url":"classes/core_game.Game.html#showScene","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":389,"kind":2048,"name":"lockPointer","url":"classes/core_game.Game.html#lockPointer","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":390,"kind":2048,"name":"unlockPointer","url":"classes/core_game.Game.html#unlockPointer","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":391,"kind":2,"name":"core/gameobjects/circle","url":"modules/core_gameobjects_circle.html","classes":"tsd-kind-module"},{"id":392,"kind":128,"name":"Circle","url":"classes/core_gameobjects_circle.Circle.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/circle"},{"id":393,"kind":512,"name":"constructor","url":"classes/core_gameobjects_circle.Circle.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/circle.Circle"},{"id":394,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_circle.Circle.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/circle.Circle"},{"id":395,"kind":1024,"name":"texture","url":"classes/core_gameobjects_circle.Circle.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":396,"kind":1024,"name":"visible","url":"classes/core_gameobjects_circle.Circle.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":397,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_circle.Circle.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":398,"kind":1024,"name":"culled","url":"classes/core_gameobjects_circle.Circle.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":399,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_circle.Circle.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":400,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_circle.Circle.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":401,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_circle.Circle.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":402,"kind":1024,"name":"id","url":"classes/core_gameobjects_circle.Circle.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":403,"kind":1024,"name":"shape","url":"classes/core_gameobjects_circle.Circle.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":404,"kind":1024,"name":"position","url":"classes/core_gameobjects_circle.Circle.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":405,"kind":1024,"name":"w","url":"classes/core_gameobjects_circle.Circle.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":406,"kind":1024,"name":"h","url":"classes/core_gameobjects_circle.Circle.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":407,"kind":1024,"name":"r","url":"classes/core_gameobjects_circle.Circle.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":408,"kind":1024,"name":"options","url":"classes/core_gameobjects_circle.Circle.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":409,"kind":1024,"name":"game","url":"classes/core_gameobjects_circle.Circle.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":410,"kind":1024,"name":"scene","url":"classes/core_gameobjects_circle.Circle.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":411,"kind":1024,"name":"collider","url":"classes/core_gameobjects_circle.Circle.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":412,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_circle.Circle.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":413,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_circle.Circle.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":414,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_circle.Circle.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":415,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_circle.Circle.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":416,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_circle.Circle.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":417,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_circle.Circle.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":418,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_circle.Circle.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":419,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_circle.Circle.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":420,"kind":1024,"name":"physics","url":"classes/core_gameobjects_circle.Circle.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":421,"kind":65536,"name":"__type","url":"classes/core_gameobjects_circle.Circle.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/circle.Circle"},{"id":422,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_circle.Circle.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/circle.Circle.__type"},{"id":423,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_circle.Circle.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/circle.Circle.__type"},{"id":424,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_circle.Circle.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/circle.Circle.__type"},{"id":425,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_circle.Circle.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":426,"kind":2048,"name":"_update","url":"classes/core_gameobjects_circle.Circle.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":427,"kind":2048,"name":"setType","url":"classes/core_gameobjects_circle.Circle.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":428,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_circle.Circle.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":429,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_circle.Circle.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":430,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_circle.Circle.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":431,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_circle.Circle.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":432,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_circle.Circle.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":433,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_circle.Circle.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":434,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_circle.Circle.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":435,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_circle.Circle.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":436,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_circle.Circle.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":437,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_circle.Circle.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":438,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_circle.Circle.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":439,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_circle.Circle.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":440,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_circle.Circle.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":441,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_circle.Circle.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":442,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_circle.Circle.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":443,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_circle.Circle.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":444,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_circle.Circle.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":445,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_circle.Circle.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":446,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_circle.Circle.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":447,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_circle.Circle.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":448,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_circle.Circle.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":449,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_circle.Circle.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":450,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_circle.Circle.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":451,"kind":2,"name":"core/gameobjects/gameObject","url":"modules/core_gameobjects_gameObject.html","classes":"tsd-kind-module"},{"id":452,"kind":128,"name":"GameObject","url":"classes/core_gameobjects_gameObject.GameObject.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/gameobjects/gameObject"},{"id":453,"kind":512,"name":"constructor","url":"classes/core_gameobjects_gameObject.GameObject.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite","parent":"core/gameobjects/gameObject.GameObject"},{"id":454,"kind":1024,"name":"texture","url":"classes/core_gameobjects_gameObject.GameObject.html#texture","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":455,"kind":1024,"name":"visible","url":"classes/core_gameobjects_gameObject.GameObject.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":456,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_gameObject.GameObject.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":457,"kind":1024,"name":"culled","url":"classes/core_gameobjects_gameObject.GameObject.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":458,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_gameObject.GameObject.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":459,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_gameObject.GameObject.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":460,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_gameObject.GameObject.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":461,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_gameObject.GameObject.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":462,"kind":1024,"name":"id","url":"classes/core_gameobjects_gameObject.GameObject.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":463,"kind":1024,"name":"shape","url":"classes/core_gameobjects_gameObject.GameObject.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":464,"kind":1024,"name":"position","url":"classes/core_gameobjects_gameObject.GameObject.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":465,"kind":1024,"name":"w","url":"classes/core_gameobjects_gameObject.GameObject.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":466,"kind":1024,"name":"h","url":"classes/core_gameobjects_gameObject.GameObject.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":467,"kind":1024,"name":"r","url":"classes/core_gameobjects_gameObject.GameObject.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":468,"kind":1024,"name":"options","url":"classes/core_gameobjects_gameObject.GameObject.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":469,"kind":1024,"name":"game","url":"classes/core_gameobjects_gameObject.GameObject.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":470,"kind":1024,"name":"scene","url":"classes/core_gameobjects_gameObject.GameObject.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":471,"kind":1024,"name":"collider","url":"classes/core_gameobjects_gameObject.GameObject.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":472,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_gameObject.GameObject.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":473,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":474,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_gameObject.GameObject.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":475,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_gameObject.GameObject.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":476,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_gameObject.GameObject.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":477,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_gameObject.GameObject.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":478,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_gameObject.GameObject.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":479,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_gameObject.GameObject.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":480,"kind":1024,"name":"physics","url":"classes/core_gameobjects_gameObject.GameObject.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":481,"kind":65536,"name":"__type","url":"classes/core_gameobjects_gameObject.GameObject.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":482,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_gameObject.GameObject.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/gameObject.GameObject.__type"},{"id":483,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/gameObject.GameObject.__type"},{"id":484,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_gameObject.GameObject.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/gameObject.GameObject.__type"},{"id":485,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_gameObject.GameObject.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":486,"kind":2048,"name":"_update","url":"classes/core_gameobjects_gameObject.GameObject.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":487,"kind":2048,"name":"setType","url":"classes/core_gameobjects_gameObject.GameObject.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":488,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_gameObject.GameObject.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":489,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_gameObject.GameObject.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":490,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_gameObject.GameObject.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":491,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_gameObject.GameObject.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":492,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_gameObject.GameObject.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":493,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_gameObject.GameObject.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":494,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_gameObject.GameObject.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":495,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_gameObject.GameObject.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":496,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_gameObject.GameObject.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":497,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_gameObject.GameObject.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":498,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_gameObject.GameObject.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":499,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_gameObject.GameObject.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":500,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":501,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":502,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_gameObject.GameObject.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":503,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_gameObject.GameObject.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":504,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_gameObject.GameObject.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":505,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_gameObject.GameObject.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":506,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_gameObject.GameObject.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":507,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_gameObject.GameObject.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":508,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_gameObject.GameObject.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":509,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_gameObject.GameObject.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":510,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_gameObject.GameObject.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":511,"kind":2,"name":"core/gameobjects/misc/canvasModulate","url":"modules/core_gameobjects_misc_canvasModulate.html","classes":"tsd-kind-module"},{"id":512,"kind":128,"name":"CanvasModulate","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/misc/canvasModulate"},{"id":513,"kind":512,"name":"constructor","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":514,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":515,"kind":1024,"name":"texture","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":516,"kind":1024,"name":"visible","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":517,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":518,"kind":1024,"name":"culled","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":519,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":520,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":521,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":522,"kind":1024,"name":"id","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":523,"kind":1024,"name":"shape","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":524,"kind":1024,"name":"position","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":525,"kind":1024,"name":"w","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":526,"kind":1024,"name":"h","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":527,"kind":1024,"name":"r","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":528,"kind":1024,"name":"options","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":529,"kind":1024,"name":"game","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":530,"kind":1024,"name":"scene","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":531,"kind":1024,"name":"collider","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":532,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":533,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":534,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":535,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":536,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":537,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":538,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":539,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":540,"kind":1024,"name":"physics","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":541,"kind":65536,"name":"__type","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":542,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate.__type"},{"id":543,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate.__type"},{"id":544,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate.__type"},{"id":545,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":546,"kind":2048,"name":"_update","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":547,"kind":2048,"name":"setType","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":548,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":549,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":550,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":551,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":552,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":553,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":554,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":555,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":556,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":557,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":558,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":559,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":560,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":561,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":562,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":563,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":564,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":565,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":566,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":567,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":568,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":569,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":570,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":571,"kind":2,"name":"core/gameobjects/particles/particle","url":"modules/core_gameobjects_particles_particle.html","classes":"tsd-kind-module"},{"id":572,"kind":128,"name":"Particle","url":"classes/core_gameobjects_particles_particle.Particle.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/particles/particle"},{"id":573,"kind":512,"name":"constructor","url":"classes/core_gameobjects_particles_particle.Particle.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/particle.Particle"},{"id":574,"kind":1024,"name":"floatVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#floatVelocity","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":575,"kind":1024,"name":"originalFillColorOrIMGPath","url":"classes/core_gameobjects_particles_particle.Particle.html#originalFillColorOrIMGPath","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":576,"kind":1024,"name":"age","url":"classes/core_gameobjects_particles_particle.Particle.html#age","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":577,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_particles_particle.Particle.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/particle.Particle"},{"id":578,"kind":2048,"name":"_update","url":"classes/core_gameobjects_particles_particle.Particle.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/particle.Particle"},{"id":579,"kind":2048,"name":"setImagePath","url":"classes/core_gameobjects_particles_particle.Particle.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":580,"kind":1024,"name":"texture","url":"classes/core_gameobjects_particles_particle.Particle.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":581,"kind":1024,"name":"visible","url":"classes/core_gameobjects_particles_particle.Particle.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":582,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_particles_particle.Particle.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":583,"kind":1024,"name":"culled","url":"classes/core_gameobjects_particles_particle.Particle.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":584,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_particles_particle.Particle.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":585,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_particles_particle.Particle.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":586,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_particles_particle.Particle.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":587,"kind":1024,"name":"id","url":"classes/core_gameobjects_particles_particle.Particle.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":588,"kind":1024,"name":"shape","url":"classes/core_gameobjects_particles_particle.Particle.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":589,"kind":1024,"name":"position","url":"classes/core_gameobjects_particles_particle.Particle.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":590,"kind":1024,"name":"w","url":"classes/core_gameobjects_particles_particle.Particle.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":591,"kind":1024,"name":"h","url":"classes/core_gameobjects_particles_particle.Particle.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":592,"kind":1024,"name":"r","url":"classes/core_gameobjects_particles_particle.Particle.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":593,"kind":1024,"name":"options","url":"classes/core_gameobjects_particles_particle.Particle.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":594,"kind":1024,"name":"game","url":"classes/core_gameobjects_particles_particle.Particle.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":595,"kind":1024,"name":"scene","url":"classes/core_gameobjects_particles_particle.Particle.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":596,"kind":1024,"name":"collider","url":"classes/core_gameobjects_particles_particle.Particle.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":597,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_particles_particle.Particle.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":598,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":599,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_particles_particle.Particle.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":600,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_particles_particle.Particle.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":601,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_particles_particle.Particle.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":602,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_particles_particle.Particle.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":603,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_particles_particle.Particle.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":604,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_particles_particle.Particle.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":605,"kind":1024,"name":"physics","url":"classes/core_gameobjects_particles_particle.Particle.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":606,"kind":65536,"name":"__type","url":"classes/core_gameobjects_particles_particle.Particle.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":607,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_particles_particle.Particle.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/particles/particle.Particle.__type"},{"id":608,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/particles/particle.Particle.__type"},{"id":609,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_particles_particle.Particle.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/particles/particle.Particle.__type"},{"id":610,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_particles_particle.Particle.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":611,"kind":2048,"name":"setType","url":"classes/core_gameobjects_particles_particle.Particle.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":612,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_particles_particle.Particle.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":613,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_particles_particle.Particle.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":614,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_particles_particle.Particle.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":615,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_particles_particle.Particle.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":616,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":617,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_particles_particle.Particle.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":618,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_particles_particle.Particle.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":619,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":620,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_particles_particle.Particle.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":621,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_particles_particle.Particle.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":622,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_particles_particle.Particle.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":623,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":624,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":625,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":626,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_particles_particle.Particle.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":627,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_particles_particle.Particle.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":628,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_particles_particle.Particle.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":629,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_particles_particle.Particle.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":630,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_particles_particle.Particle.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":631,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_particles_particle.Particle.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":632,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_particles_particle.Particle.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":633,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_particles_particle.Particle.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":634,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_particles_particle.Particle.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":635,"kind":2,"name":"core/gameobjects/particles/particleEmitter","url":"modules/core_gameobjects_particles_particleEmitter.html","classes":"tsd-kind-module"},{"id":636,"kind":128,"name":"ParticleEmitter","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/particles/particleEmitter"},{"id":637,"kind":512,"name":"constructor","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":638,"kind":1024,"name":"id","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":639,"kind":1024,"name":"particle","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#particle","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":640,"kind":1024,"name":"rangeX","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":641,"kind":1024,"name":"rangeY","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":642,"kind":1024,"name":"amount","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#amount","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":643,"kind":1024,"name":"list","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#list","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":644,"kind":1024,"name":"game","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":645,"kind":1024,"name":"scene","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":646,"kind":1024,"name":"emitting","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#emitting","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":647,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":648,"kind":1024,"name":"floatRangeX","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#floatRangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":649,"kind":1024,"name":"floatRangeY","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#floatRangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":650,"kind":2048,"name":"create","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#create","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":651,"kind":2048,"name":"createOne","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#createOne","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":652,"kind":2048,"name":"emit","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#emit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":653,"kind":2048,"name":"stopEmit","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":654,"kind":2048,"name":"emitFor","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":655,"kind":2048,"name":"setRange","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setRange","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":656,"kind":2048,"name":"keepEmitting","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#keepEmitting","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":657,"kind":2048,"name":"offloadMaxAmount","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#offloadMaxAmount","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":658,"kind":2048,"name":"offloadBounds","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#offloadBounds","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":659,"kind":2048,"name":"offloadMaxAge","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#offloadMaxAge","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":660,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":661,"kind":2048,"name":"wobble","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#wobble","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":662,"kind":2048,"name":"float","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#float","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":663,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":664,"kind":2048,"name":"setImagePath","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":665,"kind":2,"name":"core/gameobjects/rect","url":"modules/core_gameobjects_rect.html","classes":"tsd-kind-module"},{"id":666,"kind":128,"name":"Rect","url":"classes/core_gameobjects_rect.Rect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/rect"},{"id":667,"kind":512,"name":"constructor","url":"classes/core_gameobjects_rect.Rect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/rect.Rect"},{"id":668,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_rect.Rect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/rect.Rect"},{"id":669,"kind":1024,"name":"texture","url":"classes/core_gameobjects_rect.Rect.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":670,"kind":1024,"name":"visible","url":"classes/core_gameobjects_rect.Rect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":671,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_rect.Rect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":672,"kind":1024,"name":"culled","url":"classes/core_gameobjects_rect.Rect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":673,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_rect.Rect.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":674,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_rect.Rect.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":675,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_rect.Rect.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":676,"kind":1024,"name":"id","url":"classes/core_gameobjects_rect.Rect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":677,"kind":1024,"name":"shape","url":"classes/core_gameobjects_rect.Rect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":678,"kind":1024,"name":"position","url":"classes/core_gameobjects_rect.Rect.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":679,"kind":1024,"name":"w","url":"classes/core_gameobjects_rect.Rect.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":680,"kind":1024,"name":"h","url":"classes/core_gameobjects_rect.Rect.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":681,"kind":1024,"name":"r","url":"classes/core_gameobjects_rect.Rect.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":682,"kind":1024,"name":"options","url":"classes/core_gameobjects_rect.Rect.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":683,"kind":1024,"name":"game","url":"classes/core_gameobjects_rect.Rect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":684,"kind":1024,"name":"scene","url":"classes/core_gameobjects_rect.Rect.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":685,"kind":1024,"name":"collider","url":"classes/core_gameobjects_rect.Rect.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":686,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_rect.Rect.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":687,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_rect.Rect.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":688,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_rect.Rect.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":689,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_rect.Rect.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":690,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_rect.Rect.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":691,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_rect.Rect.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":692,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_rect.Rect.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":693,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_rect.Rect.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":694,"kind":1024,"name":"physics","url":"classes/core_gameobjects_rect.Rect.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":695,"kind":65536,"name":"__type","url":"classes/core_gameobjects_rect.Rect.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/rect.Rect"},{"id":696,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_rect.Rect.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/rect.Rect.__type"},{"id":697,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_rect.Rect.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/rect.Rect.__type"},{"id":698,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_rect.Rect.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/rect.Rect.__type"},{"id":699,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_rect.Rect.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":700,"kind":2048,"name":"_update","url":"classes/core_gameobjects_rect.Rect.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":701,"kind":2048,"name":"setType","url":"classes/core_gameobjects_rect.Rect.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":702,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_rect.Rect.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":703,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_rect.Rect.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":704,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_rect.Rect.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":705,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_rect.Rect.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":706,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_rect.Rect.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":707,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_rect.Rect.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":708,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_rect.Rect.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":709,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_rect.Rect.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":710,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_rect.Rect.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":711,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_rect.Rect.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":712,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_rect.Rect.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":713,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_rect.Rect.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":714,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_rect.Rect.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":715,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_rect.Rect.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":716,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_rect.Rect.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":717,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_rect.Rect.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":718,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_rect.Rect.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":719,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_rect.Rect.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":720,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_rect.Rect.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":721,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_rect.Rect.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":722,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_rect.Rect.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":723,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_rect.Rect.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":724,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_rect.Rect.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":725,"kind":2,"name":"core/gameobjects/roundrect","url":"modules/core_gameobjects_roundrect.html","classes":"tsd-kind-module"},{"id":726,"kind":128,"name":"RoundRect","url":"classes/core_gameobjects_roundrect.RoundRect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/roundrect"},{"id":727,"kind":512,"name":"constructor","url":"classes/core_gameobjects_roundrect.RoundRect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/roundrect.RoundRect"},{"id":728,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_roundrect.RoundRect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/roundrect.RoundRect"},{"id":729,"kind":1024,"name":"texture","url":"classes/core_gameobjects_roundrect.RoundRect.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":730,"kind":1024,"name":"visible","url":"classes/core_gameobjects_roundrect.RoundRect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":731,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_roundrect.RoundRect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":732,"kind":1024,"name":"culled","url":"classes/core_gameobjects_roundrect.RoundRect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":733,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":734,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_roundrect.RoundRect.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":735,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_roundrect.RoundRect.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":736,"kind":1024,"name":"id","url":"classes/core_gameobjects_roundrect.RoundRect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":737,"kind":1024,"name":"shape","url":"classes/core_gameobjects_roundrect.RoundRect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":738,"kind":1024,"name":"position","url":"classes/core_gameobjects_roundrect.RoundRect.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":739,"kind":1024,"name":"w","url":"classes/core_gameobjects_roundrect.RoundRect.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":740,"kind":1024,"name":"h","url":"classes/core_gameobjects_roundrect.RoundRect.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":741,"kind":1024,"name":"r","url":"classes/core_gameobjects_roundrect.RoundRect.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":742,"kind":1024,"name":"options","url":"classes/core_gameobjects_roundrect.RoundRect.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":743,"kind":1024,"name":"game","url":"classes/core_gameobjects_roundrect.RoundRect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":744,"kind":1024,"name":"scene","url":"classes/core_gameobjects_roundrect.RoundRect.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":745,"kind":1024,"name":"collider","url":"classes/core_gameobjects_roundrect.RoundRect.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":746,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_roundrect.RoundRect.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":747,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":748,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":749,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_roundrect.RoundRect.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":750,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_roundrect.RoundRect.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":751,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_roundrect.RoundRect.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":752,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":753,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":754,"kind":1024,"name":"physics","url":"classes/core_gameobjects_roundrect.RoundRect.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":755,"kind":65536,"name":"__type","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/roundrect.RoundRect"},{"id":756,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/roundrect.RoundRect.__type"},{"id":757,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/roundrect.RoundRect.__type"},{"id":758,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/roundrect.RoundRect.__type"},{"id":759,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_roundrect.RoundRect.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":760,"kind":2048,"name":"_update","url":"classes/core_gameobjects_roundrect.RoundRect.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":761,"kind":2048,"name":"setType","url":"classes/core_gameobjects_roundrect.RoundRect.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":762,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":763,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":764,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_roundrect.RoundRect.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":765,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_roundrect.RoundRect.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":766,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":767,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":768,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":769,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":770,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_roundrect.RoundRect.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":771,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_roundrect.RoundRect.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":772,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_roundrect.RoundRect.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":773,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":774,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":775,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":776,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_roundrect.RoundRect.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":777,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_roundrect.RoundRect.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":778,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_roundrect.RoundRect.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":779,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_roundrect.RoundRect.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":780,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_roundrect.RoundRect.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":781,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_roundrect.RoundRect.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":782,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_roundrect.RoundRect.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":783,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_roundrect.RoundRect.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":784,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_roundrect.RoundRect.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":785,"kind":2,"name":"core/gameobjects/sprite","url":"modules/core_gameobjects_sprite.html","classes":"tsd-kind-module"},{"id":786,"kind":128,"name":"Sprite","url":"classes/core_gameobjects_sprite.Sprite.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/sprite"},{"id":787,"kind":512,"name":"constructor","url":"classes/core_gameobjects_sprite.Sprite.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":788,"kind":1024,"name":"currentRow","url":"classes/core_gameobjects_sprite.Sprite.html#currentRow","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":789,"kind":1024,"name":"currentCol","url":"classes/core_gameobjects_sprite.Sprite.html#currentCol","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":790,"kind":1024,"name":"anims","url":"classes/core_gameobjects_sprite.Sprite.html#anims","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":791,"kind":1024,"name":"defaultAnim","url":"classes/core_gameobjects_sprite.Sprite.html#defaultAnim","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":792,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_sprite.Sprite.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":793,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_sprite.Sprite.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":794,"kind":2048,"name":"setImagePath","url":"classes/core_gameobjects_sprite.Sprite.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":795,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_sprite.Sprite.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":796,"kind":1024,"name":"texture","url":"classes/core_gameobjects_sprite.Sprite.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":797,"kind":1024,"name":"visible","url":"classes/core_gameobjects_sprite.Sprite.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":798,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_sprite.Sprite.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":799,"kind":1024,"name":"culled","url":"classes/core_gameobjects_sprite.Sprite.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":800,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_sprite.Sprite.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":801,"kind":1024,"name":"id","url":"classes/core_gameobjects_sprite.Sprite.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":802,"kind":1024,"name":"shape","url":"classes/core_gameobjects_sprite.Sprite.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":803,"kind":1024,"name":"position","url":"classes/core_gameobjects_sprite.Sprite.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":804,"kind":1024,"name":"w","url":"classes/core_gameobjects_sprite.Sprite.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":805,"kind":1024,"name":"h","url":"classes/core_gameobjects_sprite.Sprite.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":806,"kind":1024,"name":"r","url":"classes/core_gameobjects_sprite.Sprite.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":807,"kind":1024,"name":"options","url":"classes/core_gameobjects_sprite.Sprite.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":808,"kind":1024,"name":"game","url":"classes/core_gameobjects_sprite.Sprite.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":809,"kind":1024,"name":"scene","url":"classes/core_gameobjects_sprite.Sprite.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":810,"kind":1024,"name":"collider","url":"classes/core_gameobjects_sprite.Sprite.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":811,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_sprite.Sprite.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":812,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_sprite.Sprite.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":813,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_sprite.Sprite.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":814,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_sprite.Sprite.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":815,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_sprite.Sprite.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":816,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_sprite.Sprite.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":817,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_sprite.Sprite.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":818,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_sprite.Sprite.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":819,"kind":1024,"name":"physics","url":"classes/core_gameobjects_sprite.Sprite.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":820,"kind":65536,"name":"__type","url":"classes/core_gameobjects_sprite.Sprite.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":821,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_sprite.Sprite.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/sprite.Sprite.__type"},{"id":822,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_sprite.Sprite.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/sprite.Sprite.__type"},{"id":823,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_sprite.Sprite.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/sprite.Sprite.__type"},{"id":824,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_sprite.Sprite.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":825,"kind":2048,"name":"_update","url":"classes/core_gameobjects_sprite.Sprite.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":826,"kind":2048,"name":"setType","url":"classes/core_gameobjects_sprite.Sprite.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":827,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_sprite.Sprite.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":828,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_sprite.Sprite.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":829,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_sprite.Sprite.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":830,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_sprite.Sprite.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":831,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_sprite.Sprite.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":832,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_sprite.Sprite.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":833,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_sprite.Sprite.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":834,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_sprite.Sprite.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":835,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_sprite.Sprite.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":836,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_sprite.Sprite.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":837,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_sprite.Sprite.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":838,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_sprite.Sprite.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":839,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_sprite.Sprite.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":840,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_sprite.Sprite.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":841,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_sprite.Sprite.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":842,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_sprite.Sprite.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":843,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_sprite.Sprite.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":844,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_sprite.Sprite.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":845,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_sprite.Sprite.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":846,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_sprite.Sprite.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":847,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_sprite.Sprite.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":848,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_sprite.Sprite.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":849,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_sprite.Sprite.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":850,"kind":2,"name":"core/gameobjects/ui/button","url":"modules/core_gameobjects_ui_button.html","classes":"tsd-kind-module"},{"id":851,"kind":128,"name":"Button","url":"classes/core_gameobjects_ui_button.Button.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/button"},{"id":852,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_button.Button.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/button.Button"},{"id":853,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_button.Button.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/button.Button"},{"id":854,"kind":1024,"name":"text","url":"classes/core_gameobjects_ui_button.Button.html#text","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":855,"kind":1024,"name":"hovering","url":"classes/core_gameobjects_ui_button.Button.html#hovering","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":856,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_button.Button.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/button.Button"},{"id":857,"kind":2048,"name":"on","url":"classes/core_gameobjects_ui_button.Button.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":858,"kind":2048,"name":"off","url":"classes/core_gameobjects_ui_button.Button.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":859,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_button.Button.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":860,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_button.Button.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":861,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_button.Button.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":862,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_button.Button.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":863,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_button.Button.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":864,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_button.Button.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":865,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_button.Button.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":866,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_button.Button.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":867,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_button.Button.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":868,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_button.Button.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":869,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_button.Button.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":870,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_button.Button.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":871,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_button.Button.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":872,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_button.Button.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":873,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_button.Button.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":874,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_button.Button.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":875,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_button.Button.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":876,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_button.Button.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":877,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_button.Button.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":878,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_button.Button.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":879,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_button.Button.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":880,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_button.Button.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":881,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_button.Button.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":882,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_button.Button.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":883,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_button.Button.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":884,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_button.Button.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":885,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_button.Button.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/button.Button.__type"},{"id":886,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_button.Button.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/button.Button.__type"},{"id":887,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_button.Button.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/button.Button.__type"},{"id":888,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_button.Button.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":889,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_button.Button.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":890,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_button.Button.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":891,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_button.Button.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":892,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_button.Button.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":893,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_button.Button.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":894,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_button.Button.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":895,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_button.Button.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":896,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_button.Button.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":897,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_button.Button.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":898,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_button.Button.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":899,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_button.Button.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":900,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_button.Button.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":901,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_button.Button.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":902,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_button.Button.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":903,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_button.Button.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":904,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_button.Button.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":905,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_button.Button.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":906,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_button.Button.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":907,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_button.Button.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":908,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_button.Button.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":909,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_button.Button.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":910,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_button.Button.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":911,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_button.Button.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":912,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_button.Button.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":913,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_button.Button.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":914,"kind":2,"name":"core/gameobjects/ui/imageRect","url":"modules/core_gameobjects_ui_imageRect.html","classes":"tsd-kind-module"},{"id":915,"kind":128,"name":"ImageRect","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/imageRect"},{"id":916,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":917,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":918,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":919,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":920,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":921,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":922,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":923,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":924,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":925,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":926,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":927,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":928,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":929,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":930,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":931,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":932,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":933,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":934,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":935,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":936,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":937,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":938,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":939,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":940,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":941,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":942,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":943,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":944,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":945,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/imageRect.ImageRect.__type"},{"id":946,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/imageRect.ImageRect.__type"},{"id":947,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/imageRect.ImageRect.__type"},{"id":948,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":949,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":950,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":951,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":952,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":953,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":954,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":955,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":956,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":957,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":958,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":959,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":960,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":961,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":962,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":963,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":964,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":965,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":966,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":967,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":968,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":969,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":970,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":971,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":972,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":973,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":974,"kind":2,"name":"core/gameobjects/ui/panel","url":"modules/core_gameobjects_ui_panel.html","classes":"tsd-kind-module"},{"id":975,"kind":128,"name":"Panel","url":"classes/core_gameobjects_ui_panel.Panel.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/panel"},{"id":976,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_panel.Panel.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/panel.Panel"},{"id":977,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_panel.Panel.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/panel.Panel"},{"id":978,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_panel.Panel.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":979,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_panel.Panel.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":980,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_panel.Panel.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":981,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_panel.Panel.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":982,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_panel.Panel.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":983,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_panel.Panel.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":984,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_panel.Panel.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":985,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_panel.Panel.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":986,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_panel.Panel.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":987,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_panel.Panel.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":988,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_panel.Panel.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":989,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_panel.Panel.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":990,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_panel.Panel.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":991,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_panel.Panel.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":992,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_panel.Panel.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":993,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_panel.Panel.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":994,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_panel.Panel.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":995,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_panel.Panel.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":996,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":997,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_panel.Panel.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":998,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_panel.Panel.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":999,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_panel.Panel.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1000,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_panel.Panel.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1001,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_panel.Panel.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1002,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_panel.Panel.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1003,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_panel.Panel.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1004,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_panel.Panel.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/panel.Panel"},{"id":1005,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_panel.Panel.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/panel.Panel.__type"},{"id":1006,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/panel.Panel.__type"},{"id":1007,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_panel.Panel.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/panel.Panel.__type"},{"id":1008,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_panel.Panel.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1009,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_panel.Panel.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1010,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_panel.Panel.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1011,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_panel.Panel.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1012,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_panel.Panel.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1013,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_panel.Panel.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1014,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_panel.Panel.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1015,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_panel.Panel.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1016,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_panel.Panel.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1017,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_panel.Panel.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1018,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_panel.Panel.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1019,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_panel.Panel.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1020,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_panel.Panel.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1021,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_panel.Panel.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1022,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_panel.Panel.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1023,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1024,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1025,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_panel.Panel.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1026,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_panel.Panel.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1027,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_panel.Panel.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1028,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_panel.Panel.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1029,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_panel.Panel.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1030,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_panel.Panel.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1031,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_panel.Panel.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1032,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_panel.Panel.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1033,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_panel.Panel.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1034,"kind":2,"name":"core/gameobjects/ui/text","url":"modules/core_gameobjects_ui_text.html","classes":"tsd-kind-module"},{"id":1035,"kind":128,"name":"Text","url":"classes/core_gameobjects_ui_text.Text.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/text"},{"id":1036,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_text.Text.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/text.Text"},{"id":1037,"kind":1024,"name":"text","url":"classes/core_gameobjects_ui_text.Text.html#text","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1038,"kind":1024,"name":"config","url":"classes/core_gameobjects_ui_text.Text.html#config","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/ui/text.Text"},{"id":1039,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_text.Text.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/text.Text"},{"id":1040,"kind":2048,"name":"setText","url":"classes/core_gameobjects_ui_text.Text.html#setText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1041,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_text.Text.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1042,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_text.Text.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1043,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_text.Text.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1044,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_text.Text.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1045,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_text.Text.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1046,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_text.Text.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1047,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_text.Text.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1048,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_text.Text.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1049,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_text.Text.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1050,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_text.Text.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1051,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_text.Text.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1052,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_text.Text.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1053,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_text.Text.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1054,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_text.Text.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1055,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_text.Text.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1056,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_text.Text.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1057,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_text.Text.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1058,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_text.Text.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1059,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_text.Text.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1060,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_text.Text.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1061,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_text.Text.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1062,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_text.Text.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1063,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_text.Text.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1064,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_text.Text.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1065,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_text.Text.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1066,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_text.Text.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1067,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_text.Text.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1068,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_text.Text.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/text.Text.__type"},{"id":1069,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_text.Text.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/text.Text.__type"},{"id":1070,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_text.Text.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/text.Text.__type"},{"id":1071,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_text.Text.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1072,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_text.Text.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1073,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_text.Text.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1074,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_text.Text.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1075,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_text.Text.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1076,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_text.Text.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1077,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_text.Text.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1078,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_text.Text.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1079,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_text.Text.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1080,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_text.Text.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1081,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_text.Text.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1082,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_text.Text.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1083,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_text.Text.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1084,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_text.Text.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1085,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_text.Text.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1086,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_text.Text.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1087,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_text.Text.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1088,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_text.Text.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1089,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_text.Text.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1090,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_text.Text.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1091,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_text.Text.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1092,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_text.Text.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1093,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_text.Text.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1094,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_text.Text.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1095,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_text.Text.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1096,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_text.Text.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1097,"kind":2,"name":"core/gameobjects/ui/ui","url":"modules/core_gameobjects_ui_ui.html","classes":"tsd-kind-module"},{"id":1098,"kind":128,"name":"UI","url":"classes/core_gameobjects_ui_ui.UI.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/gameobjects/ui/ui"},{"id":1099,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_ui.UI.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite","parent":"core/gameobjects/ui/ui.UI"},{"id":1100,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_ui.UI.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1101,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_ui.UI.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1102,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_ui.UI.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1103,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_ui.UI.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1104,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_ui.UI.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1105,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_ui.UI.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1106,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_ui.UI.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1107,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_ui.UI.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1108,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_ui.UI.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1109,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_ui.UI.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1110,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_ui.UI.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1111,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_ui.UI.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1112,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_ui.UI.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1113,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_ui.UI.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1114,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_ui.UI.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1115,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_ui.UI.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1116,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_ui.UI.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1117,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_ui.UI.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1118,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_ui.UI.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1119,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_ui.UI.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1120,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_ui.UI.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1121,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_ui.UI.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1122,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_ui.UI.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1123,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_ui.UI.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1124,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_ui.UI.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1125,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_ui.UI.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1126,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_ui.UI.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1127,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_ui.UI.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/ui.UI"},{"id":1128,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_ui.UI.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/ui.UI.__type"},{"id":1129,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_ui.UI.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/ui.UI.__type"},{"id":1130,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_ui.UI.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/ui.UI.__type"},{"id":1131,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_ui.UI.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1132,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_ui.UI.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1133,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_ui.UI.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1134,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_ui.UI.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1135,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_ui.UI.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1136,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_ui.UI.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1137,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_ui.UI.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1138,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_ui.UI.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1139,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_ui.UI.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1140,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_ui.UI.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1141,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_ui.UI.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1142,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_ui.UI.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1143,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_ui.UI.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1144,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_ui.UI.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1145,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_ui.UI.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1146,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_ui.UI.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1147,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_ui.UI.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1148,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_ui.UI.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1149,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_ui.UI.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1150,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_ui.UI.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1151,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_ui.UI.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1152,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_ui.UI.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1153,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_ui.UI.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1154,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_ui.UI.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1155,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_ui.UI.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1156,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_ui.UI.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1157,"kind":2,"name":"core/group/group","url":"modules/core_group_group.html","classes":"tsd-kind-module"},{"id":1158,"kind":128,"name":"Group","url":"classes/core_group_group.Group.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/group/group"},{"id":1159,"kind":512,"name":"constructor","url":"classes/core_group_group.Group.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter","parent":"core/group/group.Group"},{"id":1160,"kind":1024,"name":"stack","url":"classes/core_group_group.Group.html#stack","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/group/group.Group"},{"id":1161,"kind":1024,"name":"game","url":"classes/core_group_group.Group.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1162,"kind":1024,"name":"name","url":"classes/core_group_group.Group.html#name","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1163,"kind":2048,"name":"add","url":"classes/core_group_group.Group.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1164,"kind":2048,"name":"remove","url":"classes/core_group_group.Group.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1165,"kind":2048,"name":"find","url":"classes/core_group_group.Group.html#find","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1166,"kind":2048,"name":"indexOf","url":"classes/core_group_group.Group.html#indexOf","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1167,"kind":2048,"name":"each","url":"classes/core_group_group.Group.html#each","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1168,"kind":2048,"name":"pop","url":"classes/core_group_group.Group.html#pop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1169,"kind":2048,"name":"shift","url":"classes/core_group_group.Group.html#shift","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1170,"kind":2048,"name":"splice","url":"classes/core_group_group.Group.html#splice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1171,"kind":2048,"name":"filter","url":"classes/core_group_group.Group.html#filter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1172,"kind":2048,"name":"on","url":"classes/core_group_group.Group.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1173,"kind":2048,"name":"off","url":"classes/core_group_group.Group.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1174,"kind":2048,"name":"at","url":"classes/core_group_group.Group.html#at","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1175,"kind":262144,"name":"group","url":"classes/core_group_group.Group.html#group","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1176,"kind":262144,"name":"length","url":"classes/core_group_group.Group.html#length","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1177,"kind":2,"name":"core/input/input","url":"modules/core_input_input.html","classes":"tsd-kind-module"},{"id":1178,"kind":128,"name":"Input","url":"classes/core_input_input.Input.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/input"},{"id":1179,"kind":512,"name":"constructor","url":"classes/core_input_input.Input.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1180,"kind":1024,"name":"game","url":"classes/core_input_input.Input.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1181,"kind":1024,"name":"scene","url":"classes/core_input_input.Input.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1182,"kind":2048,"name":"createKeyboardInput","url":"classes/core_input_input.Input.html#createKeyboardInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1183,"kind":2048,"name":"createMouseInput","url":"classes/core_input_input.Input.html#createMouseInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1184,"kind":2,"name":"core/input/keyboardInput","url":"modules/core_input_keyboardInput.html","classes":"tsd-kind-module"},{"id":1185,"kind":128,"name":"KeyboardInput","url":"classes/core_input_keyboardInput.KeyboardInput.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/keyboardInput"},{"id":1186,"kind":512,"name":"constructor","url":"classes/core_input_keyboardInput.KeyboardInput.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1187,"kind":1024,"name":"game","url":"classes/core_input_keyboardInput.KeyboardInput.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1188,"kind":1024,"name":"scene","url":"classes/core_input_keyboardInput.KeyboardInput.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1189,"kind":1024,"name":"eventEmitter","url":"classes/core_input_keyboardInput.KeyboardInput.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1190,"kind":1024,"name":"keys","url":"classes/core_input_keyboardInput.KeyboardInput.html#keys","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1191,"kind":65536,"name":"__type","url":"classes/core_input_keyboardInput.KeyboardInput.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1192,"kind":2048,"name":"addKey","url":"classes/core_input_keyboardInput.KeyboardInput.html#addKey","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1193,"kind":2048,"name":"addKeys","url":"classes/core_input_keyboardInput.KeyboardInput.html#addKeys","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1194,"kind":2048,"name":"removeKey","url":"classes/core_input_keyboardInput.KeyboardInput.html#removeKey","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1195,"kind":2048,"name":"onInput","url":"classes/core_input_keyboardInput.KeyboardInput.html#onInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1196,"kind":262144,"name":"inputs","url":"classes/core_input_keyboardInput.KeyboardInput.html#inputs","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1197,"kind":2,"name":"core/input/models/key","url":"modules/core_input_models_key.html","classes":"tsd-kind-module"},{"id":1198,"kind":128,"name":"Key","url":"classes/core_input_models_key.Key.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/models/key"},{"id":1199,"kind":512,"name":"constructor","url":"classes/core_input_models_key.Key.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1200,"kind":1024,"name":"keyCode","url":"classes/core_input_models_key.Key.html#keyCode","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1201,"kind":1024,"name":"descriptor","url":"classes/core_input_models_key.Key.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1202,"kind":1024,"name":"game","url":"classes/core_input_models_key.Key.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1203,"kind":1024,"name":"scene","url":"classes/core_input_models_key.Key.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1204,"kind":1024,"name":"keyboardInput","url":"classes/core_input_models_key.Key.html#keyboardInput","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1205,"kind":1024,"name":"isDown","url":"classes/core_input_models_key.Key.html#isDown","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1206,"kind":1024,"name":"isUp","url":"classes/core_input_models_key.Key.html#isUp","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1207,"kind":1024,"name":"isJustPressed","url":"classes/core_input_models_key.Key.html#isJustPressed","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1208,"kind":1024,"name":"state","url":"classes/core_input_models_key.Key.html#state","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1209,"kind":2048,"name":"registerListeners","url":"classes/core_input_models_key.Key.html#registerListeners","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/input/models/key.Key"},{"id":1210,"kind":2048,"name":"onInput","url":"classes/core_input_models_key.Key.html#onInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1211,"kind":2,"name":"core/input/models/mouse","url":"modules/core_input_models_mouse.html","classes":"tsd-kind-module"},{"id":1212,"kind":128,"name":"Mouse","url":"classes/core_input_models_mouse.Mouse.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/models/mouse"},{"id":1213,"kind":512,"name":"constructor","url":"classes/core_input_models_mouse.Mouse.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1214,"kind":1024,"name":"button","url":"classes/core_input_models_mouse.Mouse.html#button","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1215,"kind":1024,"name":"descriptor","url":"classes/core_input_models_mouse.Mouse.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1216,"kind":1024,"name":"game","url":"classes/core_input_models_mouse.Mouse.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1217,"kind":1024,"name":"scene","url":"classes/core_input_models_mouse.Mouse.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1218,"kind":1024,"name":"mouseInput","url":"classes/core_input_models_mouse.Mouse.html#mouseInput","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1219,"kind":2048,"name":"registerListeners","url":"classes/core_input_models_mouse.Mouse.html#registerListeners","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/input/models/mouse.Mouse"},{"id":1220,"kind":2,"name":"core/input/mouseInput","url":"modules/core_input_mouseInput.html","classes":"tsd-kind-module"},{"id":1221,"kind":128,"name":"MouseInput","url":"classes/core_input_mouseInput.MouseInput.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/mouseInput"},{"id":1222,"kind":512,"name":"constructor","url":"classes/core_input_mouseInput.MouseInput.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1223,"kind":1024,"name":"game","url":"classes/core_input_mouseInput.MouseInput.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1224,"kind":1024,"name":"scene","url":"classes/core_input_mouseInput.MouseInput.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1225,"kind":1024,"name":"eventEmitter","url":"classes/core_input_mouseInput.MouseInput.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1226,"kind":1024,"name":"mice","url":"classes/core_input_mouseInput.MouseInput.html#mice","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1227,"kind":65536,"name":"__type","url":"classes/core_input_mouseInput.MouseInput.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1228,"kind":2048,"name":"addMouse","url":"classes/core_input_mouseInput.MouseInput.html#addMouse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1229,"kind":2048,"name":"addMice","url":"classes/core_input_mouseInput.MouseInput.html#addMice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1230,"kind":262144,"name":"inputs","url":"classes/core_input_mouseInput.MouseInput.html#inputs","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1231,"kind":2,"name":"core/lights/staticLight","url":"modules/core_lights_staticLight.html","classes":"tsd-kind-module"},{"id":1232,"kind":128,"name":"StaticLight","url":"classes/core_lights_staticLight.StaticLight.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/lights/staticLight"},{"id":1233,"kind":512,"name":"constructor","url":"classes/core_lights_staticLight.StaticLight.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/lights/staticLight.StaticLight"},{"id":1234,"kind":1024,"name":"color","url":"classes/core_lights_staticLight.StaticLight.html#color","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/lights/staticLight.StaticLight"},{"id":1235,"kind":1024,"name":"alpha","url":"classes/core_lights_staticLight.StaticLight.html#alpha","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/lights/staticLight.StaticLight"},{"id":1236,"kind":2048,"name":"_draw","url":"classes/core_lights_staticLight.StaticLight.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/lights/staticLight.StaticLight"},{"id":1237,"kind":2048,"name":"setFillColorAlpha","url":"classes/core_lights_staticLight.StaticLight.html#setFillColorAlpha","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/lights/staticLight.StaticLight"},{"id":1238,"kind":1024,"name":"texture","url":"classes/core_lights_staticLight.StaticLight.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1239,"kind":1024,"name":"visible","url":"classes/core_lights_staticLight.StaticLight.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1240,"kind":1024,"name":"zIndex","url":"classes/core_lights_staticLight.StaticLight.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1241,"kind":1024,"name":"culled","url":"classes/core_lights_staticLight.StaticLight.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1242,"kind":2048,"name":"setVisible","url":"classes/core_lights_staticLight.StaticLight.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1243,"kind":2048,"name":"setScale","url":"classes/core_lights_staticLight.StaticLight.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1244,"kind":2048,"name":"setFillColor","url":"classes/core_lights_staticLight.StaticLight.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1245,"kind":1024,"name":"id","url":"classes/core_lights_staticLight.StaticLight.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1246,"kind":1024,"name":"shape","url":"classes/core_lights_staticLight.StaticLight.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1247,"kind":1024,"name":"position","url":"classes/core_lights_staticLight.StaticLight.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1248,"kind":1024,"name":"w","url":"classes/core_lights_staticLight.StaticLight.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1249,"kind":1024,"name":"h","url":"classes/core_lights_staticLight.StaticLight.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1250,"kind":1024,"name":"r","url":"classes/core_lights_staticLight.StaticLight.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1251,"kind":1024,"name":"options","url":"classes/core_lights_staticLight.StaticLight.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1252,"kind":1024,"name":"game","url":"classes/core_lights_staticLight.StaticLight.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1253,"kind":1024,"name":"scene","url":"classes/core_lights_staticLight.StaticLight.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1254,"kind":1024,"name":"collider","url":"classes/core_lights_staticLight.StaticLight.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1255,"kind":1024,"name":"collidesWith","url":"classes/core_lights_staticLight.StaticLight.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1256,"kind":1024,"name":"hitbox","url":"classes/core_lights_staticLight.StaticLight.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1257,"kind":1024,"name":"velocity","url":"classes/core_lights_staticLight.StaticLight.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1258,"kind":1024,"name":"bounds","url":"classes/core_lights_staticLight.StaticLight.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1259,"kind":1024,"name":"enabled","url":"classes/core_lights_staticLight.StaticLight.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1260,"kind":1024,"name":"isAttached","url":"classes/core_lights_staticLight.StaticLight.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1261,"kind":1024,"name":"attachedChildren","url":"classes/core_lights_staticLight.StaticLight.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1262,"kind":1024,"name":"attachOffset","url":"classes/core_lights_staticLight.StaticLight.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1263,"kind":1024,"name":"physics","url":"classes/core_lights_staticLight.StaticLight.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1264,"kind":65536,"name":"__type","url":"classes/core_lights_staticLight.StaticLight.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/lights/staticLight.StaticLight"},{"id":1265,"kind":2048,"name":"addCollider","url":"classes/core_lights_staticLight.StaticLight.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/lights/staticLight.StaticLight.__type"},{"id":1266,"kind":2048,"name":"addHitbox","url":"classes/core_lights_staticLight.StaticLight.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/lights/staticLight.StaticLight.__type"},{"id":1267,"kind":2048,"name":"setBounds","url":"classes/core_lights_staticLight.StaticLight.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/lights/staticLight.StaticLight.__type"},{"id":1268,"kind":2048,"name":"setEnabled","url":"classes/core_lights_staticLight.StaticLight.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1269,"kind":2048,"name":"_update","url":"classes/core_lights_staticLight.StaticLight.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1270,"kind":2048,"name":"setType","url":"classes/core_lights_staticLight.StaticLight.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1271,"kind":2048,"name":"attachTo","url":"classes/core_lights_staticLight.StaticLight.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1272,"kind":2048,"name":"attachChild","url":"classes/core_lights_staticLight.StaticLight.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1273,"kind":2048,"name":"detachFrom","url":"classes/core_lights_staticLight.StaticLight.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1274,"kind":2048,"name":"detachChild","url":"classes/core_lights_staticLight.StaticLight.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1275,"kind":2048,"name":"setVelocity","url":"classes/core_lights_staticLight.StaticLight.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1276,"kind":2048,"name":"setVelocityX","url":"classes/core_lights_staticLight.StaticLight.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1277,"kind":2048,"name":"setVelocityY","url":"classes/core_lights_staticLight.StaticLight.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1278,"kind":2048,"name":"accelerateVelocity","url":"classes/core_lights_staticLight.StaticLight.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1279,"kind":2048,"name":"applyFriction","url":"classes/core_lights_staticLight.StaticLight.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1280,"kind":2048,"name":"applyGravity","url":"classes/core_lights_staticLight.StaticLight.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1281,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_lights_staticLight.StaticLight.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1282,"kind":2048,"name":"reflectVelocity","url":"classes/core_lights_staticLight.StaticLight.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1283,"kind":2048,"name":"autoFitHitbox","url":"classes/core_lights_staticLight.StaticLight.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1284,"kind":2048,"name":"scaleHitbox","url":"classes/core_lights_staticLight.StaticLight.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1285,"kind":2048,"name":"getTop","url":"classes/core_lights_staticLight.StaticLight.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1286,"kind":2048,"name":"getBottom","url":"classes/core_lights_staticLight.StaticLight.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1287,"kind":2048,"name":"getLeft","url":"classes/core_lights_staticLight.StaticLight.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1288,"kind":2048,"name":"getRight","url":"classes/core_lights_staticLight.StaticLight.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1289,"kind":2048,"name":"getCenter","url":"classes/core_lights_staticLight.StaticLight.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1290,"kind":2048,"name":"getCenterY","url":"classes/core_lights_staticLight.StaticLight.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1291,"kind":2048,"name":"getCenterX","url":"classes/core_lights_staticLight.StaticLight.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1292,"kind":2048,"name":"isColliding","url":"classes/core_lights_staticLight.StaticLight.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1293,"kind":2048,"name":"isCollidingGroup","url":"classes/core_lights_staticLight.StaticLight.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1294,"kind":2,"name":"core/loader/loader","url":"modules/core_loader_loader.html","classes":"tsd-kind-module"},{"id":1295,"kind":128,"name":"Loader","url":"classes/core_loader_loader.Loader.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/loader/loader"},{"id":1296,"kind":512,"name":"constructor","url":"classes/core_loader_loader.Loader.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1297,"kind":1024,"name":"game","url":"classes/core_loader_loader.Loader.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1298,"kind":1024,"name":"scene","url":"classes/core_loader_loader.Loader.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1299,"kind":1024,"name":"textureStack","url":"classes/core_loader_loader.Loader.html#textureStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1300,"kind":1024,"name":"jsonStack","url":"classes/core_loader_loader.Loader.html#jsonStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1301,"kind":1024,"name":"htmlStack","url":"classes/core_loader_loader.Loader.html#htmlStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1302,"kind":1024,"name":"xmlStack","url":"classes/core_loader_loader.Loader.html#xmlStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1303,"kind":1024,"name":"fontStack","url":"classes/core_loader_loader.Loader.html#fontStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1304,"kind":1024,"name":"audioStack","url":"classes/core_loader_loader.Loader.html#audioStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1305,"kind":2048,"name":"tryCache","url":"classes/core_loader_loader.Loader.html#tryCache","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/loader/loader.Loader"},{"id":1306,"kind":2048,"name":"saveCache","url":"classes/core_loader_loader.Loader.html#saveCache","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/loader/loader.Loader"},{"id":1307,"kind":2048,"name":"loadTexture","url":"classes/core_loader_loader.Loader.html#loadTexture","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1308,"kind":2048,"name":"loadTextureSheet","url":"classes/core_loader_loader.Loader.html#loadTextureSheet","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1309,"kind":2048,"name":"loadTextureAtlas","url":"classes/core_loader_loader.Loader.html#loadTextureAtlas","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1310,"kind":2048,"name":"loadJSON","url":"classes/core_loader_loader.Loader.html#loadJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1311,"kind":2048,"name":"loadHTML","url":"classes/core_loader_loader.Loader.html#loadHTML","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1312,"kind":2048,"name":"loadXML","url":"classes/core_loader_loader.Loader.html#loadXML","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1313,"kind":2048,"name":"loadFont","url":"classes/core_loader_loader.Loader.html#loadFont","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1314,"kind":2048,"name":"loadAudio","url":"classes/core_loader_loader.Loader.html#loadAudio","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1315,"kind":2,"name":"core/map/map","url":"modules/core_map_map.html","classes":"tsd-kind-module"},{"id":1316,"kind":128,"name":"Map","url":"classes/core_map_map.Map.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/map"},{"id":1317,"kind":512,"name":"constructor","url":"classes/core_map_map.Map.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1318,"kind":1024,"name":"id","url":"classes/core_map_map.Map.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1319,"kind":1024,"name":"shape","url":"classes/core_map_map.Map.html#shape","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1320,"kind":1024,"name":"origin","url":"classes/core_map_map.Map.html#origin","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1321,"kind":1024,"name":"tileLayers","url":"classes/core_map_map.Map.html#tileLayers","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1322,"kind":1024,"name":"game","url":"classes/core_map_map.Map.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1323,"kind":1024,"name":"scene","url":"classes/core_map_map.Map.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1324,"kind":1024,"name":"visible","url":"classes/core_map_map.Map.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1325,"kind":1024,"name":"zIndex","url":"classes/core_map_map.Map.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1326,"kind":1024,"name":"culled","url":"classes/core_map_map.Map.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1327,"kind":2048,"name":"_draw","url":"classes/core_map_map.Map.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1328,"kind":2,"name":"core/map/tile","url":"modules/core_map_tile.html","classes":"tsd-kind-module"},{"id":1329,"kind":128,"name":"Tile","url":"classes/core_map_tile.Tile.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tile"},{"id":1330,"kind":512,"name":"constructor","url":"classes/core_map_tile.Tile.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1331,"kind":1024,"name":"id","url":"classes/core_map_tile.Tile.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1332,"kind":1024,"name":"position","url":"classes/core_map_tile.Tile.html#position","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1333,"kind":1024,"name":"w","url":"classes/core_map_tile.Tile.html#w","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1334,"kind":1024,"name":"h","url":"classes/core_map_tile.Tile.html#h","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1335,"kind":2,"name":"core/map/tilelayer","url":"modules/core_map_tilelayer.html","classes":"tsd-kind-module"},{"id":1336,"kind":128,"name":"TileLayer","url":"classes/core_map_tilelayer.TileLayer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tilelayer"},{"id":1337,"kind":512,"name":"constructor","url":"classes/core_map_tilelayer.TileLayer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1338,"kind":1024,"name":"tileset","url":"classes/core_map_tilelayer.TileLayer.html#tileset","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1339,"kind":1024,"name":"map","url":"classes/core_map_tilelayer.TileLayer.html#map","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1340,"kind":1024,"name":"game","url":"classes/core_map_tilelayer.TileLayer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1341,"kind":1024,"name":"scene","url":"classes/core_map_tilelayer.TileLayer.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1342,"kind":1024,"name":"zIndex","url":"classes/core_map_tilelayer.TileLayer.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1343,"kind":1024,"name":"visible","url":"classes/core_map_tilelayer.TileLayer.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1344,"kind":2,"name":"core/map/tilemap","url":"modules/core_map_tilemap.html","classes":"tsd-kind-module"},{"id":1345,"kind":128,"name":"TileMap","url":"classes/core_map_tilemap.TileMap.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tilemap"},{"id":1346,"kind":512,"name":"constructor","url":"classes/core_map_tilemap.TileMap.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/map/tilemap.TileMap"},{"id":1347,"kind":2048,"name":"_draw","url":"classes/core_map_tilemap.TileMap.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/map/tilemap.TileMap"},{"id":1348,"kind":2048,"name":"sortTileLayers","url":"classes/core_map_tilemap.TileMap.html#sortTileLayers","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/map/tilemap.TileMap"},{"id":1349,"kind":1024,"name":"id","url":"classes/core_map_tilemap.TileMap.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1350,"kind":1024,"name":"shape","url":"classes/core_map_tilemap.TileMap.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1351,"kind":1024,"name":"origin","url":"classes/core_map_tilemap.TileMap.html#origin","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1352,"kind":1024,"name":"tileLayers","url":"classes/core_map_tilemap.TileMap.html#tileLayers","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1353,"kind":1024,"name":"game","url":"classes/core_map_tilemap.TileMap.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1354,"kind":1024,"name":"scene","url":"classes/core_map_tilemap.TileMap.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1355,"kind":1024,"name":"visible","url":"classes/core_map_tilemap.TileMap.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1356,"kind":1024,"name":"zIndex","url":"classes/core_map_tilemap.TileMap.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1357,"kind":1024,"name":"culled","url":"classes/core_map_tilemap.TileMap.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1358,"kind":2,"name":"core/map/tileset","url":"modules/core_map_tileset.html","classes":"tsd-kind-module"},{"id":1359,"kind":128,"name":"Tileset","url":"classes/core_map_tileset.Tileset.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tileset"},{"id":1360,"kind":512,"name":"constructor","url":"classes/core_map_tileset.Tileset.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1361,"kind":1024,"name":"texture","url":"classes/core_map_tileset.Tileset.html#texture","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1362,"kind":1024,"name":"tileW","url":"classes/core_map_tileset.Tileset.html#tileW","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1363,"kind":1024,"name":"tileH","url":"classes/core_map_tileset.Tileset.html#tileH","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1364,"kind":1024,"name":"rows","url":"classes/core_map_tileset.Tileset.html#rows","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1365,"kind":1024,"name":"cols","url":"classes/core_map_tileset.Tileset.html#cols","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1366,"kind":1024,"name":"game","url":"classes/core_map_tileset.Tileset.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1367,"kind":1024,"name":"scene","url":"classes/core_map_tileset.Tileset.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1368,"kind":1024,"name":"tiles","url":"classes/core_map_tileset.Tileset.html#tiles","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1369,"kind":2048,"name":"generateTiles","url":"classes/core_map_tileset.Tileset.html#generateTiles","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/map/tileset.Tileset"},{"id":1370,"kind":2048,"name":"createTile","url":"classes/core_map_tileset.Tileset.html#createTile","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/map/tileset.Tileset"},{"id":1371,"kind":2048,"name":"getTile","url":"classes/core_map_tileset.Tileset.html#getTile","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1372,"kind":2,"name":"core/math/clamp","url":"modules/core_math_clamp.html","classes":"tsd-kind-module"},{"id":1373,"kind":64,"name":"clamp","url":"modules/core_math_clamp.html#clamp","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/clamp"},{"id":1374,"kind":2,"name":"core/math/lerp","url":"modules/core_math_lerp.html","classes":"tsd-kind-module"},{"id":1375,"kind":64,"name":"lerp","url":"modules/core_math_lerp.html#lerp","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/lerp"},{"id":1376,"kind":2,"name":"core/math/randomFloat","url":"modules/core_math_randomFloat.html","classes":"tsd-kind-module"},{"id":1377,"kind":64,"name":"randomFloat","url":"modules/core_math_randomFloat.html#randomFloat","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/randomFloat"},{"id":1378,"kind":2,"name":"core/math/randomInt","url":"modules/core_math_randomInt.html","classes":"tsd-kind-module"},{"id":1379,"kind":64,"name":"randomInt","url":"modules/core_math_randomInt.html#randomInt","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/randomInt"},{"id":1380,"kind":2,"name":"core/math/vector2","url":"modules/core_math_vector2.html","classes":"tsd-kind-module"},{"id":1381,"kind":128,"name":"Vector2","url":"classes/core_math_vector2.Vector2.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/math/vector2"},{"id":1382,"kind":262144,"name":"ZERO","url":"classes/core_math_vector2.Vector2.html#ZERO","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1383,"kind":262144,"name":"UP","url":"classes/core_math_vector2.Vector2.html#UP","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1384,"kind":262144,"name":"DOWN","url":"classes/core_math_vector2.Vector2.html#DOWN","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1385,"kind":262144,"name":"LEFT","url":"classes/core_math_vector2.Vector2.html#LEFT","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1386,"kind":262144,"name":"RIGHT","url":"classes/core_math_vector2.Vector2.html#RIGHT","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1387,"kind":2048,"name":"CREATE","url":"classes/core_math_vector2.Vector2.html#CREATE","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1388,"kind":2048,"name":"fromVector2Like","url":"classes/core_math_vector2.Vector2.html#fromVector2Like","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1389,"kind":2048,"name":"toVector2Like","url":"classes/core_math_vector2.Vector2.html#toVector2Like","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1390,"kind":2048,"name":"fromVec","url":"classes/core_math_vector2.Vector2.html#fromVec","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1391,"kind":512,"name":"constructor","url":"classes/core_math_vector2.Vector2.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1392,"kind":1024,"name":"x","url":"classes/core_math_vector2.Vector2.html#x","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1393,"kind":1024,"name":"y","url":"classes/core_math_vector2.Vector2.html#y","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1394,"kind":2048,"name":"setValues","url":"classes/core_math_vector2.Vector2.html#setValues","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1395,"kind":2048,"name":"setValuesVec","url":"classes/core_math_vector2.Vector2.html#setValuesVec","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1396,"kind":2048,"name":"add","url":"classes/core_math_vector2.Vector2.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1397,"kind":2048,"name":"addNumber","url":"classes/core_math_vector2.Vector2.html#addNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1398,"kind":2048,"name":"subtract","url":"classes/core_math_vector2.Vector2.html#subtract","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1399,"kind":2048,"name":"subtractNumber","url":"classes/core_math_vector2.Vector2.html#subtractNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1400,"kind":2048,"name":"multiply","url":"classes/core_math_vector2.Vector2.html#multiply","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1401,"kind":2048,"name":"multiplyNumber","url":"classes/core_math_vector2.Vector2.html#multiplyNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1402,"kind":2048,"name":"divide","url":"classes/core_math_vector2.Vector2.html#divide","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1403,"kind":2048,"name":"divideNumber","url":"classes/core_math_vector2.Vector2.html#divideNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1404,"kind":2048,"name":"round","url":"classes/core_math_vector2.Vector2.html#round","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1405,"kind":2048,"name":"angleBetween","url":"classes/core_math_vector2.Vector2.html#angleBetween","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1406,"kind":2048,"name":"angleTo","url":"classes/core_math_vector2.Vector2.html#angleTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1407,"kind":2048,"name":"clone","url":"classes/core_math_vector2.Vector2.html#clone","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1408,"kind":2048,"name":"distance","url":"classes/core_math_vector2.Vector2.html#distance","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1409,"kind":2048,"name":"distanceSqr","url":"classes/core_math_vector2.Vector2.html#distanceSqr","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1410,"kind":2048,"name":"dot","url":"classes/core_math_vector2.Vector2.html#dot","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1411,"kind":2048,"name":"crossProduct","url":"classes/core_math_vector2.Vector2.html#crossProduct","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1412,"kind":2048,"name":"equals","url":"classes/core_math_vector2.Vector2.html#equals","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1413,"kind":2048,"name":"perpendicular","url":"classes/core_math_vector2.Vector2.html#perpendicular","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1414,"kind":2048,"name":"moveTowards","url":"classes/core_math_vector2.Vector2.html#moveTowards","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1415,"kind":2048,"name":"normalize","url":"classes/core_math_vector2.Vector2.html#normalize","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1416,"kind":2048,"name":"getNormal","url":"classes/core_math_vector2.Vector2.html#getNormal","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1417,"kind":2048,"name":"isZero","url":"classes/core_math_vector2.Vector2.html#isZero","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1418,"kind":2048,"name":"scale","url":"classes/core_math_vector2.Vector2.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1419,"kind":2048,"name":"negate","url":"classes/core_math_vector2.Vector2.html#negate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1420,"kind":2048,"name":"magnitude","url":"classes/core_math_vector2.Vector2.html#magnitude","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1421,"kind":2048,"name":"magnitudeSqr","url":"classes/core_math_vector2.Vector2.html#magnitudeSqr","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1422,"kind":2048,"name":"scaleToMagnitude","url":"classes/core_math_vector2.Vector2.html#scaleToMagnitude","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1423,"kind":2048,"name":"toString","url":"classes/core_math_vector2.Vector2.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1424,"kind":2048,"name":"toPrecision","url":"classes/core_math_vector2.Vector2.html#toPrecision","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1425,"kind":2048,"name":"translate","url":"classes/core_math_vector2.Vector2.html#translate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1426,"kind":2048,"name":"translateX","url":"classes/core_math_vector2.Vector2.html#translateX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1427,"kind":2048,"name":"translateY","url":"classes/core_math_vector2.Vector2.html#translateY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1428,"kind":2048,"name":"tripleProduct","url":"classes/core_math_vector2.Vector2.html#tripleProduct","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1429,"kind":2048,"name":"clamp","url":"classes/core_math_vector2.Vector2.html#clamp","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1430,"kind":2048,"name":"clampMin","url":"classes/core_math_vector2.Vector2.html#clampMin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1431,"kind":2048,"name":"clampMax","url":"classes/core_math_vector2.Vector2.html#clampMax","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1432,"kind":2048,"name":"rotate","url":"classes/core_math_vector2.Vector2.html#rotate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1433,"kind":2048,"name":"reflect","url":"classes/core_math_vector2.Vector2.html#reflect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1434,"kind":2048,"name":"abs","url":"classes/core_math_vector2.Vector2.html#abs","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1435,"kind":2,"name":"core/misc/pluginManager","url":"modules/core_misc_pluginManager.html","classes":"tsd-kind-module"},{"id":1436,"kind":128,"name":"PluginManager","url":"classes/core_misc_pluginManager.PluginManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/misc/pluginManager"},{"id":1437,"kind":512,"name":"constructor","url":"classes/core_misc_pluginManager.PluginManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1438,"kind":1024,"name":"plugins","url":"classes/core_misc_pluginManager.PluginManager.html#plugins","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1439,"kind":65536,"name":"__type","url":"classes/core_misc_pluginManager.PluginManager.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1440,"kind":2048,"name":"registerPlugin","url":"classes/core_misc_pluginManager.PluginManager.html#registerPlugin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1441,"kind":2048,"name":"unregisterPlugin","url":"classes/core_misc_pluginManager.PluginManager.html#unregisterPlugin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1442,"kind":2048,"name":"call","url":"classes/core_misc_pluginManager.PluginManager.html#call","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1443,"kind":2048,"name":"find","url":"classes/core_misc_pluginManager.PluginManager.html#find","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1444,"kind":2,"name":"core/models/displayList","url":"modules/core_models_displayList.html","classes":"tsd-kind-module"},{"id":1445,"kind":128,"name":"DisplayList","url":"classes/core_models_displayList.DisplayList.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/models/displayList"},{"id":1446,"kind":512,"name":"constructor","url":"classes/core_models_displayList.DisplayList.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1447,"kind":1024,"name":"game","url":"classes/core_models_displayList.DisplayList.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1448,"kind":1024,"name":"list","url":"classes/core_models_displayList.DisplayList.html#list","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1449,"kind":2048,"name":"add","url":"classes/core_models_displayList.DisplayList.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1450,"kind":2048,"name":"remove","url":"classes/core_models_displayList.DisplayList.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1451,"kind":2048,"name":"depthSort","url":"classes/core_models_displayList.DisplayList.html#depthSort","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1452,"kind":2048,"name":"visibilityFilter","url":"classes/core_models_displayList.DisplayList.html#visibilityFilter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1453,"kind":2048,"name":"each","url":"classes/core_models_displayList.DisplayList.html#each","classes":"tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter","parent":"core/models/displayList.DisplayList"},{"id":1454,"kind":2048,"name":"splice","url":"classes/core_models_displayList.DisplayList.html#splice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1455,"kind":262144,"name":"length","url":"classes/core_models_displayList.DisplayList.html#length","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1456,"kind":262144,"name":"listItems","url":"classes/core_models_displayList.DisplayList.html#listItems","classes":"tsd-kind-set-signature tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1457,"kind":2,"name":"core/models/physicsList","url":"modules/core_models_physicsList.html","classes":"tsd-kind-module"},{"id":1458,"kind":128,"name":"PhysicsList","url":"classes/core_models_physicsList.PhysicsList.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/models/physicsList"},{"id":1459,"kind":512,"name":"constructor","url":"classes/core_models_physicsList.PhysicsList.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1460,"kind":1024,"name":"list","url":"classes/core_models_physicsList.PhysicsList.html#list","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1461,"kind":2048,"name":"add","url":"classes/core_models_physicsList.PhysicsList.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1462,"kind":2048,"name":"remove","url":"classes/core_models_physicsList.PhysicsList.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1463,"kind":2048,"name":"each","url":"classes/core_models_physicsList.PhysicsList.html#each","classes":"tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter","parent":"core/models/physicsList.PhysicsList"},{"id":1464,"kind":2048,"name":"enabledFilter","url":"classes/core_models_physicsList.PhysicsList.html#enabledFilter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1465,"kind":2048,"name":"splice","url":"classes/core_models_physicsList.PhysicsList.html#splice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1466,"kind":262144,"name":"length","url":"classes/core_models_physicsList.PhysicsList.html#length","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1467,"kind":262144,"name":"listItems","url":"classes/core_models_physicsList.PhysicsList.html#listItems","classes":"tsd-kind-set-signature tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1468,"kind":2,"name":"core/physics/models/area","url":"modules/core_physics_models_area.html","classes":"tsd-kind-module"},{"id":1469,"kind":128,"name":"Area","url":"classes/core_physics_models_area.Area.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/models/area"},{"id":1470,"kind":512,"name":"constructor","url":"classes/core_physics_models_area.Area.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/physics/models/area.Area"},{"id":1471,"kind":1024,"name":"collisionFilter","url":"classes/core_physics_models_area.Area.html#collisionFilter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1472,"kind":1024,"name":"bodies","url":"classes/core_physics_models_area.Area.html#bodies","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1473,"kind":1024,"name":"onBodyEnter","url":"classes/core_physics_models_area.Area.html#onBodyEnter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1474,"kind":1024,"name":"onBodyLeave","url":"classes/core_physics_models_area.Area.html#onBodyLeave","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1475,"kind":2048,"name":"_update","url":"classes/core_physics_models_area.Area.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/physics/models/area.Area"},{"id":1476,"kind":2048,"name":"addBody","url":"classes/core_physics_models_area.Area.html#addBody","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/physics/models/area.Area"},{"id":1477,"kind":2048,"name":"removeBody","url":"classes/core_physics_models_area.Area.html#removeBody","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/physics/models/area.Area"},{"id":1478,"kind":2048,"name":"bodyIsInArea","url":"classes/core_physics_models_area.Area.html#bodyIsInArea","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1479,"kind":1024,"name":"id","url":"classes/core_physics_models_area.Area.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1480,"kind":1024,"name":"shape","url":"classes/core_physics_models_area.Area.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1481,"kind":1024,"name":"position","url":"classes/core_physics_models_area.Area.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1482,"kind":1024,"name":"w","url":"classes/core_physics_models_area.Area.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1483,"kind":1024,"name":"h","url":"classes/core_physics_models_area.Area.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1484,"kind":1024,"name":"r","url":"classes/core_physics_models_area.Area.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1485,"kind":1024,"name":"options","url":"classes/core_physics_models_area.Area.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1486,"kind":1024,"name":"game","url":"classes/core_physics_models_area.Area.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1487,"kind":1024,"name":"scene","url":"classes/core_physics_models_area.Area.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1488,"kind":1024,"name":"collider","url":"classes/core_physics_models_area.Area.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1489,"kind":1024,"name":"collidesWith","url":"classes/core_physics_models_area.Area.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1490,"kind":1024,"name":"hitbox","url":"classes/core_physics_models_area.Area.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1491,"kind":1024,"name":"velocity","url":"classes/core_physics_models_area.Area.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1492,"kind":1024,"name":"bounds","url":"classes/core_physics_models_area.Area.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1493,"kind":1024,"name":"enabled","url":"classes/core_physics_models_area.Area.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1494,"kind":1024,"name":"isAttached","url":"classes/core_physics_models_area.Area.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1495,"kind":1024,"name":"attachedChildren","url":"classes/core_physics_models_area.Area.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1496,"kind":1024,"name":"attachOffset","url":"classes/core_physics_models_area.Area.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1497,"kind":1024,"name":"physics","url":"classes/core_physics_models_area.Area.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1498,"kind":65536,"name":"__type","url":"classes/core_physics_models_area.Area.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1499,"kind":2048,"name":"addCollider","url":"classes/core_physics_models_area.Area.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/models/area.Area.__type"},{"id":1500,"kind":2048,"name":"addHitbox","url":"classes/core_physics_models_area.Area.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/models/area.Area.__type"},{"id":1501,"kind":2048,"name":"setBounds","url":"classes/core_physics_models_area.Area.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/models/area.Area.__type"},{"id":1502,"kind":2048,"name":"setEnabled","url":"classes/core_physics_models_area.Area.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1503,"kind":2048,"name":"setType","url":"classes/core_physics_models_area.Area.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1504,"kind":2048,"name":"attachTo","url":"classes/core_physics_models_area.Area.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1505,"kind":2048,"name":"attachChild","url":"classes/core_physics_models_area.Area.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1506,"kind":2048,"name":"detachFrom","url":"classes/core_physics_models_area.Area.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1507,"kind":2048,"name":"detachChild","url":"classes/core_physics_models_area.Area.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1508,"kind":2048,"name":"setVelocity","url":"classes/core_physics_models_area.Area.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1509,"kind":2048,"name":"setVelocityX","url":"classes/core_physics_models_area.Area.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1510,"kind":2048,"name":"setVelocityY","url":"classes/core_physics_models_area.Area.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1511,"kind":2048,"name":"accelerateVelocity","url":"classes/core_physics_models_area.Area.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1512,"kind":2048,"name":"applyFriction","url":"classes/core_physics_models_area.Area.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1513,"kind":2048,"name":"applyGravity","url":"classes/core_physics_models_area.Area.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1514,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_physics_models_area.Area.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1515,"kind":2048,"name":"reflectVelocity","url":"classes/core_physics_models_area.Area.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1516,"kind":2048,"name":"autoFitHitbox","url":"classes/core_physics_models_area.Area.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1517,"kind":2048,"name":"scaleHitbox","url":"classes/core_physics_models_area.Area.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1518,"kind":2048,"name":"getTop","url":"classes/core_physics_models_area.Area.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1519,"kind":2048,"name":"getBottom","url":"classes/core_physics_models_area.Area.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1520,"kind":2048,"name":"getLeft","url":"classes/core_physics_models_area.Area.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1521,"kind":2048,"name":"getRight","url":"classes/core_physics_models_area.Area.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1522,"kind":2048,"name":"getCenter","url":"classes/core_physics_models_area.Area.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1523,"kind":2048,"name":"getCenterY","url":"classes/core_physics_models_area.Area.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1524,"kind":2048,"name":"getCenterX","url":"classes/core_physics_models_area.Area.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1525,"kind":2048,"name":"isColliding","url":"classes/core_physics_models_area.Area.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1526,"kind":2048,"name":"isCollidingGroup","url":"classes/core_physics_models_area.Area.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1527,"kind":2,"name":"core/physics/models/collider","url":"modules/core_physics_models_collider.html","classes":"tsd-kind-module"},{"id":1528,"kind":128,"name":"Collider","url":"classes/core_physics_models_collider.Collider.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/models/collider"},{"id":1529,"kind":512,"name":"constructor","url":"classes/core_physics_models_collider.Collider.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1530,"kind":1024,"name":"hitbox","url":"classes/core_physics_models_collider.Collider.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1531,"kind":1024,"name":"collidesWith","url":"classes/core_physics_models_collider.Collider.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1532,"kind":1024,"name":"game","url":"classes/core_physics_models_collider.Collider.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1533,"kind":2048,"name":"_update","url":"classes/core_physics_models_collider.Collider.html#_update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1534,"kind":2048,"name":"collideHitboxes","url":"classes/core_physics_models_collider.Collider.html#collideHitboxes","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/physics/models/collider.Collider"},{"id":1535,"kind":2,"name":"core/physics/models/hitbox","url":"modules/core_physics_models_hitbox.html","classes":"tsd-kind-module"},{"id":1536,"kind":128,"name":"Hitbox","url":"classes/core_physics_models_hitbox.Hitbox.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/models/hitbox"},{"id":1537,"kind":512,"name":"constructor","url":"classes/core_physics_models_hitbox.Hitbox.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1538,"kind":1024,"name":"id","url":"classes/core_physics_models_hitbox.Hitbox.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1539,"kind":1024,"name":"position","url":"classes/core_physics_models_hitbox.Hitbox.html#position","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1540,"kind":1024,"name":"offset","url":"classes/core_physics_models_hitbox.Hitbox.html#offset","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1541,"kind":1024,"name":"w","url":"classes/core_physics_models_hitbox.Hitbox.html#w","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1542,"kind":1024,"name":"h","url":"classes/core_physics_models_hitbox.Hitbox.html#h","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1543,"kind":1024,"name":"game","url":"classes/core_physics_models_hitbox.Hitbox.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1544,"kind":1024,"name":"scene","url":"classes/core_physics_models_hitbox.Hitbox.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1545,"kind":1024,"name":"physicsObject","url":"classes/core_physics_models_hitbox.Hitbox.html#physicsObject","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1546,"kind":1024,"name":"debugColor","url":"classes/core_physics_models_hitbox.Hitbox.html#debugColor","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1547,"kind":1024,"name":"visible","url":"classes/core_physics_models_hitbox.Hitbox.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1548,"kind":1024,"name":"zIndex","url":"classes/core_physics_models_hitbox.Hitbox.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1549,"kind":1024,"name":"culled","url":"classes/core_physics_models_hitbox.Hitbox.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1550,"kind":1024,"name":"collisionState","url":"classes/core_physics_models_hitbox.Hitbox.html#collisionState","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1551,"kind":2048,"name":"_draw","url":"classes/core_physics_models_hitbox.Hitbox.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1552,"kind":2048,"name":"_update","url":"classes/core_physics_models_hitbox.Hitbox.html#_update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1553,"kind":2048,"name":"setDebugColor","url":"classes/core_physics_models_hitbox.Hitbox.html#setDebugColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1554,"kind":2048,"name":"scale","url":"classes/core_physics_models_hitbox.Hitbox.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1555,"kind":2048,"name":"setPosition","url":"classes/core_physics_models_hitbox.Hitbox.html#setPosition","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1556,"kind":2048,"name":"auto","url":"classes/core_physics_models_hitbox.Hitbox.html#auto","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1557,"kind":2048,"name":"intersectsWith","url":"classes/core_physics_models_hitbox.Hitbox.html#intersectsWith","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1558,"kind":2048,"name":"intersectsFaceWith","url":"classes/core_physics_models_hitbox.Hitbox.html#intersectsFaceWith","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1559,"kind":2048,"name":"groupIntersectsFaceWith","url":"classes/core_physics_models_hitbox.Hitbox.html#groupIntersectsFaceWith","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1560,"kind":2048,"name":"getTop","url":"classes/core_physics_models_hitbox.Hitbox.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1561,"kind":2048,"name":"getBottom","url":"classes/core_physics_models_hitbox.Hitbox.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1562,"kind":2048,"name":"getLeft","url":"classes/core_physics_models_hitbox.Hitbox.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1563,"kind":2048,"name":"getRight","url":"classes/core_physics_models_hitbox.Hitbox.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1564,"kind":2048,"name":"getCenter","url":"classes/core_physics_models_hitbox.Hitbox.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1565,"kind":2048,"name":"getCenterY","url":"classes/core_physics_models_hitbox.Hitbox.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1566,"kind":2048,"name":"getCenterX","url":"classes/core_physics_models_hitbox.Hitbox.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1567,"kind":2,"name":"core/physics/physicsBody","url":"modules/core_physics_physicsBody.html","classes":"tsd-kind-module"},{"id":1568,"kind":128,"name":"PhysicsBody","url":"classes/core_physics_physicsBody.PhysicsBody.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/physics/physicsBody"},{"id":1569,"kind":512,"name":"constructor","url":"classes/core_physics_physicsBody.PhysicsBody.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1570,"kind":1024,"name":"id","url":"classes/core_physics_physicsBody.PhysicsBody.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1571,"kind":1024,"name":"shape","url":"classes/core_physics_physicsBody.PhysicsBody.html#shape","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1572,"kind":1024,"name":"position","url":"classes/core_physics_physicsBody.PhysicsBody.html#position","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1573,"kind":1024,"name":"w","url":"classes/core_physics_physicsBody.PhysicsBody.html#w","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1574,"kind":1024,"name":"h","url":"classes/core_physics_physicsBody.PhysicsBody.html#h","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1575,"kind":1024,"name":"r","url":"classes/core_physics_physicsBody.PhysicsBody.html#r","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1576,"kind":1024,"name":"options","url":"classes/core_physics_physicsBody.PhysicsBody.html#options","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1577,"kind":1024,"name":"game","url":"classes/core_physics_physicsBody.PhysicsBody.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1578,"kind":1024,"name":"scene","url":"classes/core_physics_physicsBody.PhysicsBody.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1579,"kind":1024,"name":"collider","url":"classes/core_physics_physicsBody.PhysicsBody.html#collider","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1580,"kind":1024,"name":"collidesWith","url":"classes/core_physics_physicsBody.PhysicsBody.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1581,"kind":1024,"name":"hitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1582,"kind":1024,"name":"velocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1583,"kind":1024,"name":"bounds","url":"classes/core_physics_physicsBody.PhysicsBody.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1584,"kind":1024,"name":"enabled","url":"classes/core_physics_physicsBody.PhysicsBody.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1585,"kind":1024,"name":"isAttached","url":"classes/core_physics_physicsBody.PhysicsBody.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1586,"kind":1024,"name":"attachedChildren","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1587,"kind":1024,"name":"attachOffset","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1588,"kind":1024,"name":"physics","url":"classes/core_physics_physicsBody.PhysicsBody.html#physics","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1589,"kind":65536,"name":"__type","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1590,"kind":2048,"name":"addCollider","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/physicsBody.PhysicsBody.__type"},{"id":1591,"kind":2048,"name":"addHitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/physicsBody.PhysicsBody.__type"},{"id":1592,"kind":2048,"name":"setBounds","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/physicsBody.PhysicsBody.__type"},{"id":1593,"kind":2048,"name":"setEnabled","url":"classes/core_physics_physicsBody.PhysicsBody.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1594,"kind":2048,"name":"_update","url":"classes/core_physics_physicsBody.PhysicsBody.html#_update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1595,"kind":2048,"name":"setType","url":"classes/core_physics_physicsBody.PhysicsBody.html#setType","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1596,"kind":2048,"name":"attachTo","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1597,"kind":2048,"name":"attachChild","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1598,"kind":2048,"name":"detachFrom","url":"classes/core_physics_physicsBody.PhysicsBody.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1599,"kind":2048,"name":"detachChild","url":"classes/core_physics_physicsBody.PhysicsBody.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1600,"kind":2048,"name":"setVelocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1601,"kind":2048,"name":"setVelocityX","url":"classes/core_physics_physicsBody.PhysicsBody.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1602,"kind":2048,"name":"setVelocityY","url":"classes/core_physics_physicsBody.PhysicsBody.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1603,"kind":2048,"name":"accelerateVelocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1604,"kind":2048,"name":"applyFriction","url":"classes/core_physics_physicsBody.PhysicsBody.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1605,"kind":2048,"name":"applyGravity","url":"classes/core_physics_physicsBody.PhysicsBody.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1606,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_physics_physicsBody.PhysicsBody.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1607,"kind":2048,"name":"reflectVelocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1608,"kind":2048,"name":"autoFitHitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1609,"kind":2048,"name":"scaleHitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1610,"kind":2048,"name":"getTop","url":"classes/core_physics_physicsBody.PhysicsBody.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1611,"kind":2048,"name":"getBottom","url":"classes/core_physics_physicsBody.PhysicsBody.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1612,"kind":2048,"name":"getLeft","url":"classes/core_physics_physicsBody.PhysicsBody.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1613,"kind":2048,"name":"getRight","url":"classes/core_physics_physicsBody.PhysicsBody.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1614,"kind":2048,"name":"getCenter","url":"classes/core_physics_physicsBody.PhysicsBody.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1615,"kind":2048,"name":"getCenterY","url":"classes/core_physics_physicsBody.PhysicsBody.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1616,"kind":2048,"name":"getCenterX","url":"classes/core_physics_physicsBody.PhysicsBody.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1617,"kind":2048,"name":"isColliding","url":"classes/core_physics_physicsBody.PhysicsBody.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1618,"kind":2048,"name":"isCollidingGroup","url":"classes/core_physics_physicsBody.PhysicsBody.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1619,"kind":2,"name":"core/physics/server/physicsServer","url":"modules/core_physics_server_physicsServer.html","classes":"tsd-kind-module"},{"id":1620,"kind":128,"name":"PhysicsServer","url":"classes/core_physics_server_physicsServer.PhysicsServer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/server/physicsServer"},{"id":1621,"kind":512,"name":"constructor","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1622,"kind":1024,"name":"game","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1623,"kind":1024,"name":"scene","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1624,"kind":2048,"name":"__tick","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#__tick","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1625,"kind":2,"name":"core/physics/utils/circleToRectIntersect","url":"modules/core_physics_utils_circleToRectIntersect.html","classes":"tsd-kind-module"},{"id":1626,"kind":64,"name":"circleRectCollision","url":"modules/core_physics_utils_circleToRectIntersect.html#circleRectCollision","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/physics/utils/circleToRectIntersect"},{"id":1627,"kind":2,"name":"core/physics/utils/hitboxFaceIntersect","url":"modules/core_physics_utils_hitboxFaceIntersect.html","classes":"tsd-kind-module"},{"id":1628,"kind":64,"name":"hitboxFaceIntersect","url":"modules/core_physics_utils_hitboxFaceIntersect.html#hitboxFaceIntersect","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/physics/utils/hitboxFaceIntersect"},{"id":1629,"kind":2,"name":"core/physics/utils/rectToRectIntersect","url":"modules/core_physics_utils_rectToRectIntersect.html","classes":"tsd-kind-module"},{"id":1630,"kind":64,"name":"rectToRectIntersect","url":"modules/core_physics_utils_rectToRectIntersect.html#rectToRectIntersect","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/physics/utils/rectToRectIntersect"},{"id":1631,"kind":2,"name":"core/renderer/baseRenderer","url":"modules/core_renderer_baseRenderer.html","classes":"tsd-kind-module"},{"id":1632,"kind":128,"name":"BaseRenderer","url":"classes/core_renderer_baseRenderer.BaseRenderer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/renderer/baseRenderer"},{"id":1633,"kind":512,"name":"constructor","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1634,"kind":1024,"name":"game","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1635,"kind":2048,"name":"clearFrame","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#clearFrame","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1636,"kind":2048,"name":"drawRect","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawRect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1637,"kind":2048,"name":"drawCircle","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawCircle","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1638,"kind":2048,"name":"drawRoundRect","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawRoundRect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1639,"kind":2048,"name":"drawSprite","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawSprite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1640,"kind":2048,"name":"save","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#save","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1641,"kind":2048,"name":"restore","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#restore","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1642,"kind":2048,"name":"scale","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1643,"kind":2048,"name":"translate","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#translate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1644,"kind":2048,"name":"transform","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#transform","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1645,"kind":2048,"name":"setFont","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setFont","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1646,"kind":2048,"name":"measureText","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#measureText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1647,"kind":2048,"name":"drawText","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1648,"kind":2048,"name":"strokeText","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#strokeText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1649,"kind":2048,"name":"setFillColor","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1650,"kind":2048,"name":"setStrokeColor","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setStrokeColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1651,"kind":2048,"name":"setLineWidth","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setLineWidth","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1652,"kind":2048,"name":"setBlendMode","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setBlendMode","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1653,"kind":2,"name":"core/renderer/canvas/canvasRenderer","url":"modules/core_renderer_canvas_canvasRenderer.html","classes":"tsd-kind-module"},{"id":1654,"kind":128,"name":"CanvasRenderer","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/renderer/canvas/canvasRenderer"},{"id":1655,"kind":512,"name":"constructor","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1656,"kind":1024,"name":"ctx","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#ctx","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1657,"kind":1024,"name":"pipeline","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#pipeline","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1658,"kind":2048,"name":"render","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#render","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1659,"kind":2048,"name":"save","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#save","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1660,"kind":2048,"name":"restore","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#restore","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1661,"kind":2048,"name":"translate","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#translate","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1662,"kind":2048,"name":"transform","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#transform","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1663,"kind":2048,"name":"scale","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#scale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1664,"kind":2048,"name":"setFont","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setFont","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1665,"kind":2048,"name":"measureText","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#measureText","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1666,"kind":2048,"name":"setFillColor","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1667,"kind":2048,"name":"setStrokeColor","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setStrokeColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1668,"kind":2048,"name":"setLineWidth","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setLineWidth","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1669,"kind":2048,"name":"drawText","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawText","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1670,"kind":2048,"name":"strokeText","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#strokeText","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1671,"kind":2048,"name":"clearFrame","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#clearFrame","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1672,"kind":2048,"name":"clearRect","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#clearRect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1673,"kind":2048,"name":"drawRect","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawRect","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1674,"kind":2048,"name":"drawCircle","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawCircle","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1675,"kind":2048,"name":"drawRoundRect","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawRoundRect","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1676,"kind":2048,"name":"drawSprite","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1677,"kind":2048,"name":"setBlendMode","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setBlendMode","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1678,"kind":1024,"name":"game","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1679,"kind":2,"name":"core/renderer/canvas/const/blendModes","url":"modules/core_renderer_canvas_const_blendModes.html","classes":"tsd-kind-module"},{"id":1680,"kind":32,"name":"BlendModes","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/renderer/canvas/const/blendModes"},{"id":1681,"kind":65536,"name":"__type","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/renderer/canvas/const/blendModes.BlendModes"},{"id":1682,"kind":1024,"name":"source-over","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_over","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1683,"kind":1024,"name":"source-in","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_in","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1684,"kind":1024,"name":"source-out","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_out","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1685,"kind":1024,"name":"source-atop","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_atop","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1686,"kind":1024,"name":"destination-over","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_over","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1687,"kind":1024,"name":"destination-in","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_in","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1688,"kind":1024,"name":"destination-out","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_out","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1689,"kind":1024,"name":"destination-atop","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_atop","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1690,"kind":1024,"name":"lighter","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.lighter","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1691,"kind":1024,"name":"copy","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.copy","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1692,"kind":1024,"name":"xor","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.xor","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1693,"kind":1024,"name":"multiply","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.multiply","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1694,"kind":1024,"name":"screen","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.screen","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1695,"kind":1024,"name":"overlay","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.overlay","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1696,"kind":1024,"name":"darken","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.darken","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1697,"kind":1024,"name":"lighten","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.lighten","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1698,"kind":1024,"name":"color-dodge","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.color_dodge","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1699,"kind":1024,"name":"color-burn","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.color_burn","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1700,"kind":1024,"name":"hard-light","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.hard_light","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1701,"kind":1024,"name":"soft-light","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.soft_light","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1702,"kind":1024,"name":"difference","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.difference","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1703,"kind":1024,"name":"exclusion","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.exclusion","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1704,"kind":1024,"name":"hue","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.hue","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1705,"kind":1024,"name":"saturation","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.saturation","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1706,"kind":1024,"name":"color","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.color","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1707,"kind":1024,"name":"luminosity","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.luminosity","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1708,"kind":2,"name":"core/renderer/canvas/pipeline/rendererPipeline","url":"modules/core_renderer_canvas_pipeline_rendererPipeline.html","classes":"tsd-kind-module"},{"id":1709,"kind":128,"name":"RendererPipeline","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/renderer/canvas/pipeline/rendererPipeline"},{"id":1710,"kind":512,"name":"constructor","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1711,"kind":1024,"name":"game","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1712,"kind":1024,"name":"poolInterval","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#poolInterval","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1713,"kind":1024,"name":"poolStack","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#poolStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1714,"kind":1024,"name":"updateTimeInterval","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#updateTimeInterval","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1715,"kind":2048,"name":"pool","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#pool","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1716,"kind":2048,"name":"updateTime","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#updateTime","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1717,"kind":2,"name":"core/scene","url":"modules/core_scene.html","classes":"tsd-kind-module"},{"id":1718,"kind":128,"name":"Scene","url":"classes/core_scene.Scene.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/scene"},{"id":1719,"kind":512,"name":"constructor","url":"classes/core_scene.Scene.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/scene.Scene"},{"id":1720,"kind":1024,"name":"key","url":"classes/core_scene.Scene.html#key","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1721,"kind":1024,"name":"visible","url":"classes/core_scene.Scene.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1722,"kind":1024,"name":"default","url":"classes/core_scene.Scene.html#default","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1723,"kind":1024,"name":"game","url":"classes/core_scene.Scene.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/scene.Scene"},{"id":1724,"kind":1024,"name":"currentCamera","url":"classes/core_scene.Scene.html#currentCamera","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1725,"kind":1024,"name":"mainCamera","url":"classes/core_scene.Scene.html#mainCamera-1","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1726,"kind":1024,"name":"cameras","url":"classes/core_scene.Scene.html#cameras","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1727,"kind":1024,"name":"displayList","url":"classes/core_scene.Scene.html#displayList","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1728,"kind":1024,"name":"physicsList","url":"classes/core_scene.Scene.html#physicsList","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1729,"kind":1024,"name":"loader","url":"classes/core_scene.Scene.html#loader","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1730,"kind":1024,"name":"physicsServer","url":"classes/core_scene.Scene.html#physicsServer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1731,"kind":1024,"name":"onSceneActive","url":"classes/core_scene.Scene.html#onSceneActive","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1732,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-8","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1733,"kind":1024,"name":"onSceneInactive","url":"classes/core_scene.Scene.html#onSceneInactive","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1734,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-9","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1735,"kind":1024,"name":"add","url":"classes/core_scene.Scene.html#add","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1736,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1737,"kind":1024,"name":"gameobject","url":"classes/core_scene.Scene.html#__type.gameobject","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1738,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1739,"kind":1024,"name":"misc","url":"classes/core_scene.Scene.html#__type.__type-1.misc","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1740,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-1.__type-2","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1741,"kind":2048,"name":"canvasModulate","url":"classes/core_scene.Scene.html#__type.__type-1.__type-2.canvasModulate","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1742,"kind":2048,"name":"existing","url":"classes/core_scene.Scene.html#__type.__type-1.existing","classes":"tsd-kind-method tsd-parent-kind-type-literal tsd-has-type-parameter","parent":"core/scene.Scene.__type.__type"},{"id":1743,"kind":2048,"name":"sprite","url":"classes/core_scene.Scene.html#__type.__type-1.sprite","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1744,"kind":2048,"name":"rect","url":"classes/core_scene.Scene.html#__type.__type-1.rect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1745,"kind":2048,"name":"circle","url":"classes/core_scene.Scene.html#__type.__type-1.circle","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1746,"kind":2048,"name":"roundRect","url":"classes/core_scene.Scene.html#__type.__type-1.roundRect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1747,"kind":1024,"name":"misc","url":"classes/core_scene.Scene.html#__type.misc-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1748,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-5","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1749,"kind":2048,"name":"area","url":"classes/core_scene.Scene.html#__type.__type-5.area","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1750,"kind":1024,"name":"ui","url":"classes/core_scene.Scene.html#__type.ui","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1751,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-7","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1752,"kind":2048,"name":"text","url":"classes/core_scene.Scene.html#__type.__type-7.text","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1753,"kind":2048,"name":"button","url":"classes/core_scene.Scene.html#__type.__type-7.button","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1754,"kind":2048,"name":"soundPlayer","url":"classes/core_scene.Scene.html#__type.soundPlayer","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1755,"kind":2048,"name":"input","url":"classes/core_scene.Scene.html#__type.input","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1756,"kind":2048,"name":"camera","url":"classes/core_scene.Scene.html#__type.camera","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1757,"kind":2048,"name":"mainCamera","url":"classes/core_scene.Scene.html#__type.mainCamera","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1758,"kind":1024,"name":"light","url":"classes/core_scene.Scene.html#__type.light","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1759,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-3","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1760,"kind":2048,"name":"staticLight","url":"classes/core_scene.Scene.html#__type.__type-3.staticLight","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1761,"kind":2048,"name":"group","url":"classes/core_scene.Scene.html#__type.group","classes":"tsd-kind-method tsd-parent-kind-type-literal tsd-has-type-parameter","parent":"core/scene.Scene.__type"},{"id":1762,"kind":2048,"name":"particle","url":"classes/core_scene.Scene.html#__type.particle","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1763,"kind":2048,"name":"particleEmitter","url":"classes/core_scene.Scene.html#__type.particleEmitter","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1764,"kind":2048,"name":"cutscene","url":"classes/core_scene.Scene.html#__type.cutscene","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1765,"kind":1024,"name":"map","url":"classes/core_scene.Scene.html#__type.map","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1766,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-4","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1767,"kind":2048,"name":"tilemap","url":"classes/core_scene.Scene.html#__type.__type-4.tilemap","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1768,"kind":2048,"name":"tileset","url":"classes/core_scene.Scene.html#__type.__type-4.tileset","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1769,"kind":2048,"name":"tileLayer","url":"classes/core_scene.Scene.html#__type.__type-4.tileLayer","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1770,"kind":2048,"name":"effect","url":"classes/core_scene.Scene.html#__type.effect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1771,"kind":1024,"name":"presetEffect","url":"classes/core_scene.Scene.html#__type.presetEffect","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1772,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-6","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1773,"kind":2048,"name":"explosionEffect","url":"classes/core_scene.Scene.html#__type.__type-6.explosionEffect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1774,"kind":2048,"name":"smokeEffect","url":"classes/core_scene.Scene.html#__type.__type-6.smokeEffect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1775,"kind":1024,"name":"tools","url":"classes/core_scene.Scene.html#tools","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1776,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1777,"kind":1024,"name":"loader","url":"classes/core_scene.Scene.html#__type-10.loader-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1778,"kind":1024,"name":"color","url":"classes/core_scene.Scene.html#__type-10.color","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1779,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1780,"kind":2048,"name":"random","url":"classes/core_scene.Scene.html#__type-10.__type-11.random","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1781,"kind":2048,"name":"randomWithAlpha","url":"classes/core_scene.Scene.html#__type-10.__type-11.randomWithAlpha","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1782,"kind":1024,"name":"is","url":"classes/core_scene.Scene.html#__type-10.__type-11.is","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1783,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1784,"kind":2048,"name":"hex","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16.hex-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1785,"kind":2048,"name":"hsl","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16.hsl","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1786,"kind":2048,"name":"rgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16.rgb-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1787,"kind":1024,"name":"convert","url":"classes/core_scene.Scene.html#__type-10.__type-11.convert","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1788,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1789,"kind":1024,"name":"rgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.rgb","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1790,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-14","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1791,"kind":2048,"name":"toHsl","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-14.toHsl-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1792,"kind":2048,"name":"toRgba","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-14.toRgba-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1793,"kind":1024,"name":"rgba","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.rgba","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1794,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-15","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1795,"kind":2048,"name":"toHsla","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-15.toHsla","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1796,"kind":2048,"name":"toRgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-15.toRgb-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1797,"kind":1024,"name":"hex","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.hex","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1798,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1799,"kind":2048,"name":"toRgba","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13.toRgba","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1800,"kind":2048,"name":"toRgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13.toRgb","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1801,"kind":2048,"name":"toHsl","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13.toHsl","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1802,"kind":1024,"name":"physics","url":"classes/core_scene.Scene.html#__type-10.physics","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1803,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-18","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1804,"kind":2048,"name":"rectToRectIntersect","url":"classes/core_scene.Scene.html#__type-10.__type-18.rectToRectIntersect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1805,"kind":2048,"name":"circleToRectIntersect","url":"classes/core_scene.Scene.html#__type-10.__type-18.circleToRectIntersect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1806,"kind":1024,"name":"math","url":"classes/core_scene.Scene.html#__type-10.math","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1807,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-17","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1808,"kind":2048,"name":"createVector","url":"classes/core_scene.Scene.html#__type-10.__type-17.createVector","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1809,"kind":1024,"name":"vector","url":"classes/core_scene.Scene.html#__type-10.__type-17.vector","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1810,"kind":2048,"name":"clamp","url":"classes/core_scene.Scene.html#__type-10.__type-17.clamp","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1811,"kind":2048,"name":"lerp","url":"classes/core_scene.Scene.html#__type-10.__type-17.lerp","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1812,"kind":2048,"name":"randomInt","url":"classes/core_scene.Scene.html#__type-10.__type-17.randomInt","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1813,"kind":2048,"name":"randomFloat","url":"classes/core_scene.Scene.html#__type-10.__type-17.randomFloat","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1814,"kind":2048,"name":"__tick","url":"classes/core_scene.Scene.html#__tick","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1815,"kind":2048,"name":"setVisible","url":"classes/core_scene.Scene.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1816,"kind":2048,"name":"switchCamera","url":"classes/core_scene.Scene.html#switchCamera","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1817,"kind":2048,"name":"switchToMainCamera","url":"classes/core_scene.Scene.html#switchToMainCamera","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1818,"kind":2048,"name":"setMainCamera","url":"classes/core_scene.Scene.html#setMainCamera","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1819,"kind":2048,"name":"once","url":"classes/core_scene.Scene.html#once","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1820,"kind":2048,"name":"runAmount","url":"classes/core_scene.Scene.html#runAmount","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1821,"kind":2048,"name":"createTimer","url":"classes/core_scene.Scene.html#createTimer","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1822,"kind":2,"name":"core/sound/soundPlayer","url":"modules/core_sound_soundPlayer.html","classes":"tsd-kind-module"},{"id":1823,"kind":128,"name":"SoundPlayer","url":"classes/core_sound_soundPlayer.SoundPlayer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/sound/soundPlayer"},{"id":1824,"kind":512,"name":"constructor","url":"classes/core_sound_soundPlayer.SoundPlayer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1825,"kind":1024,"name":"path","url":"classes/core_sound_soundPlayer.SoundPlayer.html#path","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1826,"kind":1024,"name":"element","url":"classes/core_sound_soundPlayer.SoundPlayer.html#element","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1827,"kind":1024,"name":"sprites","url":"classes/core_sound_soundPlayer.SoundPlayer.html#sprites","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1828,"kind":2048,"name":"play","url":"classes/core_sound_soundPlayer.SoundPlayer.html#play","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1829,"kind":2048,"name":"pause","url":"classes/core_sound_soundPlayer.SoundPlayer.html#pause","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1830,"kind":2048,"name":"mute","url":"classes/core_sound_soundPlayer.SoundPlayer.html#mute","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1831,"kind":2048,"name":"unmute","url":"classes/core_sound_soundPlayer.SoundPlayer.html#unmute","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1832,"kind":2048,"name":"stop","url":"classes/core_sound_soundPlayer.SoundPlayer.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1833,"kind":2048,"name":"loop","url":"classes/core_sound_soundPlayer.SoundPlayer.html#loop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1834,"kind":2048,"name":"seek","url":"classes/core_sound_soundPlayer.SoundPlayer.html#seek","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1835,"kind":2048,"name":"restart","url":"classes/core_sound_soundPlayer.SoundPlayer.html#restart","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1836,"kind":2048,"name":"setVolume","url":"classes/core_sound_soundPlayer.SoundPlayer.html#setVolume","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1837,"kind":262144,"name":"duration","url":"classes/core_sound_soundPlayer.SoundPlayer.html#duration","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1838,"kind":262144,"name":"isPlaying","url":"classes/core_sound_soundPlayer.SoundPlayer.html#isPlaying","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1839,"kind":262144,"name":"volume","url":"classes/core_sound_soundPlayer.SoundPlayer.html#volume","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1840,"kind":262144,"name":"isMuted","url":"classes/core_sound_soundPlayer.SoundPlayer.html#isMuted","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1841,"kind":2048,"name":"playSprite","url":"classes/core_sound_soundPlayer.SoundPlayer.html#playSprite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1842,"kind":2048,"name":"setPath","url":"classes/core_sound_soundPlayer.SoundPlayer.html#setPath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/soundPlayer.SoundPlayer"},{"id":1843,"kind":2,"name":"core/storage/cacheManager","url":"modules/core_storage_cacheManager.html","classes":"tsd-kind-module"},{"id":1844,"kind":128,"name":"CacheManager","url":"classes/core_storage_cacheManager.CacheManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/storage/cacheManager"},{"id":1845,"kind":512,"name":"constructor","url":"classes/core_storage_cacheManager.CacheManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1846,"kind":1024,"name":"cache","url":"classes/core_storage_cacheManager.CacheManager.html#cache","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/storage/cacheManager.CacheManager"},{"id":1847,"kind":65536,"name":"__type","url":"classes/core_storage_cacheManager.CacheManager.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1848,"kind":1024,"name":"storageIdentifier","url":"classes/core_storage_cacheManager.CacheManager.html#storageIdentifier","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1849,"kind":2048,"name":"sync","url":"classes/core_storage_cacheManager.CacheManager.html#sync","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1850,"kind":2048,"name":"set","url":"classes/core_storage_cacheManager.CacheManager.html#set","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1851,"kind":2048,"name":"get","url":"classes/core_storage_cacheManager.CacheManager.html#get","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1852,"kind":2048,"name":"delete","url":"classes/core_storage_cacheManager.CacheManager.html#delete","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1853,"kind":2048,"name":"has","url":"classes/core_storage_cacheManager.CacheManager.html#has","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1854,"kind":2048,"name":"keys","url":"classes/core_storage_cacheManager.CacheManager.html#keys","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1855,"kind":2048,"name":"values","url":"classes/core_storage_cacheManager.CacheManager.html#values","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1856,"kind":2048,"name":"each","url":"classes/core_storage_cacheManager.CacheManager.html#each","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1857,"kind":262144,"name":"entries","url":"classes/core_storage_cacheManager.CacheManager.html#entries","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":1858,"kind":2,"name":"core/texture/texture","url":"modules/core_texture_texture.html","classes":"tsd-kind-module"},{"id":1859,"kind":128,"name":"Texture","url":"classes/core_texture_texture.Texture.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/texture/texture"},{"id":1860,"kind":2048,"name":"fromColor","url":"classes/core_texture_texture.Texture.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/texture.Texture"},{"id":1861,"kind":2048,"name":"fromTexture","url":"classes/core_texture_texture.Texture.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/texture.Texture"},{"id":1862,"kind":2048,"name":"fromEither","url":"classes/core_texture_texture.Texture.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/texture.Texture"},{"id":1863,"kind":512,"name":"constructor","url":"classes/core_texture_texture.Texture.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite","parent":"core/texture/texture.Texture"},{"id":1864,"kind":1024,"name":"type","url":"classes/core_texture_texture.Texture.html#type","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1865,"kind":1024,"name":"id","url":"classes/core_texture_texture.Texture.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1866,"kind":1024,"name":"dataType","url":"classes/core_texture_texture.Texture.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1867,"kind":1024,"name":"texture","url":"classes/core_texture_texture.Texture.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1868,"kind":1024,"name":"scale","url":"classes/core_texture_texture.Texture.html#scale","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1869,"kind":2048,"name":"setScale","url":"classes/core_texture_texture.Texture.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1870,"kind":2048,"name":"setImagePath","url":"classes/core_texture_texture.Texture.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1871,"kind":2048,"name":"setFillColor","url":"classes/core_texture_texture.Texture.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":1872,"kind":2,"name":"core/texture/textureAtlas","url":"modules/core_texture_textureAtlas.html","classes":"tsd-kind-module"},{"id":1873,"kind":128,"name":"TextureAtlas","url":"classes/core_texture_textureAtlas.TextureAtlas.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/texture/textureAtlas"},{"id":1874,"kind":2048,"name":"fromColor","url":"classes/core_texture_textureAtlas.TextureAtlas.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1875,"kind":2048,"name":"fromTexture","url":"classes/core_texture_textureAtlas.TextureAtlas.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1876,"kind":2048,"name":"fromEither","url":"classes/core_texture_textureAtlas.TextureAtlas.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1877,"kind":512,"name":"constructor","url":"classes/core_texture_textureAtlas.TextureAtlas.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1878,"kind":1024,"name":"game","url":"classes/core_texture_textureAtlas.TextureAtlas.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1879,"kind":1024,"name":"scene","url":"classes/core_texture_textureAtlas.TextureAtlas.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1880,"kind":1024,"name":"json","url":"classes/core_texture_textureAtlas.TextureAtlas.html#json","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1881,"kind":2048,"name":"validateJSON","url":"classes/core_texture_textureAtlas.TextureAtlas.html#validateJSON","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1882,"kind":2048,"name":"parseJSON","url":"classes/core_texture_textureAtlas.TextureAtlas.html#parseJSON","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1883,"kind":2048,"name":"get","url":"classes/core_texture_textureAtlas.TextureAtlas.html#get","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1884,"kind":1024,"name":"type","url":"classes/core_texture_textureAtlas.TextureAtlas.html#type","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1885,"kind":1024,"name":"id","url":"classes/core_texture_textureAtlas.TextureAtlas.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1886,"kind":1024,"name":"dataType","url":"classes/core_texture_textureAtlas.TextureAtlas.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1887,"kind":1024,"name":"texture","url":"classes/core_texture_textureAtlas.TextureAtlas.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1888,"kind":1024,"name":"scale","url":"classes/core_texture_textureAtlas.TextureAtlas.html#scale","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1889,"kind":2048,"name":"setScale","url":"classes/core_texture_textureAtlas.TextureAtlas.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1890,"kind":2048,"name":"setImagePath","url":"classes/core_texture_textureAtlas.TextureAtlas.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1891,"kind":2048,"name":"setFillColor","url":"classes/core_texture_textureAtlas.TextureAtlas.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":1892,"kind":2,"name":"core/texture/textureBase","url":"modules/core_texture_textureBase.html","classes":"tsd-kind-module"},{"id":1893,"kind":128,"name":"TextureBase","url":"classes/core_texture_textureBase.TextureBase.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/texture/textureBase"},{"id":1894,"kind":2048,"name":"fromColor","url":"classes/core_texture_textureBase.TextureBase.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/texture/textureBase.TextureBase"},{"id":1895,"kind":2048,"name":"fromTexture","url":"classes/core_texture_textureBase.TextureBase.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/texture/textureBase.TextureBase"},{"id":1896,"kind":2048,"name":"fromEither","url":"classes/core_texture_textureBase.TextureBase.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/texture/textureBase.TextureBase"},{"id":1897,"kind":512,"name":"constructor","url":"classes/core_texture_textureBase.TextureBase.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter","parent":"core/texture/textureBase.TextureBase"},{"id":1898,"kind":1024,"name":"type","url":"classes/core_texture_textureBase.TextureBase.html#type","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1899,"kind":1024,"name":"id","url":"classes/core_texture_textureBase.TextureBase.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1900,"kind":1024,"name":"dataType","url":"classes/core_texture_textureBase.TextureBase.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1901,"kind":1024,"name":"texture","url":"classes/core_texture_textureBase.TextureBase.html#texture","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1902,"kind":1024,"name":"scale","url":"classes/core_texture_textureBase.TextureBase.html#scale","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1903,"kind":2048,"name":"setScale","url":"classes/core_texture_textureBase.TextureBase.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1904,"kind":2048,"name":"setImagePath","url":"classes/core_texture_textureBase.TextureBase.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1905,"kind":2048,"name":"setFillColor","url":"classes/core_texture_textureBase.TextureBase.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":1906,"kind":2,"name":"core/texture/textureSheet","url":"modules/core_texture_textureSheet.html","classes":"tsd-kind-module"},{"id":1907,"kind":128,"name":"TextureSheet","url":"classes/core_texture_textureSheet.TextureSheet.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/texture/textureSheet"},{"id":1908,"kind":2048,"name":"fromColor","url":"classes/core_texture_textureSheet.TextureSheet.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureSheet.TextureSheet"},{"id":1909,"kind":2048,"name":"fromTexture","url":"classes/core_texture_textureSheet.TextureSheet.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureSheet.TextureSheet"},{"id":1910,"kind":2048,"name":"fromEither","url":"classes/core_texture_textureSheet.TextureSheet.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureSheet.TextureSheet"},{"id":1911,"kind":512,"name":"constructor","url":"classes/core_texture_textureSheet.TextureSheet.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/texture/textureSheet.TextureSheet"},{"id":1912,"kind":1024,"name":"frameWidth","url":"classes/core_texture_textureSheet.TextureSheet.html#frameWidth","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":1913,"kind":1024,"name":"frameHeight","url":"classes/core_texture_textureSheet.TextureSheet.html#frameHeight","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":1914,"kind":1024,"name":"rows","url":"classes/core_texture_textureSheet.TextureSheet.html#rows","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":1915,"kind":1024,"name":"cols","url":"classes/core_texture_textureSheet.TextureSheet.html#cols","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":1916,"kind":1024,"name":"type","url":"classes/core_texture_textureSheet.TextureSheet.html#type","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1917,"kind":1024,"name":"id","url":"classes/core_texture_textureSheet.TextureSheet.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1918,"kind":1024,"name":"dataType","url":"classes/core_texture_textureSheet.TextureSheet.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1919,"kind":1024,"name":"texture","url":"classes/core_texture_textureSheet.TextureSheet.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1920,"kind":1024,"name":"scale","url":"classes/core_texture_textureSheet.TextureSheet.html#scale","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1921,"kind":2048,"name":"setScale","url":"classes/core_texture_textureSheet.TextureSheet.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1922,"kind":2048,"name":"setImagePath","url":"classes/core_texture_textureSheet.TextureSheet.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1923,"kind":2048,"name":"setFillColor","url":"classes/core_texture_textureSheet.TextureSheet.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":1924,"kind":2,"name":"index","url":"modules/index.html","classes":"tsd-kind-module"},{"id":1925,"kind":4,"name":"Duck","url":"modules/index.Duck.html","classes":"tsd-kind-namespace tsd-parent-kind-module","parent":"index"},{"id":1926,"kind":64,"name":"AutoCanvas","url":"modules/index.Duck.html#AutoCanvas","classes":"tsd-kind-function tsd-parent-kind-namespace","parent":"index.Duck"},{"id":1927,"kind":4,"name":"Classes","url":"modules/index.Duck.Classes.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":1928,"kind":32,"name":"Game","url":"modules/index.Duck.Classes.html#Game","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1929,"kind":32,"name":"Scene","url":"modules/index.Duck.Classes.html#Scene","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1930,"kind":4,"name":"GameObjects","url":"modules/index.Duck.Classes.GameObjects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1931,"kind":32,"name":"GameObject","url":"modules/index.Duck.Classes.GameObjects.html#GameObject","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1932,"kind":32,"name":"Circle","url":"modules/index.Duck.Classes.GameObjects.html#Circle","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1933,"kind":32,"name":"Rect","url":"modules/index.Duck.Classes.GameObjects.html#Rect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1934,"kind":32,"name":"RoundRect","url":"modules/index.Duck.Classes.GameObjects.html#RoundRect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1935,"kind":32,"name":"Sprite","url":"modules/index.Duck.Classes.GameObjects.html#Sprite","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1936,"kind":4,"name":"Particles","url":"modules/index.Duck.Classes.GameObjects.Particles.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1937,"kind":32,"name":"Particle","url":"modules/index.Duck.Classes.GameObjects.Particles.html#Particle","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.Particles"},{"id":1938,"kind":32,"name":"ParticleEmitter","url":"modules/index.Duck.Classes.GameObjects.Particles.html#ParticleEmitter","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.Particles"},{"id":1939,"kind":4,"name":"UI","url":"modules/index.Duck.Classes.GameObjects.UI.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1940,"kind":32,"name":"Button","url":"modules/index.Duck.Classes.GameObjects.UI.html#Button","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.UI"},{"id":1941,"kind":32,"name":"Text","url":"modules/index.Duck.Classes.GameObjects.UI.html#Text","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.UI"},{"id":1942,"kind":4,"name":"Misc","url":"modules/index.Duck.Classes.GameObjects.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":1943,"kind":32,"name":"CanvasModulate","url":"modules/index.Duck.Classes.GameObjects.Misc.html#CanvasModulate","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.Misc"},{"id":1944,"kind":4,"name":"Effects","url":"modules/index.Duck.Classes.Effects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1945,"kind":32,"name":"Effect","url":"modules/index.Duck.Classes.Effects.html#Effect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects"},{"id":1946,"kind":4,"name":"Presets","url":"modules/index.Duck.Classes.Effects.Presets.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects"},{"id":1947,"kind":32,"name":"ExplosionEffect","url":"modules/index.Duck.Classes.Effects.Presets.html#ExplosionEffect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects.Presets"},{"id":1948,"kind":32,"name":"SmokeEffect","url":"modules/index.Duck.Classes.Effects.Presets.html#SmokeEffect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects.Presets"},{"id":1949,"kind":4,"name":"Misc","url":"modules/index.Duck.Classes.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1950,"kind":32,"name":"Loader","url":"modules/index.Duck.Classes.Misc.html#Loader","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":1951,"kind":32,"name":"Group","url":"modules/index.Duck.Classes.Misc.html#Group","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":1952,"kind":32,"name":"Cutscene","url":"modules/index.Duck.Classes.Misc.html#Cutscene","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":1953,"kind":32,"name":"CacheManager","url":"modules/index.Duck.Classes.Misc.html#CacheManager","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":1954,"kind":32,"name":"PluginManager","url":"modules/index.Duck.Classes.Misc.html#PluginManager","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":1955,"kind":4,"name":"Base","url":"modules/index.Duck.Classes.Base.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1956,"kind":32,"name":"Amount","url":"modules/index.Duck.Classes.Base.html#Amount","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Base"},{"id":1957,"kind":32,"name":"Once","url":"modules/index.Duck.Classes.Base.html#Once","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Base"},{"id":1958,"kind":32,"name":"Render","url":"modules/index.Duck.Classes.Base.html#Render","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Base"},{"id":1959,"kind":4,"name":"Sound","url":"modules/index.Duck.Classes.Sound.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1960,"kind":32,"name":"SoundPlayer","url":"modules/index.Duck.Classes.Sound.html#SoundPlayer","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Sound"},{"id":1961,"kind":4,"name":"Cameras","url":"modules/index.Duck.Classes.Cameras.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1962,"kind":32,"name":"Camera","url":"modules/index.Duck.Classes.Cameras.html#Camera","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Cameras"},{"id":1963,"kind":4,"name":"Physics","url":"modules/index.Duck.Classes.Physics.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1964,"kind":32,"name":"Collider","url":"modules/index.Duck.Classes.Physics.html#Collider","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":1965,"kind":32,"name":"PhysicsServer","url":"modules/index.Duck.Classes.Physics.html#PhysicsServer","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":1966,"kind":32,"name":"PhysicsBody","url":"modules/index.Duck.Classes.Physics.html#PhysicsBody","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":1967,"kind":4,"name":"Models","url":"modules/index.Duck.Classes.Physics.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":1968,"kind":32,"name":"Hitbox","url":"modules/index.Duck.Classes.Physics.Models.html#Hitbox","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics.Models"},{"id":1969,"kind":32,"name":"Area","url":"modules/index.Duck.Classes.Physics.Models.html#Area","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics.Models"},{"id":1970,"kind":4,"name":"Models","url":"modules/index.Duck.Classes.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1971,"kind":32,"name":"DisplayList","url":"modules/index.Duck.Classes.Models.html#DisplayList","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Models"},{"id":1972,"kind":32,"name":"PhysicsList","url":"modules/index.Duck.Classes.Models.html#PhysicsList","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Models"},{"id":1973,"kind":32,"name":"Texture","url":"modules/index.Duck.Classes.Models.html#Texture","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Models"},{"id":1974,"kind":4,"name":"Map","url":"modules/index.Duck.Classes.Map.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1975,"kind":32,"name":"Map","url":"modules/index.Duck.Classes.Map.html#Map","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Map"},{"id":1976,"kind":32,"name":"TileMap","url":"modules/index.Duck.Classes.Map.html#TileMap","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Map"},{"id":1977,"kind":4,"name":"Math","url":"modules/index.Duck.Classes.Math.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1978,"kind":32,"name":"Vector2","url":"modules/index.Duck.Classes.Math.html#Vector2","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Math"},{"id":1979,"kind":4,"name":"Lights","url":"modules/index.Duck.Classes.Lights.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1980,"kind":32,"name":"StaticLight","url":"modules/index.Duck.Classes.Lights.html#StaticLight","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Lights"},{"id":1981,"kind":4,"name":"Input","url":"modules/index.Duck.Classes.Input.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1982,"kind":32,"name":"Input","url":"modules/index.Duck.Classes.Input.html#Input","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":1983,"kind":32,"name":"KeyboardInput","url":"modules/index.Duck.Classes.Input.html#KeyboardInput","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":1984,"kind":32,"name":"MouseInput","url":"modules/index.Duck.Classes.Input.html#MouseInput","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":1985,"kind":4,"name":"Models","url":"modules/index.Duck.Classes.Input.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":1986,"kind":32,"name":"Key","url":"modules/index.Duck.Classes.Input.Models.html#Key","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input.Models"},{"id":1987,"kind":32,"name":"Mouse","url":"modules/index.Duck.Classes.Input.Models.html#Mouse","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input.Models"},{"id":1988,"kind":4,"name":"Animation","url":"modules/index.Duck.Classes.Animation.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":1989,"kind":32,"name":"Animation","url":"modules/index.Duck.Classes.Animation.html#Animation","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":1990,"kind":32,"name":"AnimationFrame","url":"modules/index.Duck.Classes.Animation.html#AnimationFrame","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":1991,"kind":32,"name":"AnimationManager","url":"modules/index.Duck.Classes.Animation.html#AnimationManager","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":1992,"kind":32,"name":"AnimationState","url":"modules/index.Duck.Classes.Animation.html#AnimationState","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":1993,"kind":32,"name":"StateMachine","url":"modules/index.Duck.Classes.Animation.html#StateMachine","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":1994,"kind":4,"name":"TypeClasses","url":"modules/index.Duck.TypeClasses.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":1995,"kind":4194304,"name":"Game","url":"modules/index.Duck.TypeClasses.html#Game","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":1996,"kind":4194304,"name":"Scene","url":"modules/index.Duck.TypeClasses.html#Scene","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":1997,"kind":4,"name":"GameObjects","url":"modules/index.Duck.TypeClasses.GameObjects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":1998,"kind":4194304,"name":"GameObject","url":"modules/index.Duck.TypeClasses.GameObjects.html#GameObject","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.GameObjects"},{"id":1999,"kind":4194304,"name":"Circle","url":"modules/index.Duck.TypeClasses.GameObjects.html#Circle","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2000,"kind":4194304,"name":"Rect","url":"modules/index.Duck.TypeClasses.GameObjects.html#Rect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2001,"kind":4194304,"name":"RoundRect","url":"modules/index.Duck.TypeClasses.GameObjects.html#RoundRect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2002,"kind":4194304,"name":"Sprite","url":"modules/index.Duck.TypeClasses.GameObjects.html#Sprite","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2003,"kind":4,"name":"Particles","url":"modules/index.Duck.TypeClasses.GameObjects.Particles.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2004,"kind":4194304,"name":"Particle","url":"modules/index.Duck.TypeClasses.GameObjects.Particles.html#Particle","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.Particles"},{"id":2005,"kind":4194304,"name":"ParticleEmitter","url":"modules/index.Duck.TypeClasses.GameObjects.Particles.html#ParticleEmitter","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.Particles"},{"id":2006,"kind":4,"name":"UI","url":"modules/index.Duck.TypeClasses.GameObjects.UI.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2007,"kind":4194304,"name":"Button","url":"modules/index.Duck.TypeClasses.GameObjects.UI.html#Button","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.UI"},{"id":2008,"kind":4194304,"name":"Text","url":"modules/index.Duck.TypeClasses.GameObjects.UI.html#Text","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.UI"},{"id":2009,"kind":4,"name":"Misc","url":"modules/index.Duck.TypeClasses.GameObjects.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2010,"kind":4194304,"name":"CanvasModulate","url":"modules/index.Duck.TypeClasses.GameObjects.Misc.html#CanvasModulate","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.Misc"},{"id":2011,"kind":4,"name":"Effects","url":"modules/index.Duck.TypeClasses.Effects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2012,"kind":4194304,"name":"Effect","url":"modules/index.Duck.TypeClasses.Effects.html#Effect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects"},{"id":2013,"kind":4,"name":"Presets","url":"modules/index.Duck.TypeClasses.Effects.Presets.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects"},{"id":2014,"kind":4194304,"name":"ExplosionEffect","url":"modules/index.Duck.TypeClasses.Effects.Presets.html#ExplosionEffect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects.Presets"},{"id":2015,"kind":4194304,"name":"SmokeEffect","url":"modules/index.Duck.TypeClasses.Effects.Presets.html#SmokeEffect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects.Presets"},{"id":2016,"kind":4,"name":"Misc","url":"modules/index.Duck.TypeClasses.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2017,"kind":4194304,"name":"Loader","url":"modules/index.Duck.TypeClasses.Misc.html#Loader","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2018,"kind":4194304,"name":"Group","url":"modules/index.Duck.TypeClasses.Misc.html#Group","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.Misc"},{"id":2019,"kind":4194304,"name":"Cutscene","url":"modules/index.Duck.TypeClasses.Misc.html#Cutscene","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2020,"kind":4194304,"name":"CacheManager","url":"modules/index.Duck.TypeClasses.Misc.html#CacheManager","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2021,"kind":4194304,"name":"PluginManager","url":"modules/index.Duck.TypeClasses.Misc.html#PluginManager","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2022,"kind":4,"name":"Base","url":"modules/index.Duck.TypeClasses.Base.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2023,"kind":4194304,"name":"Amount","url":"modules/index.Duck.TypeClasses.Base.html#Amount","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Base"},{"id":2024,"kind":4194304,"name":"Once","url":"modules/index.Duck.TypeClasses.Base.html#Once","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Base"},{"id":2025,"kind":4194304,"name":"Render","url":"modules/index.Duck.TypeClasses.Base.html#Render","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Base"},{"id":2026,"kind":4,"name":"Sound","url":"modules/index.Duck.TypeClasses.Sound.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2027,"kind":4194304,"name":"SoundPlayer","url":"modules/index.Duck.TypeClasses.Sound.html#SoundPlayer","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Sound"},{"id":2028,"kind":4,"name":"Cameras","url":"modules/index.Duck.TypeClasses.Cameras.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2029,"kind":4194304,"name":"Camera","url":"modules/index.Duck.TypeClasses.Cameras.html#Camera","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Cameras"},{"id":2030,"kind":4,"name":"Physics","url":"modules/index.Duck.TypeClasses.Physics.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2031,"kind":4194304,"name":"Collider","url":"modules/index.Duck.TypeClasses.Physics.html#Collider","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics"},{"id":2032,"kind":4194304,"name":"PhysicsServer","url":"modules/index.Duck.TypeClasses.Physics.html#PhysicsServer","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics"},{"id":2033,"kind":4194304,"name":"PhysicsBody","url":"modules/index.Duck.TypeClasses.Physics.html#PhysicsBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.Physics"},{"id":2034,"kind":4,"name":"Models","url":"modules/index.Duck.TypeClasses.Physics.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics"},{"id":2035,"kind":4194304,"name":"Hitbox","url":"modules/index.Duck.TypeClasses.Physics.Models.html#Hitbox","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics.Models"},{"id":2036,"kind":4194304,"name":"Area","url":"modules/index.Duck.TypeClasses.Physics.Models.html#Area","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics.Models"},{"id":2037,"kind":4,"name":"Models","url":"modules/index.Duck.TypeClasses.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2038,"kind":4194304,"name":"DisplayList","url":"modules/index.Duck.TypeClasses.Models.html#DisplayList","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Models"},{"id":2039,"kind":4194304,"name":"PhysicsList","url":"modules/index.Duck.TypeClasses.Models.html#PhysicsList","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Models"},{"id":2040,"kind":4194304,"name":"Texture","url":"modules/index.Duck.TypeClasses.Models.html#Texture","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.Models"},{"id":2041,"kind":4,"name":"Map","url":"modules/index.Duck.TypeClasses.Map.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2042,"kind":4194304,"name":"Map","url":"modules/index.Duck.TypeClasses.Map.html#Map","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Map"},{"id":2043,"kind":4194304,"name":"TileMap","url":"modules/index.Duck.TypeClasses.Map.html#TileMap","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Map"},{"id":2044,"kind":4,"name":"Math","url":"modules/index.Duck.TypeClasses.Math.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2045,"kind":4194304,"name":"Vector2","url":"modules/index.Duck.TypeClasses.Math.html#Vector2","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Math"},{"id":2046,"kind":4,"name":"Lights","url":"modules/index.Duck.TypeClasses.Lights.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2047,"kind":4194304,"name":"StaticLight","url":"modules/index.Duck.TypeClasses.Lights.html#StaticLight","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Lights"},{"id":2048,"kind":4,"name":"Input","url":"modules/index.Duck.TypeClasses.Input.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2049,"kind":4194304,"name":"Input","url":"modules/index.Duck.TypeClasses.Input.html#Input","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2050,"kind":4194304,"name":"KeyboardInput","url":"modules/index.Duck.TypeClasses.Input.html#KeyboardInput","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2051,"kind":4194304,"name":"MouseInput","url":"modules/index.Duck.TypeClasses.Input.html#MouseInput","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2052,"kind":4,"name":"Models","url":"modules/index.Duck.TypeClasses.Input.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2053,"kind":4194304,"name":"Key","url":"modules/index.Duck.TypeClasses.Input.Models.html#Key","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input.Models"},{"id":2054,"kind":4194304,"name":"Mouse","url":"modules/index.Duck.TypeClasses.Input.Models.html#Mouse","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input.Models"},{"id":2055,"kind":4,"name":"Animation","url":"modules/index.Duck.TypeClasses.Animation.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2056,"kind":4194304,"name":"Animation","url":"modules/index.Duck.TypeClasses.Animation.html#Animation","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2057,"kind":4194304,"name":"AnimationFrame","url":"modules/index.Duck.TypeClasses.Animation.html#AnimationFrame","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2058,"kind":4194304,"name":"AnimationManager","url":"modules/index.Duck.TypeClasses.Animation.html#AnimationManager","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2059,"kind":4194304,"name":"AnimationState","url":"modules/index.Duck.TypeClasses.Animation.html#AnimationState","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2060,"kind":4194304,"name":"StateMachine","url":"modules/index.Duck.TypeClasses.Animation.html#StateMachine","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2061,"kind":4,"name":"Layers","url":"modules/index.Duck.Layers.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":2062,"kind":4,"name":"Rendering","url":"modules/index.Duck.Layers.Rendering.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Layers"},{"id":2063,"kind":32,"name":"zIndex","url":"modules/index.Duck.Layers.Rendering.html#zIndex","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Layers.Rendering"},{"id":2064,"kind":65536,"name":"__type","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"index.Duck.Layers.Rendering.zIndex"},{"id":2065,"kind":1024,"name":"canvasModulate","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.canvasModulate","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2066,"kind":1024,"name":"gameobject","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.gameobject","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2067,"kind":1024,"name":"particle","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.particle","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2068,"kind":1024,"name":"button","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.button","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2069,"kind":1024,"name":"text","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.text","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2070,"kind":1024,"name":"graphicDebug","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.graphicDebug","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2071,"kind":1024,"name":"fades","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.fades","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2072,"kind":4,"name":"Types","url":"modules/index.Duck.Types.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":2073,"kind":4194304,"name":"GameObject","url":"modules/index.Duck.Types.html#GameObject","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types"},{"id":2074,"kind":4194304,"name":"PhysicsProcessMember","url":"modules/index.Duck.Types.html#PhysicsProcessMember","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2075,"kind":256,"name":"Renderable","url":"interfaces/index.Duck.Types.Renderable.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2076,"kind":1024,"name":"id","url":"interfaces/index.Duck.Types.Renderable.html#id","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2077,"kind":1024,"name":"zIndex","url":"interfaces/index.Duck.Types.Renderable.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2078,"kind":1024,"name":"visible","url":"interfaces/index.Duck.Types.Renderable.html#visible","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2079,"kind":1024,"name":"game","url":"interfaces/index.Duck.Types.Renderable.html#game","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2080,"kind":2048,"name":"_draw","url":"interfaces/index.Duck.Types.Renderable.html#_draw","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2081,"kind":1024,"name":"culled","url":"interfaces/index.Duck.Types.Renderable.html#culled","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2082,"kind":4,"name":"Game","url":"modules/index.Duck.Types.Game.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2083,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.Game.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Game"},{"id":2084,"kind":1024,"name":"canvas","url":"interfaces/index.Duck.Types.Game.Config.html#canvas","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2085,"kind":1024,"name":"defaultScene","url":"interfaces/index.Duck.Types.Game.Config.html#defaultScene","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2086,"kind":1024,"name":"roundPixels","url":"interfaces/index.Duck.Types.Game.Config.html#roundPixels","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2087,"kind":1024,"name":"focus","url":"interfaces/index.Duck.Types.Game.Config.html#focus","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2088,"kind":1024,"name":"blur","url":"interfaces/index.Duck.Types.Game.Config.html#blur","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2089,"kind":1024,"name":"pauseRenderingOnBlur","url":"interfaces/index.Duck.Types.Game.Config.html#pauseRenderingOnBlur","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2090,"kind":1024,"name":"physics","url":"interfaces/index.Duck.Types.Game.Config.html#physics","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2091,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Game.Config.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2092,"kind":1024,"name":"enabled","url":"interfaces/index.Duck.Types.Game.Config.html#__type.enabled","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2093,"kind":1024,"name":"gravity","url":"interfaces/index.Duck.Types.Game.Config.html#__type.gravity","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2094,"kind":1024,"name":"customTick","url":"interfaces/index.Duck.Types.Game.Config.html#__type.customTick","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2095,"kind":1024,"name":"debug","url":"interfaces/index.Duck.Types.Game.Config.html#__type.debug-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2096,"kind":2048,"name":"onPauseRendering","url":"interfaces/index.Duck.Types.Game.Config.html#onPauseRendering","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2097,"kind":2048,"name":"onResumeRendering","url":"interfaces/index.Duck.Types.Game.Config.html#onResumeRendering","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2098,"kind":1024,"name":"scale","url":"interfaces/index.Duck.Types.Game.Config.html#scale","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2099,"kind":1024,"name":"debug","url":"interfaces/index.Duck.Types.Game.Config.html#debug","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2100,"kind":1024,"name":"debugRendering","url":"interfaces/index.Duck.Types.Game.Config.html#debugRendering","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2101,"kind":1024,"name":"splashScreen","url":"interfaces/index.Duck.Types.Game.Config.html#splashScreen","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2102,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Game.Config.html#__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2103,"kind":1024,"name":"img","url":"interfaces/index.Duck.Types.Game.Config.html#__type-1.img","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2104,"kind":1024,"name":"extraDuration","url":"interfaces/index.Duck.Types.Game.Config.html#__type-1.extraDuration","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2105,"kind":1024,"name":"background","url":"interfaces/index.Duck.Types.Game.Config.html#background","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2106,"kind":1024,"name":"smartScale","url":"interfaces/index.Duck.Types.Game.Config.html#smartScale","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2107,"kind":1024,"name":"dprScale","url":"interfaces/index.Duck.Types.Game.Config.html#dprScale","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2108,"kind":1024,"name":"poolingInterval","url":"interfaces/index.Duck.Types.Game.Config.html#poolingInterval","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2109,"kind":256,"name":"Stack","url":"interfaces/index.Duck.Types.Game.Stack.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Game"},{"id":2110,"kind":1024,"name":"scenes","url":"interfaces/index.Duck.Types.Game.Stack.html#scenes","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Stack"},{"id":2111,"kind":1024,"name":"defaultScene","url":"interfaces/index.Duck.Types.Game.Stack.html#defaultScene","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Stack"},{"id":2112,"kind":256,"name":"Plugin","url":"interfaces/index.Duck.Types.Game.Plugin.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Game"},{"id":2113,"kind":2048,"name":"func","url":"interfaces/index.Duck.Types.Game.Plugin.html#func","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Plugin"},{"id":2114,"kind":1024,"name":"args","url":"interfaces/index.Duck.Types.Game.Plugin.html#args","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Plugin"},{"id":2115,"kind":1024,"name":"name","url":"interfaces/index.Duck.Types.Game.Plugin.html#name","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Plugin"},{"id":2116,"kind":4,"name":"RendererPipeline","url":"modules/index.Duck.Types.RendererPipeline.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2117,"kind":256,"name":"PoolStackItem","url":"interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.RendererPipeline"},{"id":2118,"kind":1024,"name":"scene","url":"interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html#scene","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.RendererPipeline.PoolStackItem"},{"id":2119,"kind":1024,"name":"renderables","url":"interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html#renderables","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.RendererPipeline.PoolStackItem"},{"id":2120,"kind":4,"name":"Misc","url":"modules/index.Duck.Types.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2121,"kind":256,"name":"Scale","url":"interfaces/index.Duck.Types.Misc.Scale.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Misc"},{"id":2122,"kind":1024,"name":"width","url":"interfaces/index.Duck.Types.Misc.Scale.html#width","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Misc.Scale"},{"id":2123,"kind":1024,"name":"height","url":"interfaces/index.Duck.Types.Misc.Scale.html#height","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Misc.Scale"},{"id":2124,"kind":4,"name":"Collider","url":"modules/index.Duck.Types.Collider.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2125,"kind":4194304,"name":"ShapeString","url":"modules/index.Duck.Types.Collider.html#ShapeString","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Collider"},{"id":2126,"kind":4194304,"name":"CollisionResponseType","url":"modules/index.Duck.Types.Collider.html#CollisionResponseType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Collider"},{"id":2127,"kind":4,"name":"Sound","url":"modules/index.Duck.Types.Sound.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2128,"kind":256,"name":"Sprite","url":"interfaces/index.Duck.Types.Sound.Sprite.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Sound"},{"id":2129,"kind":1024,"name":"startSeconds","url":"interfaces/index.Duck.Types.Sound.Sprite.html#startSeconds","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.Sprite"},{"id":2130,"kind":1024,"name":"endSeconds","url":"interfaces/index.Duck.Types.Sound.Sprite.html#endSeconds","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.Sprite"},{"id":2131,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Sound.Sprite.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.Sprite"},{"id":2132,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.Sound.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Sound"},{"id":2133,"kind":1024,"name":"autoplay","url":"interfaces/index.Duck.Types.Sound.Config.html#autoplay","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.Config"},{"id":2134,"kind":1024,"name":"volume","url":"interfaces/index.Duck.Types.Sound.Config.html#volume","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.Config"},{"id":2135,"kind":1024,"name":"sprites","url":"interfaces/index.Duck.Types.Sound.Config.html#sprites","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.Config"},{"id":2136,"kind":1024,"name":"loop","url":"interfaces/index.Duck.Types.Sound.Config.html#loop","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.Config"},{"id":2137,"kind":4,"name":"GamepadInput","url":"modules/index.Duck.Types.GamepadInput.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2138,"kind":4194304,"name":"MappingType","url":"modules/index.Duck.Types.GamepadInput.html#MappingType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2139,"kind":4194304,"name":"Mapping","url":"modules/index.Duck.Types.GamepadInput.html#Mapping","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2140,"kind":8,"name":"XboxMapping","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html","classes":"tsd-kind-enum tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2141,"kind":16,"name":"A","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#A","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2142,"kind":16,"name":"B","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#B","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2143,"kind":16,"name":"X","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#X","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2144,"kind":16,"name":"Y","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#Y","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2145,"kind":16,"name":"LB","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LB","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2146,"kind":16,"name":"RB","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#RB","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2147,"kind":16,"name":"LT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2148,"kind":16,"name":"RT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#RT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2149,"kind":16,"name":"SHOW_ADDRESS_BAR","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#SHOW_ADDRESS_BAR","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2150,"kind":16,"name":"SHOW_MENU","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#SHOW_MENU","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2151,"kind":16,"name":"LEFT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LEFT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2152,"kind":16,"name":"RIGHT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#RIGHT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2153,"kind":16,"name":"D_PAD_UP","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_UP","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2154,"kind":16,"name":"D_PAD_DOWN","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_DOWN","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2155,"kind":16,"name":"D_PAD_LEFT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_LEFT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2156,"kind":16,"name":"D_PAD_RIGHT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_RIGHT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2157,"kind":16,"name":"LOGO","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LOGO","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2158,"kind":8,"name":"PlaystationMapping","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html","classes":"tsd-kind-enum tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2159,"kind":16,"name":"X","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#X","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2160,"kind":16,"name":"CIRCLE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#CIRCLE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2161,"kind":16,"name":"SQUARE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#SQUARE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2162,"kind":16,"name":"TRIANGLE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#TRIANGLE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2163,"kind":16,"name":"L1","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#L1","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2164,"kind":16,"name":"R1","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#R1","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2165,"kind":16,"name":"L2","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#L2","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2166,"kind":16,"name":"R2","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#R2","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2167,"kind":16,"name":"SHARE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#SHARE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2168,"kind":16,"name":"OPTIONS","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#OPTIONS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2169,"kind":16,"name":"LEFT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#LEFT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2170,"kind":16,"name":"RIGHT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#RIGHT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2171,"kind":16,"name":"D_PAD_UP","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_UP","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2172,"kind":16,"name":"D_PAD_DOWN","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_DOWN","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2173,"kind":16,"name":"D_PAD_LEFT","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_LEFT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2174,"kind":16,"name":"D_PAD_RIGHT","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_RIGHT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2175,"kind":16,"name":"LOGO","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#LOGO","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2176,"kind":4,"name":"UI","url":"modules/index.Duck.Types.UI.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2177,"kind":4,"name":"Text","url":"modules/index.Duck.Types.UI.Text.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types.UI"},{"id":2178,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.UI.Text.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Text"},{"id":2179,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.UI.Text.Config.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2180,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.UI.Text.Config.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2181,"kind":1024,"name":"method","url":"interfaces/index.Duck.Types.UI.Text.Config.html#method","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2182,"kind":1024,"name":"styles","url":"interfaces/index.Duck.Types.UI.Text.Config.html#styles","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2183,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2184,"kind":1024,"name":"fontCSS","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.fontCSS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2185,"kind":1024,"name":"strokeWidth","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.strokeWidth","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2186,"kind":1024,"name":"strokeColor","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.strokeColor","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2187,"kind":1024,"name":"fillColor","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.fillColor","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2188,"kind":1024,"name":"maxWidth","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.maxWidth","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2189,"kind":4,"name":"Button","url":"modules/index.Duck.Types.UI.Button.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types.UI"},{"id":2190,"kind":4194304,"name":"Shape","url":"modules/index.Duck.Types.UI.Button.html#Shape","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2191,"kind":4194304,"name":"ListenerType","url":"modules/index.Duck.Types.UI.Button.html#ListenerType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2192,"kind":256,"name":"ListenerReturn","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2193,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.ListenerReturn"},{"id":2194,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.ListenerReturn"},{"id":2195,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.ListenerReturn"},{"id":2196,"kind":4194304,"name":"ListenerFunc","url":"modules/index.Duck.Types.UI.Button.html#ListenerFunc","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2197,"kind":65536,"name":"__type","url":"modules/index.Duck.Types.UI.Button.html#ListenerFunc.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias","parent":"index.Duck.Types.UI.Button.ListenerFunc"},{"id":2198,"kind":256,"name":"Listener","url":"interfaces/index.Duck.Types.UI.Button.Listener.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2199,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.UI.Button.Listener.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.Listener"},{"id":2200,"kind":1024,"name":"func","url":"interfaces/index.Duck.Types.UI.Button.Listener.html#func","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.Listener"},{"id":2201,"kind":4,"name":"Group","url":"modules/index.Duck.Types.Group.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2202,"kind":4194304,"name":"Filter","url":"modules/index.Duck.Types.Group.html#Filter","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Group"},{"id":2203,"kind":4194304,"name":"ListenerType","url":"modules/index.Duck.Types.Group.html#ListenerType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Group"},{"id":2204,"kind":256,"name":"Listener","url":"interfaces/index.Duck.Types.Group.Listener.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Group"},{"id":2205,"kind":2048,"name":"func","url":"interfaces/index.Duck.Types.Group.Listener.html#func","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Group.Listener"},{"id":2206,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Group.Listener.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Group.Listener"},{"id":2207,"kind":4,"name":"ParticleEmitter","url":"modules/index.Duck.Types.ParticleEmitter.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2208,"kind":4194304,"name":"Range","url":"modules/index.Duck.Types.ParticleEmitter.html#Range","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleEmitter"},{"id":2209,"kind":256,"name":"Offloaders","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleEmitter"},{"id":2210,"kind":2048,"name":"maxAmount","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html#maxAmount","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleEmitter.Offloaders"},{"id":2211,"kind":2048,"name":"maxAge","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html#maxAge","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleEmitter.Offloaders"},{"id":2212,"kind":2048,"name":"maxBounds","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html#maxBounds","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleEmitter.Offloaders"},{"id":2213,"kind":4,"name":"Cutscene","url":"modules/index.Duck.Types.Cutscene.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2214,"kind":4194304,"name":"OnListenerType","url":"modules/index.Duck.Types.Cutscene.html#OnListenerType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2215,"kind":256,"name":"OnListener","url":"interfaces/index.Duck.Types.Cutscene.OnListener.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2216,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Cutscene.OnListener.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.OnListener"},{"id":2217,"kind":1024,"name":"func","url":"interfaces/index.Duck.Types.Cutscene.OnListener.html#func","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.OnListener"},{"id":2218,"kind":4194304,"name":"StepType","url":"modules/index.Duck.Types.Cutscene.html#StepType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2219,"kind":256,"name":"Step","url":"interfaces/index.Duck.Types.Cutscene.Step.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2220,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Cutscene.Step.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2221,"kind":1024,"name":"affect","url":"interfaces/index.Duck.Types.Cutscene.Step.html#affect","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2222,"kind":1024,"name":"moveTo","url":"interfaces/index.Duck.Types.Cutscene.Step.html#moveTo","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2223,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Step.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2224,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Cutscene.Step.html#__type.x","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Step.__type"},{"id":2225,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Cutscene.Step.html#__type.y","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Step.__type"},{"id":2226,"kind":1024,"name":"func","url":"interfaces/index.Duck.Types.Cutscene.Step.html#func","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2227,"kind":1024,"name":"cameraValue","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraValue","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2228,"kind":1024,"name":"cameraIntervalMS","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraIntervalMS","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2229,"kind":1024,"name":"cameraTimeMS","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraTimeMS","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2230,"kind":1024,"name":"sleepValue","url":"interfaces/index.Duck.Types.Cutscene.Step.html#sleepValue","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2231,"kind":1024,"name":"cameraFollow","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraFollow","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2232,"kind":1024,"name":"cameraFollowLerpX","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraFollowLerpX","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2233,"kind":1024,"name":"cameraFollowLerpY","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraFollowLerpY","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2234,"kind":256,"name":"Instructions","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2235,"kind":1024,"name":"init","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#init","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Instructions"},{"id":2236,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Instructions"},{"id":2237,"kind":1024,"name":"mainObjectPos","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.mainObjectPos","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2238,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-3","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2239,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-3.x-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2240,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-3.y-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2241,"kind":1024,"name":"otherObjectPos","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.otherObjectPos","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2242,"kind":1024,"name":"cameraSettings","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.cameraSettings","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2243,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2244,"kind":1024,"name":"FOV","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.FOV","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2245,"kind":1024,"name":"follow","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.follow","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2246,"kind":1024,"name":"zoom","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.zoom","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2247,"kind":1024,"name":"pos","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.pos","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2248,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.__type-2","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2249,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.__type-2.x","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type.__type"},{"id":2250,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.__type-2.y","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type.__type"},{"id":2251,"kind":1024,"name":"followLerpX","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.followLerpX","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2252,"kind":1024,"name":"followLerpY","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.followLerpY","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2253,"kind":1024,"name":"otherCameraSettings","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.otherCameraSettings","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2254,"kind":1024,"name":"steps","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#steps","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Instructions"},{"id":2255,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.Cutscene.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2256,"kind":1024,"name":"mainCamera","url":"interfaces/index.Duck.Types.Cutscene.Config.html#mainCamera","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2257,"kind":1024,"name":"otherCameras","url":"interfaces/index.Duck.Types.Cutscene.Config.html#otherCameras","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2258,"kind":1024,"name":"otherObjects","url":"interfaces/index.Duck.Types.Cutscene.Config.html#otherObjects","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2259,"kind":1024,"name":"mainObject","url":"interfaces/index.Duck.Types.Cutscene.Config.html#mainObject","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2260,"kind":4,"name":"Tilemap","url":"modules/index.Duck.Types.Tilemap.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2261,"kind":4194304,"name":"Map","url":"modules/index.Duck.Types.Tilemap.html#Map","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Tilemap"},{"id":2262,"kind":256,"name":"Atlas","url":"interfaces/index.Duck.Types.Tilemap.Atlas.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Tilemap"},{"id":2263,"kind":4,"name":"ParticleContainer","url":"modules/index.Duck.Types.ParticleContainer.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2264,"kind":256,"name":"Bounds","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleContainer"},{"id":2265,"kind":1024,"name":"position","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#position","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2266,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2267,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#__type.x","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.ParticleContainer.Bounds.__type"},{"id":2268,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#__type.y","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.ParticleContainer.Bounds.__type"},{"id":2269,"kind":1024,"name":"w","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#w","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2270,"kind":1024,"name":"h","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#h","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2271,"kind":256,"name":"Physics","url":"interfaces/index.Duck.Types.ParticleContainer.Physics.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleContainer"},{"id":2272,"kind":1024,"name":"bounciness","url":"interfaces/index.Duck.Types.ParticleContainer.Physics.html#bounciness","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Physics"},{"id":2273,"kind":4,"name":"Loader","url":"modules/index.Duck.Types.Loader.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2274,"kind":4194304,"name":"StackItemType","url":"modules/index.Duck.Types.Loader.html#StackItemType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Loader"},{"id":2275,"kind":256,"name":"StackItem","url":"interfaces/index.Duck.Types.Loader.StackItem.html","classes":"tsd-kind-interface tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types.Loader"},{"id":2276,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Loader.StackItem.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.StackItem"},{"id":2277,"kind":1024,"name":"value","url":"interfaces/index.Duck.Types.Loader.StackItem.html#value","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.StackItem"},{"id":2278,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Loader.StackItem.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.StackItem"},{"id":2279,"kind":256,"name":"TextureStackItem","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html","classes":"tsd-kind-interface tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types.Loader"},{"id":2280,"kind":1024,"name":"dataType","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#dataType","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2281,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#type","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2282,"kind":1024,"name":"value","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#value","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2283,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#key","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2284,"kind":4,"name":"Texture","url":"modules/index.Duck.Types.Texture.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2285,"kind":4194304,"name":"Type","url":"modules/index.Duck.Types.Texture.html#Type","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Texture"},{"id":2286,"kind":4194304,"name":"DataType","url":"modules/index.Duck.Types.Texture.html#DataType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Texture"},{"id":2287,"kind":4,"name":"PhysicsBody","url":"modules/index.Duck.Types.PhysicsBody.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2288,"kind":4194304,"name":"Type","url":"modules/index.Duck.Types.PhysicsBody.html#Type","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2289,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.PhysicsBody.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2290,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.PhysicsBody.Config.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.PhysicsBody.Config"},{"id":2291,"kind":256,"name":"AttachedBody","url":"interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2292,"kind":1024,"name":"body","url":"interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html#body","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.PhysicsBody.AttachedBody"},{"id":2293,"kind":1024,"name":"offset","url":"interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html#offset","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.PhysicsBody.AttachedBody"},{"id":2294,"kind":4194304,"name":"KinematicBody","url":"modules/index.Duck.Types.PhysicsBody.html#KinematicBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2295,"kind":4194304,"name":"RigidBody","url":"modules/index.Duck.Types.PhysicsBody.html#RigidBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2296,"kind":4194304,"name":"StaticBody","url":"modules/index.Duck.Types.PhysicsBody.html#StaticBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2297,"kind":4,"name":"Animation","url":"modules/index.Duck.Types.Animation.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2298,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.Animation.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Animation"},{"id":2299,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Animation.Config.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2300,"kind":1024,"name":"frames","url":"interfaces/index.Duck.Types.Animation.Config.html#frames","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2301,"kind":1024,"name":"frameRate","url":"interfaces/index.Duck.Types.Animation.Config.html#frameRate","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2302,"kind":1024,"name":"repeat","url":"interfaces/index.Duck.Types.Animation.Config.html#repeat","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2303,"kind":1024,"name":"yoyo","url":"interfaces/index.Duck.Types.Animation.Config.html#yoyo","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2304,"kind":1024,"name":"delay","url":"interfaces/index.Duck.Types.Animation.Config.html#delay","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2305,"kind":1024,"name":"useDelta","url":"interfaces/index.Duck.Types.Animation.Config.html#useDelta","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2306,"kind":256,"name":"FrameBase","url":"interfaces/index.Duck.Types.Animation.FrameBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Animation"},{"id":2307,"kind":1024,"name":"col","url":"interfaces/index.Duck.Types.Animation.FrameBase.html#col","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.FrameBase"},{"id":2308,"kind":1024,"name":"row","url":"interfaces/index.Duck.Types.Animation.FrameBase.html#row","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.FrameBase"},{"id":2309,"kind":4,"name":"StateMachine","url":"modules/index.Duck.Types.StateMachine.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2310,"kind":256,"name":"ConnectionBase","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.StateMachine"},{"id":2311,"kind":1024,"name":"from","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html#from","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBase"},{"id":2312,"kind":1024,"name":"to","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html#to","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBase"},{"id":2313,"kind":1024,"name":"connType","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html#connType","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBase"},{"id":2314,"kind":256,"name":"ConnectionBaseValue","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.StateMachine"},{"id":2315,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBaseValue"},{"id":2316,"kind":1024,"name":"vector","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html#vector","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBaseValue"},{"id":2317,"kind":1024,"name":"autoAdvance","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html#autoAdvance","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBaseValue"},{"id":2318,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.StateMachine.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.StateMachine"},{"id":2319,"kind":1024,"name":"defaultState","url":"interfaces/index.Duck.Types.StateMachine.Config.html#defaultState","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.Config"},{"id":2320,"kind":1024,"name":"connections","url":"interfaces/index.Duck.Types.StateMachine.Config.html#connections","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.Config"},{"id":2321,"kind":4,"name":"KeyboardInput","url":"modules/index.Duck.Types.KeyboardInput.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2322,"kind":256,"name":"KeyBase","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.KeyboardInput"},{"id":2323,"kind":1024,"name":"keyCode","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyCode","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2324,"kind":1024,"name":"descriptor","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2325,"kind":2048,"name":"keyDown","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyDown","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2326,"kind":2048,"name":"keyUp","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyUp","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2327,"kind":2048,"name":"keyJustPressed","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyJustPressed","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2328,"kind":2048,"name":"keyState","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyState","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2329,"kind":4,"name":"MouseInput","url":"modules/index.Duck.Types.MouseInput.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2330,"kind":256,"name":"MouseBase","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.MouseInput"},{"id":2331,"kind":1024,"name":"button","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#button","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2332,"kind":1024,"name":"descriptor","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2333,"kind":2048,"name":"mouseDown","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#mouseDown","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2334,"kind":2048,"name":"mouseUp","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#mouseUp","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2335,"kind":2048,"name":"mouseMove","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#mouseMove","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2336,"kind":4,"name":"Camera","url":"modules/index.Duck.Types.Camera.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2337,"kind":256,"name":"CullingOptions","url":"interfaces/index.Duck.Types.Camera.CullingOptions.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Camera"},{"id":2338,"kind":1024,"name":"preserveVisibility","url":"interfaces/index.Duck.Types.Camera.CullingOptions.html#preserveVisibility","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Camera.CullingOptions"},{"id":2339,"kind":1024,"name":"modifyPhysicsEnable","url":"interfaces/index.Duck.Types.Camera.CullingOptions.html#modifyPhysicsEnable","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Camera.CullingOptions"},{"id":2340,"kind":4,"name":"TextureAtlas","url":"modules/index.Duck.Types.TextureAtlas.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2341,"kind":256,"name":"FrameData","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.TextureAtlas"},{"id":2342,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2343,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2344,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2345,"kind":1024,"name":"w","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#w","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2346,"kind":1024,"name":"h","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#h","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2347,"kind":256,"name":"JSONSchema","url":"interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.TextureAtlas"},{"id":2348,"kind":1024,"name":"name","url":"interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html#name","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.JSONSchema"},{"id":2349,"kind":1024,"name":"data","url":"interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html#data","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.JSONSchema"},{"id":2350,"kind":4,"name":"Math","url":"modules/index.Duck.Types.Math.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2351,"kind":256,"name":"Vector2Like","url":"interfaces/index.Duck.Types.Math.Vector2Like.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Math"},{"id":2352,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Math.Vector2Like.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2Like"},{"id":2353,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Math.Vector2Like.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2Like"},{"id":2354,"kind":256,"name":"Vector2LikeOptional","url":"interfaces/index.Duck.Types.Math.Vector2LikeOptional.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Math"},{"id":2355,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Math.Vector2LikeOptional.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2LikeOptional"},{"id":2356,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Math.Vector2LikeOptional.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2LikeOptional"},{"id":2357,"kind":256,"name":"BoundsLike","url":"interfaces/index.Duck.Types.Math.BoundsLike.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Math"},{"id":2358,"kind":1024,"name":"w","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#w","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2359,"kind":1024,"name":"h","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#h","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2360,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#x","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2361,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#y","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2362,"kind":4,"name":"Helper","url":"modules/index.Duck.Types.Helper.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2363,"kind":4194304,"name":"FixedLengthArray","url":"modules/index.Duck.Types.Helper.html#FixedLengthArray","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types.Helper"},{"id":2364,"kind":4194304,"name":"AlphaRange","url":"modules/index.Duck.Types.Helper.html#AlphaRange","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Helper"},{"id":2365,"kind":32,"name":"DuckEngine","url":"modules/index.html#DuckEngine","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"index"},{"id":2366,"kind":65536,"name":"__type","url":"modules/index.html#DuckEngine.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"index.DuckEngine"},{"id":2367,"kind":1024,"name":"Game","url":"modules/index.html#DuckEngine.__type.Game","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.DuckEngine.__type"},{"id":2368,"kind":1024,"name":"Scene","url":"modules/index.html#DuckEngine.__type.Scene","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.DuckEngine.__type"}],"index":{"version":"2.3.9","fields":["name","parent"],"fieldVectors":[["name/0",[0,68.685]],["parent/0",[]],["name/1",[1,57.676]],["parent/1",[0,6.764]],["name/2",[2,37.093]],["parent/2",[3,4.264]],["name/3",[4,52.558]],["parent/3",[3,4.264]],["name/4",[5,52.558]],["parent/4",[3,4.264]],["name/5",[6,38.37]],["parent/5",[3,4.264]],["name/6",[7,41.549]],["parent/6",[3,4.264]],["name/7",[8,56.422]],["parent/7",[3,4.264]],["name/8",[9,73.804]],["parent/8",[3,4.264]],["name/9",[10,68.685]],["parent/9",[3,4.264]],["name/10",[11,73.804]],["parent/10",[3,4.264]],["name/11",[12,68.685]],["parent/11",[3,4.264]],["name/12",[13,73.804]],["parent/12",[3,4.264]],["name/13",[14,73.804]],["parent/13",[3,4.264]],["name/14",[15,73.804]],["parent/14",[3,4.264]],["name/15",[16,73.804]],["parent/15",[3,4.264]],["name/16",[17,73.804]],["parent/16",[3,4.264]],["name/17",[18,73.804]],["parent/17",[3,4.264]],["name/18",[19,73.804]],["parent/18",[3,4.264]],["name/19",[20,73.804]],["parent/19",[3,4.264]],["name/20",[21,73.804]],["parent/20",[3,4.264]],["name/21",[22,68.685]],["parent/21",[3,4.264]],["name/22",[23,68.685]],["parent/22",[3,4.264]],["name/23",[24,65.313]],["parent/23",[3,4.264]],["name/24",[25,68.685]],["parent/24",[3,4.264]],["name/25",[26,65.313]],["parent/25",[3,4.264]],["name/26",[27,68.685]],["parent/26",[3,4.264]],["name/27",[28,68.685]],["parent/27",[3,4.264]],["name/28",[29,68.685]],["parent/28",[3,4.264]],["name/29",[30,57.676]],["parent/29",[3,4.264]],["name/30",[31,68.685]],["parent/30",[3,4.264]],["name/31",[32,65.313]],["parent/31",[3,4.264]],["name/32",[33,68.685]],["parent/32",[3,4.264]],["name/33",[34,68.685]],["parent/33",[]],["name/34",[35,62.795]],["parent/34",[34,6.764]],["name/35",[2,37.093]],["parent/35",[36,5.986]],["name/36",[37,68.685]],["parent/36",[36,5.986]],["name/37",[38,68.685]],["parent/37",[36,5.986]],["name/38",[8,56.422]],["parent/38",[36,5.986]],["name/39",[39,68.685]],["parent/39",[36,5.986]],["name/40",[40,68.685]],["parent/40",[]],["name/41",[41,65.313]],["parent/41",[40,6.764]],["name/42",[2,37.093]],["parent/42",[42,4.472]],["name/43",[6,38.37]],["parent/43",[42,4.472]],["name/44",[7,41.549]],["parent/44",[42,4.472]],["name/45",[8,56.422]],["parent/45",[42,4.472]],["name/46",[43,68.685]],["parent/46",[42,4.472]],["name/47",[44,73.804]],["parent/47",[42,4.472]],["name/48",[45,73.804]],["parent/48",[42,4.472]],["name/49",[46,73.804]],["parent/49",[42,4.472]],["name/50",[47,55.308]],["parent/50",[42,4.472]],["name/51",[48,57.676]],["parent/51",[42,4.472]],["name/52",[49,65.313]],["parent/52",[42,4.472]],["name/53",[50,73.804]],["parent/53",[42,4.472]],["name/54",[51,73.804]],["parent/54",[42,4.472]],["name/55",[22,68.685]],["parent/55",[42,4.472]],["name/56",[23,68.685]],["parent/56",[42,4.472]],["name/57",[24,65.313]],["parent/57",[42,4.472]],["name/58",[25,68.685]],["parent/58",[42,4.472]],["name/59",[26,65.313]],["parent/59",[42,4.472]],["name/60",[27,68.685]],["parent/60",[42,4.472]],["name/61",[28,68.685]],["parent/61",[42,4.472]],["name/62",[29,68.685]],["parent/62",[42,4.472]],["name/63",[30,57.676]],["parent/63",[42,4.472]],["name/64",[31,68.685]],["parent/64",[42,4.472]],["name/65",[32,65.313]],["parent/65",[42,4.472]],["name/66",[33,68.685]],["parent/66",[42,4.472]],["name/67",[52,68.685]],["parent/67",[]],["name/68",[53,65.313]],["parent/68",[52,6.764]],["name/69",[2,37.093]],["parent/69",[54,5.821]],["name/70",[4,52.558]],["parent/70",[54,5.821]],["name/71",[1,57.676]],["parent/71",[54,5.821]],["name/72",[55,68.685]],["parent/72",[54,5.821]],["name/73",[56,65.313]],["parent/73",[54,5.821]],["name/74",[57,65.313]],["parent/74",[54,5.821]],["name/75",[58,68.685]],["parent/75",[]],["name/76",[59,62.795]],["parent/76",[58,6.764]],["name/77",[2,37.093]],["parent/77",[60,5.447]],["name/78",[5,52.558]],["parent/78",[60,5.447]],["name/79",[43,68.685]],["parent/79",[60,5.447]],["name/80",[57,65.313]],["parent/80",[60,5.447]],["name/81",[61,73.804]],["parent/81",[60,5.447]],["name/82",[62,73.804]],["parent/82",[60,5.447]],["name/83",[63,73.804]],["parent/83",[60,5.447]],["name/84",[64,73.804]],["parent/84",[60,5.447]],["name/85",[65,73.804]],["parent/85",[60,5.447]],["name/86",[66,68.685]],["parent/86",[]],["name/87",[67,59.11]],["parent/87",[66,6.764]],["name/88",[2,37.093]],["parent/88",[68,4.118]],["name/89",[6,38.37]],["parent/89",[68,4.118]],["name/90",[7,41.549]],["parent/90",[68,4.118]],["name/91",[69,73.804]],["parent/91",[68,4.118]],["name/92",[70,73.804]],["parent/92",[68,4.118]],["name/93",[71,68.685]],["parent/93",[68,4.118]],["name/94",[72,73.804]],["parent/94",[68,4.118]],["name/95",[73,35.366]],["parent/95",[68,4.118]],["name/96",[74,68.685]],["parent/96",[75,5.68]],["name/97",[76,68.685]],["parent/97",[75,5.68]],["name/98",[77,73.804]],["parent/98",[75,5.68]],["name/99",[78,73.804]],["parent/99",[75,5.68]],["name/100",[79,47.123]],["parent/100",[75,5.68]],["name/101",[80,47.123]],["parent/101",[75,5.68]],["name/102",[81,52.558]],["parent/102",[75,5.68]],["name/103",[82,73.804]],["parent/103",[68,4.118]],["name/104",[83,73.804]],["parent/104",[68,4.118]],["name/105",[84,49.186]],["parent/105",[68,4.118]],["name/106",[85,62.795]],["parent/106",[68,4.118]],["name/107",[86,73.804]],["parent/107",[68,4.118]],["name/108",[87,73.804]],["parent/108",[68,4.118]],["name/109",[88,73.804]],["parent/109",[68,4.118]],["name/110",[89,65.313]],["parent/110",[68,4.118]],["name/111",[90,73.804]],["parent/111",[68,4.118]],["name/112",[91,73.804]],["parent/112",[68,4.118]],["name/113",[92,73.804]],["parent/113",[68,4.118]],["name/114",[93,73.804]],["parent/114",[68,4.118]],["name/115",[94,73.804]],["parent/115",[68,4.118]],["name/116",[95,68.685]],["parent/116",[68,4.118]],["name/117",[96,73.804]],["parent/117",[68,4.118]],["name/118",[97,62.795]],["parent/118",[68,4.118]],["name/119",[98,73.804]],["parent/119",[68,4.118]],["name/120",[99,73.804]],["parent/120",[68,4.118]],["name/121",[100,73.804]],["parent/121",[68,4.118]],["name/122",[101,73.804]],["parent/122",[68,4.118]],["name/123",[102,73.804]],["parent/123",[68,4.118]],["name/124",[103,73.804]],["parent/124",[68,4.118]],["name/125",[104,49.775]],["parent/125",[68,4.118]],["name/126",[105,73.804]],["parent/126",[68,4.118]],["name/127",[106,73.804]],["parent/127",[68,4.118]],["name/128",[107,73.804]],["parent/128",[68,4.118]],["name/129",[108,73.804]],["parent/129",[68,4.118]],["name/130",[109,73.804]],["parent/130",[68,4.118]],["name/131",[110,68.685]],["parent/131",[]],["name/132",[111,59.11]],["parent/132",[110,6.764]],["name/133",[2,37.093]],["parent/133",[112,4.737]],["name/134",[5,52.558]],["parent/134",[112,4.737]],["name/135",[113,68.685]],["parent/135",[112,4.737]],["name/136",[6,38.37]],["parent/136",[112,4.737]],["name/137",[114,68.685]],["parent/137",[112,4.737]],["name/138",[115,68.685]],["parent/138",[112,4.737]],["name/139",[116,68.685]],["parent/139",[112,4.737]],["name/140",[67,59.11]],["parent/140",[112,4.737]],["name/141",[117,68.685]],["parent/141",[112,4.737]],["name/142",[118,62.795]],["parent/142",[112,4.737]],["name/143",[119,73.804]],["parent/143",[112,4.737]],["name/144",[120,68.685]],["parent/144",[112,4.737]],["name/145",[121,59.11]],["parent/145",[112,4.737]],["name/146",[30,57.676]],["parent/146",[112,4.737]],["name/147",[122,73.804]],["parent/147",[112,4.737]],["name/148",[123,65.313]],["parent/148",[112,4.737]],["name/149",[124,68.685]],["parent/149",[112,4.737]],["name/150",[125,62.795]],["parent/150",[112,4.737]],["name/151",[126,62.795]],["parent/151",[112,4.737]],["name/152",[127,68.685]],["parent/152",[]],["name/153",[128,65.313]],["parent/153",[127,6.764]],["name/154",[73,35.366]],["parent/154",[129,7.268]],["name/155",[130,62.795]],["parent/155",[131,5.986]],["name/156",[73,35.366]],["parent/156",[131,5.986]],["name/157",[132,73.804]],["parent/157",[131,5.986]],["name/158",[133,73.804]],["parent/158",[131,5.986]],["name/159",[134,73.804]],["parent/159",[131,5.986]],["name/160",[135,68.685]],["parent/160",[]],["name/161",[136,68.685]],["parent/161",[135,6.764]],["name/162",[2,37.093]],["parent/162",[137,5.258]],["name/163",[6,38.37]],["parent/163",[137,5.258]],["name/164",[138,60.784]],["parent/164",[137,5.258]],["name/165",[81,52.558]],["parent/165",[137,5.258]],["name/166",[139,68.685]],["parent/166",[137,5.258]],["name/167",[140,73.804]],["parent/167",[137,5.258]],["name/168",[141,73.804]],["parent/168",[137,5.258]],["name/169",[142,73.804]],["parent/169",[137,5.258]],["name/170",[143,73.804]],["parent/170",[137,5.258]],["name/171",[144,65.313]],["parent/171",[137,5.258]],["name/172",[145,65.313]],["parent/172",[137,5.258]],["name/173",[146,68.685]],["parent/173",[]],["name/174",[147,62.795]],["parent/174",[146,6.764]],["name/175",[2,37.093]],["parent/175",[148,4.789]],["name/176",[149,44.299]],["parent/176",[148,4.789]],["name/177",[150,47.123]],["parent/177",[148,4.789]],["name/178",[151,62.795]],["parent/178",[148,4.789]],["name/179",[152,62.795]],["parent/179",[148,4.789]],["name/180",[153,56.422]],["parent/180",[148,4.789]],["name/181",[6,38.37]],["parent/181",[148,4.789]],["name/182",[154,46.668]],["parent/182",[148,4.789]],["name/183",[155,46.668]],["parent/183",[148,4.789]],["name/184",[156,47.6]],["parent/184",[148,4.789]],["name/185",[85,62.795]],["parent/185",[148,4.789]],["name/186",[157,65.313]],["parent/186",[148,4.789]],["name/187",[158,60.784]],["parent/187",[148,4.789]],["name/188",[159,62.795]],["parent/188",[148,4.789]],["name/189",[160,62.795]],["parent/189",[148,4.789]],["name/190",[161,47.6]],["parent/190",[148,4.789]],["name/191",[162,62.795]],["parent/191",[148,4.789]],["name/192",[97,62.795]],["parent/192",[148,4.789]],["name/193",[163,68.685]],["parent/193",[]],["name/194",[164,62.795]],["parent/194",[163,6.764]],["name/195",[2,37.093]],["parent/195",[165,4.688]],["name/196",[166,65.313]],["parent/196",[165,4.688]],["name/197",[167,73.804]],["parent/197",[165,4.688]],["name/198",[158,60.784]],["parent/198",[165,4.688]],["name/199",[159,62.795]],["parent/199",[165,4.688]],["name/200",[160,62.795]],["parent/200",[165,4.688]],["name/201",[161,47.6]],["parent/201",[165,4.688]],["name/202",[149,44.299]],["parent/202",[165,4.688]],["name/203",[150,47.123]],["parent/203",[165,4.688]],["name/204",[151,62.795]],["parent/204",[165,4.688]],["name/205",[152,62.795]],["parent/205",[165,4.688]],["name/206",[153,56.422]],["parent/206",[165,4.688]],["name/207",[6,38.37]],["parent/207",[165,4.688]],["name/208",[154,46.668]],["parent/208",[165,4.688]],["name/209",[155,46.668]],["parent/209",[165,4.688]],["name/210",[156,47.6]],["parent/210",[165,4.688]],["name/211",[85,62.795]],["parent/211",[165,4.688]],["name/212",[157,65.313]],["parent/212",[165,4.688]],["name/213",[162,62.795]],["parent/213",[165,4.688]],["name/214",[97,62.795]],["parent/214",[165,4.688]],["name/215",[168,68.685]],["parent/215",[]],["name/216",[169,62.795]],["parent/216",[168,6.764]],["name/217",[2,37.093]],["parent/217",[170,4.596]],["name/218",[166,65.313]],["parent/218",[170,4.596]],["name/219",[171,73.804]],["parent/219",[170,4.596]],["name/220",[172,73.804]],["parent/220",[170,4.596]],["name/221",[173,73.804]],["parent/221",[170,4.596]],["name/222",[158,60.784]],["parent/222",[170,4.596]],["name/223",[159,62.795]],["parent/223",[170,4.596]],["name/224",[160,62.795]],["parent/224",[170,4.596]],["name/225",[161,47.6]],["parent/225",[170,4.596]],["name/226",[149,44.299]],["parent/226",[170,4.596]],["name/227",[150,47.123]],["parent/227",[170,4.596]],["name/228",[151,62.795]],["parent/228",[170,4.596]],["name/229",[152,62.795]],["parent/229",[170,4.596]],["name/230",[153,56.422]],["parent/230",[170,4.596]],["name/231",[6,38.37]],["parent/231",[170,4.596]],["name/232",[154,46.668]],["parent/232",[170,4.596]],["name/233",[155,46.668]],["parent/233",[170,4.596]],["name/234",[156,47.6]],["parent/234",[170,4.596]],["name/235",[85,62.795]],["parent/235",[170,4.596]],["name/236",[157,65.313]],["parent/236",[170,4.596]],["name/237",[162,62.795]],["parent/237",[170,4.596]],["name/238",[97,62.795]],["parent/238",[170,4.596]],["name/239",[174,68.685]],["parent/239",[]],["name/240",[138,60.784]],["parent/240",[174,6.764]],["name/241",[2,37.093]],["parent/241",[175,5.821]],["name/242",[176,73.804]],["parent/242",[175,5.821]],["name/243",[73,35.366]],["parent/243",[175,5.821]],["name/244",[125,62.795]],["parent/244",[175,5.821]],["name/245",[126,62.795]],["parent/245",[175,5.821]],["name/246",[158,60.784]],["parent/246",[175,5.821]],["name/247",[177,68.685]],["parent/247",[]],["name/248",[178,73.804]],["parent/248",[177,6.764]],["name/249",[73,35.366]],["parent/249",[179,7.268]],["name/250",[180,55.308]],["parent/250",[181,5.176]],["name/251",[73,35.366]],["parent/251",[181,5.176]],["name/252",[182,68.685]],["parent/252",[183,4.146]],["name/253",[184,68.685]],["parent/253",[183,4.146]],["name/254",[185,68.685]],["parent/254",[183,4.146]],["name/255",[186,57.676]],["parent/255",[181,5.176]],["name/256",[73,35.366]],["parent/256",[181,5.176]],["name/257",[47,55.308]],["parent/257",[183,4.146]],["name/258",[48,57.676]],["parent/258",[183,4.146]],["name/259",[111,59.11]],["parent/259",[181,5.176]],["name/260",[73,35.366]],["parent/260",[181,5.176]],["name/261",[121,59.11]],["parent/261",[183,4.146]],["name/262",[89,65.313]],["parent/262",[183,4.146]],["name/263",[123,65.313]],["parent/263",[183,4.146]],["name/264",[6,38.37]],["parent/264",[181,5.176]],["name/265",[73,35.366]],["parent/265",[181,5.176]],["name/266",[187,60.784]],["parent/266",[183,4.146]],["name/267",[188,60.784]],["parent/267",[183,4.146]],["name/268",[121,59.11]],["parent/268",[183,4.146]],["name/269",[30,57.676]],["parent/269",[183,4.146]],["name/270",[189,68.685]],["parent/270",[183,4.146]],["name/271",[190,68.685]],["parent/271",[183,4.146]],["name/272",[191,68.685]],["parent/272",[183,4.146]],["name/273",[192,68.685]],["parent/273",[183,4.146]],["name/274",[193,68.685]],["parent/274",[183,4.146]],["name/275",[194,68.685]],["parent/275",[183,4.146]],["name/276",[195,68.685]],["parent/276",[183,4.146]],["name/277",[196,68.685]],["parent/277",[183,4.146]],["name/278",[197,62.795]],["parent/278",[183,4.146]],["name/279",[198,62.795]],["parent/279",[183,4.146]],["name/280",[199,68.685]],["parent/280",[183,4.146]],["name/281",[200,68.685]],["parent/281",[183,4.146]],["name/282",[201,68.685]],["parent/282",[183,4.146]],["name/283",[202,68.685]],["parent/283",[183,4.146]],["name/284",[203,68.685]],["parent/284",[183,4.146]],["name/285",[204,68.685]],["parent/285",[183,4.146]],["name/286",[205,68.685]],["parent/286",[181,5.176]],["name/287",[73,35.366]],["parent/287",[181,5.176]],["name/288",[206,68.685]],["parent/288",[183,4.146]],["name/289",[197,62.795]],["parent/289",[183,4.146]],["name/290",[207,73.804]],["parent/290",[181,5.176]],["name/291",[73,35.366]],["parent/291",[181,5.176]],["name/292",[198,62.795]],["parent/292",[183,4.146]],["name/293",[144,65.313]],["parent/293",[183,4.146]],["name/294",[145,65.313]],["parent/294",[183,4.146]],["name/295",[187,60.784]],["parent/295",[183,4.146]],["name/296",[188,60.784]],["parent/296",[183,4.146]],["name/297",[208,68.685]],["parent/297",[]],["name/298",[209,73.804]],["parent/298",[208,6.764]],["name/299",[73,35.366]],["parent/299",[210,7.268]],["name/300",[198,62.795]],["parent/300",[211,5.986]],["name/301",[144,65.313]],["parent/301",[211,5.986]],["name/302",[145,65.313]],["parent/302",[211,5.986]],["name/303",[187,60.784]],["parent/303",[211,5.986]],["name/304",[188,60.784]],["parent/304",[211,5.986]],["name/305",[212,68.685]],["parent/305",[]],["name/306",[213,73.804]],["parent/306",[212,6.764]],["name/307",[73,35.366]],["parent/307",[214,7.268]],["name/308",[187,60.784]],["parent/308",[215,4.688]],["name/309",[188,60.784]],["parent/309",[215,4.688]],["name/310",[121,59.11]],["parent/310",[215,4.688]],["name/311",[30,57.676]],["parent/311",[215,4.688]],["name/312",[189,68.685]],["parent/312",[215,4.688]],["name/313",[190,68.685]],["parent/313",[215,4.688]],["name/314",[191,68.685]],["parent/314",[215,4.688]],["name/315",[192,68.685]],["parent/315",[215,4.688]],["name/316",[193,68.685]],["parent/316",[215,4.688]],["name/317",[194,68.685]],["parent/317",[215,4.688]],["name/318",[195,68.685]],["parent/318",[215,4.688]],["name/319",[196,68.685]],["parent/319",[215,4.688]],["name/320",[197,62.795]],["parent/320",[215,4.688]],["name/321",[198,62.795]],["parent/321",[215,4.688]],["name/322",[199,68.685]],["parent/322",[215,4.688]],["name/323",[200,68.685]],["parent/323",[215,4.688]],["name/324",[201,68.685]],["parent/324",[215,4.688]],["name/325",[202,68.685]],["parent/325",[215,4.688]],["name/326",[203,68.685]],["parent/326",[215,4.688]],["name/327",[204,68.685]],["parent/327",[215,4.688]],["name/328",[216,68.685]],["parent/328",[]],["name/329",[217,73.804]],["parent/329",[216,6.764]],["name/330",[73,35.366]],["parent/330",[218,7.268]],["name/331",[206,68.685]],["parent/331",[219,6.764]],["name/332",[197,62.795]],["parent/332",[219,6.764]],["name/333",[220,68.685]],["parent/333",[]],["name/334",[221,73.804]],["parent/334",[220,6.764]],["name/335",[73,35.366]],["parent/335",[222,7.268]],["name/336",[182,68.685]],["parent/336",[223,6.432]],["name/337",[184,68.685]],["parent/337",[223,6.432]],["name/338",[185,68.685]],["parent/338",[223,6.432]],["name/339",[224,68.685]],["parent/339",[]],["name/340",[225,73.804]],["parent/340",[224,6.764]],["name/341",[73,35.366]],["parent/341",[226,7.268]],["name/342",[121,59.11]],["parent/342",[227,6.432]],["name/343",[89,65.313]],["parent/343",[227,6.432]],["name/344",[123,65.313]],["parent/344",[227,6.432]],["name/345",[228,68.685]],["parent/345",[]],["name/346",[229,73.804]],["parent/346",[228,6.764]],["name/347",[73,35.366]],["parent/347",[230,7.268]],["name/348",[47,55.308]],["parent/348",[231,6.764]],["name/349",[48,57.676]],["parent/349",[231,6.764]],["name/350",[232,68.685]],["parent/350",[]],["name/351",[6,38.37]],["parent/351",[232,6.764]],["name/352",[2,37.093]],["parent/352",[233,4.092]],["name/353",[5,52.558]],["parent/353",[233,4.092]],["name/354",[234,68.685]],["parent/354",[233,4.092]],["name/355",[205,68.685]],["parent/355",[233,4.092]],["name/356",[130,62.795]],["parent/356",[233,4.092]],["name/357",[35,62.795]],["parent/357",[233,4.092]],["name/358",[235,62.795]],["parent/358",[233,4.092]],["name/359",[236,73.804]],["parent/359",[233,4.092]],["name/360",[237,73.804]],["parent/360",[233,4.092]],["name/361",[238,73.804]],["parent/361",[233,4.092]],["name/362",[239,73.804]],["parent/362",[233,4.092]],["name/363",[240,73.804]],["parent/363",[233,4.092]],["name/364",[241,73.804]],["parent/364",[233,4.092]],["name/365",[242,73.804]],["parent/365",[233,4.092]],["name/366",[243,73.804]],["parent/366",[233,4.092]],["name/367",[244,73.804]],["parent/367",[233,4.092]],["name/368",[245,68.685]],["parent/368",[233,4.092]],["name/369",[73,35.366]],["parent/369",[233,4.092]],["name/370",[47,55.308]],["parent/370",[246,6.764]],["name/371",[48,57.676]],["parent/371",[246,6.764]],["name/372",[247,73.804]],["parent/372",[233,4.092]],["name/373",[248,73.804]],["parent/373",[233,4.092]],["name/374",[249,68.685]],["parent/374",[233,4.092]],["name/375",[138,60.784]],["parent/375",[233,4.092]],["name/376",[250,62.795]],["parent/376",[233,4.092]],["name/377",[136,68.685]],["parent/377",[233,4.092]],["name/378",[251,73.804]],["parent/378",[233,4.092]],["name/379",[121,59.11]],["parent/379",[233,4.092]],["name/380",[30,57.676]],["parent/380",[233,4.092]],["name/381",[252,65.313]],["parent/381",[233,4.092]],["name/382",[253,73.804]],["parent/382",[233,4.092]],["name/383",[254,73.804]],["parent/383",[233,4.092]],["name/384",[124,68.685]],["parent/384",[233,4.092]],["name/385",[255,48.629]],["parent/385",[233,4.092]],["name/386",[256,73.804]],["parent/386",[233,4.092]],["name/387",[257,73.804]],["parent/387",[233,4.092]],["name/388",[258,73.804]],["parent/388",[233,4.092]],["name/389",[259,73.804]],["parent/389",[233,4.092]],["name/390",[260,73.804]],["parent/390",[233,4.092]],["name/391",[261,68.685]],["parent/391",[]],["name/392",[262,60.784]],["parent/392",[261,6.764]],["name/393",[2,37.093]],["parent/393",[263,3.705]],["name/394",[161,47.6]],["parent/394",[263,3.705]],["name/395",[264,46.668]],["parent/395",[263,3.705]],["name/396",[154,46.668]],["parent/396",[263,3.705]],["name/397",[155,46.668]],["parent/397",[263,3.705]],["name/398",[156,47.6]],["parent/398",[263,3.705]],["name/399",[265,51.07]],["parent/399",[263,3.705]],["name/400",[255,48.629]],["parent/400",[263,3.705]],["name/401",[266,47.6]],["parent/401",[263,3.705]],["name/402",[149,44.299]],["parent/402",[263,3.705]],["name/403",[150,47.123]],["parent/403",[263,3.705]],["name/404",[267,48.629]],["parent/404",[263,3.705]],["name/405",[79,47.123]],["parent/405",[263,3.705]],["name/406",[80,47.123]],["parent/406",[263,3.705]],["name/407",[268,50.402]],["parent/407",[263,3.705]],["name/408",[269,49.775]],["parent/408",[263,3.705]],["name/409",[6,38.37]],["parent/409",[263,3.705]],["name/410",[7,41.549]],["parent/410",[263,3.705]],["name/411",[270,48.101]],["parent/411",[263,3.705]],["name/412",[271,49.775]],["parent/412",[263,3.705]],["name/413",[272,48.101]],["parent/413",[263,3.705]],["name/414",[273,50.402]],["parent/414",[263,3.705]],["name/415",[84,49.186]],["parent/415",[263,3.705]],["name/416",[274,49.186]],["parent/416",[263,3.705]],["name/417",[275,50.402]],["parent/417",[263,3.705]],["name/418",[276,50.402]],["parent/418",[263,3.705]],["name/419",[277,50.402]],["parent/419",[263,3.705]],["name/420",[278,47.6]],["parent/420",[263,3.705]],["name/421",[73,35.366]],["parent/421",[263,3.705]],["name/422",[279,50.402]],["parent/422",[280,6.432]],["name/423",[281,50.402]],["parent/423",[280,6.432]],["name/424",[104,49.775]],["parent/424",[280,6.432]],["name/425",[282,50.402]],["parent/425",[263,3.705]],["name/426",[283,49.186]],["parent/426",[263,3.705]],["name/427",[284,50.402]],["parent/427",[263,3.705]],["name/428",[285,50.402]],["parent/428",[263,3.705]],["name/429",[286,50.402]],["parent/429",[263,3.705]],["name/430",[287,50.402]],["parent/430",[263,3.705]],["name/431",[288,50.402]],["parent/431",[263,3.705]],["name/432",[289,49.775]],["parent/432",[263,3.705]],["name/433",[290,50.402]],["parent/433",[263,3.705]],["name/434",[291,50.402]],["parent/434",[263,3.705]],["name/435",[292,50.402]],["parent/435",[263,3.705]],["name/436",[293,50.402]],["parent/436",[263,3.705]],["name/437",[294,50.402]],["parent/437",[263,3.705]],["name/438",[295,50.402]],["parent/438",[263,3.705]],["name/439",[296,50.402]],["parent/439",[263,3.705]],["name/440",[297,50.402]],["parent/440",[263,3.705]],["name/441",[298,50.402]],["parent/441",[263,3.705]],["name/442",[299,49.775]],["parent/442",[263,3.705]],["name/443",[300,49.775]],["parent/443",[263,3.705]],["name/444",[301,49.775]],["parent/444",[263,3.705]],["name/445",[302,49.775]],["parent/445",[263,3.705]],["name/446",[303,49.775]],["parent/446",[263,3.705]],["name/447",[304,49.775]],["parent/447",[263,3.705]],["name/448",[305,49.775]],["parent/448",[263,3.705]],["name/449",[306,50.402]],["parent/449",[263,3.705]],["name/450",[307,50.402]],["parent/450",[263,3.705]],["name/451",[308,68.685]],["parent/451",[]],["name/452",[309,59.11]],["parent/452",[308,6.764]],["name/453",[2,37.093]],["parent/453",[310,3.705]],["name/454",[264,46.668]],["parent/454",[310,3.705]],["name/455",[154,46.668]],["parent/455",[310,3.705]],["name/456",[155,46.668]],["parent/456",[310,3.705]],["name/457",[156,47.6]],["parent/457",[310,3.705]],["name/458",[161,47.6]],["parent/458",[310,3.705]],["name/459",[265,51.07]],["parent/459",[310,3.705]],["name/460",[255,48.629]],["parent/460",[310,3.705]],["name/461",[266,47.6]],["parent/461",[310,3.705]],["name/462",[149,44.299]],["parent/462",[310,3.705]],["name/463",[150,47.123]],["parent/463",[310,3.705]],["name/464",[267,48.629]],["parent/464",[310,3.705]],["name/465",[79,47.123]],["parent/465",[310,3.705]],["name/466",[80,47.123]],["parent/466",[310,3.705]],["name/467",[268,50.402]],["parent/467",[310,3.705]],["name/468",[269,49.775]],["parent/468",[310,3.705]],["name/469",[6,38.37]],["parent/469",[310,3.705]],["name/470",[7,41.549]],["parent/470",[310,3.705]],["name/471",[270,48.101]],["parent/471",[310,3.705]],["name/472",[271,49.775]],["parent/472",[310,3.705]],["name/473",[272,48.101]],["parent/473",[310,3.705]],["name/474",[273,50.402]],["parent/474",[310,3.705]],["name/475",[84,49.186]],["parent/475",[310,3.705]],["name/476",[274,49.186]],["parent/476",[310,3.705]],["name/477",[275,50.402]],["parent/477",[310,3.705]],["name/478",[276,50.402]],["parent/478",[310,3.705]],["name/479",[277,50.402]],["parent/479",[310,3.705]],["name/480",[278,47.6]],["parent/480",[310,3.705]],["name/481",[73,35.366]],["parent/481",[310,3.705]],["name/482",[279,50.402]],["parent/482",[311,6.432]],["name/483",[281,50.402]],["parent/483",[311,6.432]],["name/484",[104,49.775]],["parent/484",[311,6.432]],["name/485",[282,50.402]],["parent/485",[310,3.705]],["name/486",[283,49.186]],["parent/486",[310,3.705]],["name/487",[284,50.402]],["parent/487",[310,3.705]],["name/488",[285,50.402]],["parent/488",[310,3.705]],["name/489",[286,50.402]],["parent/489",[310,3.705]],["name/490",[287,50.402]],["parent/490",[310,3.705]],["name/491",[288,50.402]],["parent/491",[310,3.705]],["name/492",[289,49.775]],["parent/492",[310,3.705]],["name/493",[290,50.402]],["parent/493",[310,3.705]],["name/494",[291,50.402]],["parent/494",[310,3.705]],["name/495",[292,50.402]],["parent/495",[310,3.705]],["name/496",[293,50.402]],["parent/496",[310,3.705]],["name/497",[294,50.402]],["parent/497",[310,3.705]],["name/498",[295,50.402]],["parent/498",[310,3.705]],["name/499",[296,50.402]],["parent/499",[310,3.705]],["name/500",[297,50.402]],["parent/500",[310,3.705]],["name/501",[298,50.402]],["parent/501",[310,3.705]],["name/502",[299,49.775]],["parent/502",[310,3.705]],["name/503",[300,49.775]],["parent/503",[310,3.705]],["name/504",[301,49.775]],["parent/504",[310,3.705]],["name/505",[302,49.775]],["parent/505",[310,3.705]],["name/506",[303,49.775]],["parent/506",[310,3.705]],["name/507",[304,49.775]],["parent/507",[310,3.705]],["name/508",[305,49.775]],["parent/508",[310,3.705]],["name/509",[306,50.402]],["parent/509",[310,3.705]],["name/510",[307,50.402]],["parent/510",[310,3.705]],["name/511",[312,68.685]],["parent/511",[]],["name/512",[313,60.784]],["parent/512",[312,6.764]],["name/513",[2,37.093]],["parent/513",[314,3.705]],["name/514",[161,47.6]],["parent/514",[314,3.705]],["name/515",[264,46.668]],["parent/515",[314,3.705]],["name/516",[154,46.668]],["parent/516",[314,3.705]],["name/517",[155,46.668]],["parent/517",[314,3.705]],["name/518",[156,47.6]],["parent/518",[314,3.705]],["name/519",[265,51.07]],["parent/519",[314,3.705]],["name/520",[255,48.629]],["parent/520",[314,3.705]],["name/521",[266,47.6]],["parent/521",[314,3.705]],["name/522",[149,44.299]],["parent/522",[314,3.705]],["name/523",[150,47.123]],["parent/523",[314,3.705]],["name/524",[267,48.629]],["parent/524",[314,3.705]],["name/525",[79,47.123]],["parent/525",[314,3.705]],["name/526",[80,47.123]],["parent/526",[314,3.705]],["name/527",[268,50.402]],["parent/527",[314,3.705]],["name/528",[269,49.775]],["parent/528",[314,3.705]],["name/529",[6,38.37]],["parent/529",[314,3.705]],["name/530",[7,41.549]],["parent/530",[314,3.705]],["name/531",[270,48.101]],["parent/531",[314,3.705]],["name/532",[271,49.775]],["parent/532",[314,3.705]],["name/533",[272,48.101]],["parent/533",[314,3.705]],["name/534",[273,50.402]],["parent/534",[314,3.705]],["name/535",[84,49.186]],["parent/535",[314,3.705]],["name/536",[274,49.186]],["parent/536",[314,3.705]],["name/537",[275,50.402]],["parent/537",[314,3.705]],["name/538",[276,50.402]],["parent/538",[314,3.705]],["name/539",[277,50.402]],["parent/539",[314,3.705]],["name/540",[278,47.6]],["parent/540",[314,3.705]],["name/541",[73,35.366]],["parent/541",[314,3.705]],["name/542",[279,50.402]],["parent/542",[315,6.432]],["name/543",[281,50.402]],["parent/543",[315,6.432]],["name/544",[104,49.775]],["parent/544",[315,6.432]],["name/545",[282,50.402]],["parent/545",[314,3.705]],["name/546",[283,49.186]],["parent/546",[314,3.705]],["name/547",[284,50.402]],["parent/547",[314,3.705]],["name/548",[285,50.402]],["parent/548",[314,3.705]],["name/549",[286,50.402]],["parent/549",[314,3.705]],["name/550",[287,50.402]],["parent/550",[314,3.705]],["name/551",[288,50.402]],["parent/551",[314,3.705]],["name/552",[289,49.775]],["parent/552",[314,3.705]],["name/553",[290,50.402]],["parent/553",[314,3.705]],["name/554",[291,50.402]],["parent/554",[314,3.705]],["name/555",[292,50.402]],["parent/555",[314,3.705]],["name/556",[293,50.402]],["parent/556",[314,3.705]],["name/557",[294,50.402]],["parent/557",[314,3.705]],["name/558",[295,50.402]],["parent/558",[314,3.705]],["name/559",[296,50.402]],["parent/559",[314,3.705]],["name/560",[297,50.402]],["parent/560",[314,3.705]],["name/561",[298,50.402]],["parent/561",[314,3.705]],["name/562",[299,49.775]],["parent/562",[314,3.705]],["name/563",[300,49.775]],["parent/563",[314,3.705]],["name/564",[301,49.775]],["parent/564",[314,3.705]],["name/565",[302,49.775]],["parent/565",[314,3.705]],["name/566",[303,49.775]],["parent/566",[314,3.705]],["name/567",[304,49.775]],["parent/567",[314,3.705]],["name/568",[305,49.775]],["parent/568",[314,3.705]],["name/569",[306,50.402]],["parent/569",[314,3.705]],["name/570",[307,50.402]],["parent/570",[314,3.705]],["name/571",[316,68.685]],["parent/571",[]],["name/572",[317,59.11]],["parent/572",[316,6.764]],["name/573",[2,37.093]],["parent/573",[318,3.636]],["name/574",[319,73.804]],["parent/574",[318,3.636]],["name/575",[320,73.804]],["parent/575",[318,3.636]],["name/576",[321,73.804]],["parent/576",[318,3.636]],["name/577",[161,47.6]],["parent/577",[318,3.636]],["name/578",[283,49.186]],["parent/578",[318,3.636]],["name/579",[322,57.676]],["parent/579",[318,3.636]],["name/580",[264,46.668]],["parent/580",[318,3.636]],["name/581",[154,46.668]],["parent/581",[318,3.636]],["name/582",[155,46.668]],["parent/582",[318,3.636]],["name/583",[156,47.6]],["parent/583",[318,3.636]],["name/584",[265,51.07]],["parent/584",[318,3.636]],["name/585",[255,48.629]],["parent/585",[318,3.636]],["name/586",[266,47.6]],["parent/586",[318,3.636]],["name/587",[149,44.299]],["parent/587",[318,3.636]],["name/588",[150,47.123]],["parent/588",[318,3.636]],["name/589",[267,48.629]],["parent/589",[318,3.636]],["name/590",[79,47.123]],["parent/590",[318,3.636]],["name/591",[80,47.123]],["parent/591",[318,3.636]],["name/592",[268,50.402]],["parent/592",[318,3.636]],["name/593",[269,49.775]],["parent/593",[318,3.636]],["name/594",[6,38.37]],["parent/594",[318,3.636]],["name/595",[7,41.549]],["parent/595",[318,3.636]],["name/596",[270,48.101]],["parent/596",[318,3.636]],["name/597",[271,49.775]],["parent/597",[318,3.636]],["name/598",[272,48.101]],["parent/598",[318,3.636]],["name/599",[273,50.402]],["parent/599",[318,3.636]],["name/600",[84,49.186]],["parent/600",[318,3.636]],["name/601",[274,49.186]],["parent/601",[318,3.636]],["name/602",[275,50.402]],["parent/602",[318,3.636]],["name/603",[276,50.402]],["parent/603",[318,3.636]],["name/604",[277,50.402]],["parent/604",[318,3.636]],["name/605",[278,47.6]],["parent/605",[318,3.636]],["name/606",[73,35.366]],["parent/606",[318,3.636]],["name/607",[279,50.402]],["parent/607",[323,6.432]],["name/608",[281,50.402]],["parent/608",[323,6.432]],["name/609",[104,49.775]],["parent/609",[323,6.432]],["name/610",[282,50.402]],["parent/610",[318,3.636]],["name/611",[284,50.402]],["parent/611",[318,3.636]],["name/612",[285,50.402]],["parent/612",[318,3.636]],["name/613",[286,50.402]],["parent/613",[318,3.636]],["name/614",[287,50.402]],["parent/614",[318,3.636]],["name/615",[288,50.402]],["parent/615",[318,3.636]],["name/616",[289,49.775]],["parent/616",[318,3.636]],["name/617",[290,50.402]],["parent/617",[318,3.636]],["name/618",[291,50.402]],["parent/618",[318,3.636]],["name/619",[292,50.402]],["parent/619",[318,3.636]],["name/620",[293,50.402]],["parent/620",[318,3.636]],["name/621",[294,50.402]],["parent/621",[318,3.636]],["name/622",[295,50.402]],["parent/622",[318,3.636]],["name/623",[296,50.402]],["parent/623",[318,3.636]],["name/624",[297,50.402]],["parent/624",[318,3.636]],["name/625",[298,50.402]],["parent/625",[318,3.636]],["name/626",[299,49.775]],["parent/626",[318,3.636]],["name/627",[300,49.775]],["parent/627",[318,3.636]],["name/628",[301,49.775]],["parent/628",[318,3.636]],["name/629",[302,49.775]],["parent/629",[318,3.636]],["name/630",[303,49.775]],["parent/630",[318,3.636]],["name/631",[304,49.775]],["parent/631",[318,3.636]],["name/632",[305,49.775]],["parent/632",[318,3.636]],["name/633",[306,50.402]],["parent/633",[318,3.636]],["name/634",[307,50.402]],["parent/634",[318,3.636]],["name/635",[324,68.685]],["parent/635",[]],["name/636",[153,56.422]],["parent/636",[324,6.764]],["name/637",[2,37.093]],["parent/637",[325,4.362]],["name/638",[149,44.299]],["parent/638",[325,4.362]],["name/639",[317,59.11]],["parent/639",[325,4.362]],["name/640",[151,62.795]],["parent/640",[325,4.362]],["name/641",[152,62.795]],["parent/641",[325,4.362]],["name/642",[326,65.313]],["parent/642",[325,4.362]],["name/643",[327,65.313]],["parent/643",[325,4.362]],["name/644",[6,38.37]],["parent/644",[325,4.362]],["name/645",[7,41.549]],["parent/645",[325,4.362]],["name/646",[328,73.804]],["parent/646",[325,4.362]],["name/647",[274,49.186]],["parent/647",[325,4.362]],["name/648",[329,73.804]],["parent/648",[325,4.362]],["name/649",[330,73.804]],["parent/649",[325,4.362]],["name/650",[331,68.685]],["parent/650",[325,4.362]],["name/651",[332,73.804]],["parent/651",[325,4.362]],["name/652",[158,60.784]],["parent/652",[325,4.362]],["name/653",[159,62.795]],["parent/653",[325,4.362]],["name/654",[160,62.795]],["parent/654",[325,4.362]],["name/655",[333,73.804]],["parent/655",[325,4.362]],["name/656",[334,73.804]],["parent/656",[325,4.362]],["name/657",[335,73.804]],["parent/657",[325,4.362]],["name/658",[336,73.804]],["parent/658",[325,4.362]],["name/659",[337,73.804]],["parent/659",[325,4.362]],["name/660",[289,49.775]],["parent/660",[325,4.362]],["name/661",[338,73.804]],["parent/661",[325,4.362]],["name/662",[339,73.804]],["parent/662",[325,4.362]],["name/663",[266,47.6]],["parent/663",[325,4.362]],["name/664",[322,57.676]],["parent/664",[325,4.362]],["name/665",[340,68.685]],["parent/665",[]],["name/666",[341,62.795]],["parent/666",[340,6.764]],["name/667",[2,37.093]],["parent/667",[342,3.705]],["name/668",[161,47.6]],["parent/668",[342,3.705]],["name/669",[264,46.668]],["parent/669",[342,3.705]],["name/670",[154,46.668]],["parent/670",[342,3.705]],["name/671",[155,46.668]],["parent/671",[342,3.705]],["name/672",[156,47.6]],["parent/672",[342,3.705]],["name/673",[265,51.07]],["parent/673",[342,3.705]],["name/674",[255,48.629]],["parent/674",[342,3.705]],["name/675",[266,47.6]],["parent/675",[342,3.705]],["name/676",[149,44.299]],["parent/676",[342,3.705]],["name/677",[150,47.123]],["parent/677",[342,3.705]],["name/678",[267,48.629]],["parent/678",[342,3.705]],["name/679",[79,47.123]],["parent/679",[342,3.705]],["name/680",[80,47.123]],["parent/680",[342,3.705]],["name/681",[268,50.402]],["parent/681",[342,3.705]],["name/682",[269,49.775]],["parent/682",[342,3.705]],["name/683",[6,38.37]],["parent/683",[342,3.705]],["name/684",[7,41.549]],["parent/684",[342,3.705]],["name/685",[270,48.101]],["parent/685",[342,3.705]],["name/686",[271,49.775]],["parent/686",[342,3.705]],["name/687",[272,48.101]],["parent/687",[342,3.705]],["name/688",[273,50.402]],["parent/688",[342,3.705]],["name/689",[84,49.186]],["parent/689",[342,3.705]],["name/690",[274,49.186]],["parent/690",[342,3.705]],["name/691",[275,50.402]],["parent/691",[342,3.705]],["name/692",[276,50.402]],["parent/692",[342,3.705]],["name/693",[277,50.402]],["parent/693",[342,3.705]],["name/694",[278,47.6]],["parent/694",[342,3.705]],["name/695",[73,35.366]],["parent/695",[342,3.705]],["name/696",[279,50.402]],["parent/696",[343,6.432]],["name/697",[281,50.402]],["parent/697",[343,6.432]],["name/698",[104,49.775]],["parent/698",[343,6.432]],["name/699",[282,50.402]],["parent/699",[342,3.705]],["name/700",[283,49.186]],["parent/700",[342,3.705]],["name/701",[284,50.402]],["parent/701",[342,3.705]],["name/702",[285,50.402]],["parent/702",[342,3.705]],["name/703",[286,50.402]],["parent/703",[342,3.705]],["name/704",[287,50.402]],["parent/704",[342,3.705]],["name/705",[288,50.402]],["parent/705",[342,3.705]],["name/706",[289,49.775]],["parent/706",[342,3.705]],["name/707",[290,50.402]],["parent/707",[342,3.705]],["name/708",[291,50.402]],["parent/708",[342,3.705]],["name/709",[292,50.402]],["parent/709",[342,3.705]],["name/710",[293,50.402]],["parent/710",[342,3.705]],["name/711",[294,50.402]],["parent/711",[342,3.705]],["name/712",[295,50.402]],["parent/712",[342,3.705]],["name/713",[296,50.402]],["parent/713",[342,3.705]],["name/714",[297,50.402]],["parent/714",[342,3.705]],["name/715",[298,50.402]],["parent/715",[342,3.705]],["name/716",[299,49.775]],["parent/716",[342,3.705]],["name/717",[300,49.775]],["parent/717",[342,3.705]],["name/718",[301,49.775]],["parent/718",[342,3.705]],["name/719",[302,49.775]],["parent/719",[342,3.705]],["name/720",[303,49.775]],["parent/720",[342,3.705]],["name/721",[304,49.775]],["parent/721",[342,3.705]],["name/722",[305,49.775]],["parent/722",[342,3.705]],["name/723",[306,50.402]],["parent/723",[342,3.705]],["name/724",[307,50.402]],["parent/724",[342,3.705]],["name/725",[344,68.685]],["parent/725",[]],["name/726",[345,62.795]],["parent/726",[344,6.764]],["name/727",[2,37.093]],["parent/727",[346,3.705]],["name/728",[161,47.6]],["parent/728",[346,3.705]],["name/729",[264,46.668]],["parent/729",[346,3.705]],["name/730",[154,46.668]],["parent/730",[346,3.705]],["name/731",[155,46.668]],["parent/731",[346,3.705]],["name/732",[156,47.6]],["parent/732",[346,3.705]],["name/733",[265,51.07]],["parent/733",[346,3.705]],["name/734",[255,48.629]],["parent/734",[346,3.705]],["name/735",[266,47.6]],["parent/735",[346,3.705]],["name/736",[149,44.299]],["parent/736",[346,3.705]],["name/737",[150,47.123]],["parent/737",[346,3.705]],["name/738",[267,48.629]],["parent/738",[346,3.705]],["name/739",[79,47.123]],["parent/739",[346,3.705]],["name/740",[80,47.123]],["parent/740",[346,3.705]],["name/741",[268,50.402]],["parent/741",[346,3.705]],["name/742",[269,49.775]],["parent/742",[346,3.705]],["name/743",[6,38.37]],["parent/743",[346,3.705]],["name/744",[7,41.549]],["parent/744",[346,3.705]],["name/745",[270,48.101]],["parent/745",[346,3.705]],["name/746",[271,49.775]],["parent/746",[346,3.705]],["name/747",[272,48.101]],["parent/747",[346,3.705]],["name/748",[273,50.402]],["parent/748",[346,3.705]],["name/749",[84,49.186]],["parent/749",[346,3.705]],["name/750",[274,49.186]],["parent/750",[346,3.705]],["name/751",[275,50.402]],["parent/751",[346,3.705]],["name/752",[276,50.402]],["parent/752",[346,3.705]],["name/753",[277,50.402]],["parent/753",[346,3.705]],["name/754",[278,47.6]],["parent/754",[346,3.705]],["name/755",[73,35.366]],["parent/755",[346,3.705]],["name/756",[279,50.402]],["parent/756",[347,6.432]],["name/757",[281,50.402]],["parent/757",[347,6.432]],["name/758",[104,49.775]],["parent/758",[347,6.432]],["name/759",[282,50.402]],["parent/759",[346,3.705]],["name/760",[283,49.186]],["parent/760",[346,3.705]],["name/761",[284,50.402]],["parent/761",[346,3.705]],["name/762",[285,50.402]],["parent/762",[346,3.705]],["name/763",[286,50.402]],["parent/763",[346,3.705]],["name/764",[287,50.402]],["parent/764",[346,3.705]],["name/765",[288,50.402]],["parent/765",[346,3.705]],["name/766",[289,49.775]],["parent/766",[346,3.705]],["name/767",[290,50.402]],["parent/767",[346,3.705]],["name/768",[291,50.402]],["parent/768",[346,3.705]],["name/769",[292,50.402]],["parent/769",[346,3.705]],["name/770",[293,50.402]],["parent/770",[346,3.705]],["name/771",[294,50.402]],["parent/771",[346,3.705]],["name/772",[295,50.402]],["parent/772",[346,3.705]],["name/773",[296,50.402]],["parent/773",[346,3.705]],["name/774",[297,50.402]],["parent/774",[346,3.705]],["name/775",[298,50.402]],["parent/775",[346,3.705]],["name/776",[299,49.775]],["parent/776",[346,3.705]],["name/777",[300,49.775]],["parent/777",[346,3.705]],["name/778",[301,49.775]],["parent/778",[346,3.705]],["name/779",[302,49.775]],["parent/779",[346,3.705]],["name/780",[303,49.775]],["parent/780",[346,3.705]],["name/781",[304,49.775]],["parent/781",[346,3.705]],["name/782",[305,49.775]],["parent/782",[346,3.705]],["name/783",[306,50.402]],["parent/783",[346,3.705]],["name/784",[307,50.402]],["parent/784",[346,3.705]],["name/785",[348,68.685]],["parent/785",[]],["name/786",[8,56.422]],["parent/786",[348,6.764]],["name/787",[2,37.093]],["parent/787",[349,3.62]],["name/788",[350,73.804]],["parent/788",[349,3.62]],["name/789",[351,73.804]],["parent/789",[349,3.62]],["name/790",[352,73.804]],["parent/790",[349,3.62]],["name/791",[353,73.804]],["parent/791",[349,3.62]],["name/792",[161,47.6]],["parent/792",[349,3.62]],["name/793",[255,48.629]],["parent/793",[349,3.62]],["name/794",[322,57.676]],["parent/794",[349,3.62]],["name/795",[266,47.6]],["parent/795",[349,3.62]],["name/796",[264,46.668]],["parent/796",[349,3.62]],["name/797",[154,46.668]],["parent/797",[349,3.62]],["name/798",[155,46.668]],["parent/798",[349,3.62]],["name/799",[156,47.6]],["parent/799",[349,3.62]],["name/800",[265,51.07]],["parent/800",[349,3.62]],["name/801",[149,44.299]],["parent/801",[349,3.62]],["name/802",[150,47.123]],["parent/802",[349,3.62]],["name/803",[267,48.629]],["parent/803",[349,3.62]],["name/804",[79,47.123]],["parent/804",[349,3.62]],["name/805",[80,47.123]],["parent/805",[349,3.62]],["name/806",[268,50.402]],["parent/806",[349,3.62]],["name/807",[269,49.775]],["parent/807",[349,3.62]],["name/808",[6,38.37]],["parent/808",[349,3.62]],["name/809",[7,41.549]],["parent/809",[349,3.62]],["name/810",[270,48.101]],["parent/810",[349,3.62]],["name/811",[271,49.775]],["parent/811",[349,3.62]],["name/812",[272,48.101]],["parent/812",[349,3.62]],["name/813",[273,50.402]],["parent/813",[349,3.62]],["name/814",[84,49.186]],["parent/814",[349,3.62]],["name/815",[274,49.186]],["parent/815",[349,3.62]],["name/816",[275,50.402]],["parent/816",[349,3.62]],["name/817",[276,50.402]],["parent/817",[349,3.62]],["name/818",[277,50.402]],["parent/818",[349,3.62]],["name/819",[278,47.6]],["parent/819",[349,3.62]],["name/820",[73,35.366]],["parent/820",[349,3.62]],["name/821",[279,50.402]],["parent/821",[354,6.432]],["name/822",[281,50.402]],["parent/822",[354,6.432]],["name/823",[104,49.775]],["parent/823",[354,6.432]],["name/824",[282,50.402]],["parent/824",[349,3.62]],["name/825",[283,49.186]],["parent/825",[349,3.62]],["name/826",[284,50.402]],["parent/826",[349,3.62]],["name/827",[285,50.402]],["parent/827",[349,3.62]],["name/828",[286,50.402]],["parent/828",[349,3.62]],["name/829",[287,50.402]],["parent/829",[349,3.62]],["name/830",[288,50.402]],["parent/830",[349,3.62]],["name/831",[289,49.775]],["parent/831",[349,3.62]],["name/832",[290,50.402]],["parent/832",[349,3.62]],["name/833",[291,50.402]],["parent/833",[349,3.62]],["name/834",[292,50.402]],["parent/834",[349,3.62]],["name/835",[293,50.402]],["parent/835",[349,3.62]],["name/836",[294,50.402]],["parent/836",[349,3.62]],["name/837",[295,50.402]],["parent/837",[349,3.62]],["name/838",[296,50.402]],["parent/838",[349,3.62]],["name/839",[297,50.402]],["parent/839",[349,3.62]],["name/840",[298,50.402]],["parent/840",[349,3.62]],["name/841",[299,49.775]],["parent/841",[349,3.62]],["name/842",[300,49.775]],["parent/842",[349,3.62]],["name/843",[301,49.775]],["parent/843",[349,3.62]],["name/844",[302,49.775]],["parent/844",[349,3.62]],["name/845",[303,49.775]],["parent/845",[349,3.62]],["name/846",[304,49.775]],["parent/846",[349,3.62]],["name/847",[305,49.775]],["parent/847",[349,3.62]],["name/848",[306,50.402]],["parent/848",[349,3.62]],["name/849",[307,50.402]],["parent/849",[349,3.62]],["name/850",[355,68.685]],["parent/850",[]],["name/851",[180,55.308]],["parent/851",[355,6.764]],["name/852",[2,37.093]],["parent/852",[356,3.636]],["name/853",[150,47.123]],["parent/853",[356,3.636]],["name/854",[357,56.422]],["parent/854",[356,3.636]],["name/855",[358,73.804]],["parent/855",[356,3.636]],["name/856",[161,47.6]],["parent/856",[356,3.636]],["name/857",[125,62.795]],["parent/857",[356,3.636]],["name/858",[126,62.795]],["parent/858",[356,3.636]],["name/859",[264,46.668]],["parent/859",[356,3.636]],["name/860",[154,46.668]],["parent/860",[356,3.636]],["name/861",[155,46.668]],["parent/861",[356,3.636]],["name/862",[156,47.6]],["parent/862",[356,3.636]],["name/863",[265,51.07]],["parent/863",[356,3.636]],["name/864",[255,48.629]],["parent/864",[356,3.636]],["name/865",[266,47.6]],["parent/865",[356,3.636]],["name/866",[149,44.299]],["parent/866",[356,3.636]],["name/867",[267,48.629]],["parent/867",[356,3.636]],["name/868",[79,47.123]],["parent/868",[356,3.636]],["name/869",[80,47.123]],["parent/869",[356,3.636]],["name/870",[268,50.402]],["parent/870",[356,3.636]],["name/871",[269,49.775]],["parent/871",[356,3.636]],["name/872",[6,38.37]],["parent/872",[356,3.636]],["name/873",[7,41.549]],["parent/873",[356,3.636]],["name/874",[270,48.101]],["parent/874",[356,3.636]],["name/875",[271,49.775]],["parent/875",[356,3.636]],["name/876",[272,48.101]],["parent/876",[356,3.636]],["name/877",[273,50.402]],["parent/877",[356,3.636]],["name/878",[84,49.186]],["parent/878",[356,3.636]],["name/879",[274,49.186]],["parent/879",[356,3.636]],["name/880",[275,50.402]],["parent/880",[356,3.636]],["name/881",[276,50.402]],["parent/881",[356,3.636]],["name/882",[277,50.402]],["parent/882",[356,3.636]],["name/883",[278,47.6]],["parent/883",[356,3.636]],["name/884",[73,35.366]],["parent/884",[356,3.636]],["name/885",[279,50.402]],["parent/885",[359,6.432]],["name/886",[281,50.402]],["parent/886",[359,6.432]],["name/887",[104,49.775]],["parent/887",[359,6.432]],["name/888",[282,50.402]],["parent/888",[356,3.636]],["name/889",[283,49.186]],["parent/889",[356,3.636]],["name/890",[284,50.402]],["parent/890",[356,3.636]],["name/891",[285,50.402]],["parent/891",[356,3.636]],["name/892",[286,50.402]],["parent/892",[356,3.636]],["name/893",[287,50.402]],["parent/893",[356,3.636]],["name/894",[288,50.402]],["parent/894",[356,3.636]],["name/895",[289,49.775]],["parent/895",[356,3.636]],["name/896",[290,50.402]],["parent/896",[356,3.636]],["name/897",[291,50.402]],["parent/897",[356,3.636]],["name/898",[292,50.402]],["parent/898",[356,3.636]],["name/899",[293,50.402]],["parent/899",[356,3.636]],["name/900",[294,50.402]],["parent/900",[356,3.636]],["name/901",[295,50.402]],["parent/901",[356,3.636]],["name/902",[296,50.402]],["parent/902",[356,3.636]],["name/903",[297,50.402]],["parent/903",[356,3.636]],["name/904",[298,50.402]],["parent/904",[356,3.636]],["name/905",[299,49.775]],["parent/905",[356,3.636]],["name/906",[300,49.775]],["parent/906",[356,3.636]],["name/907",[301,49.775]],["parent/907",[356,3.636]],["name/908",[302,49.775]],["parent/908",[356,3.636]],["name/909",[303,49.775]],["parent/909",[356,3.636]],["name/910",[304,49.775]],["parent/910",[356,3.636]],["name/911",[305,49.775]],["parent/911",[356,3.636]],["name/912",[306,50.402]],["parent/912",[356,3.636]],["name/913",[307,50.402]],["parent/913",[356,3.636]],["name/914",[360,68.685]],["parent/914",[]],["name/915",[361,73.804]],["parent/915",[360,6.764]],["name/916",[2,37.093]],["parent/916",[362,3.705]],["name/917",[161,47.6]],["parent/917",[362,3.705]],["name/918",[264,46.668]],["parent/918",[362,3.705]],["name/919",[154,46.668]],["parent/919",[362,3.705]],["name/920",[155,46.668]],["parent/920",[362,3.705]],["name/921",[156,47.6]],["parent/921",[362,3.705]],["name/922",[265,51.07]],["parent/922",[362,3.705]],["name/923",[255,48.629]],["parent/923",[362,3.705]],["name/924",[266,47.6]],["parent/924",[362,3.705]],["name/925",[149,44.299]],["parent/925",[362,3.705]],["name/926",[150,47.123]],["parent/926",[362,3.705]],["name/927",[267,48.629]],["parent/927",[362,3.705]],["name/928",[79,47.123]],["parent/928",[362,3.705]],["name/929",[80,47.123]],["parent/929",[362,3.705]],["name/930",[268,50.402]],["parent/930",[362,3.705]],["name/931",[269,49.775]],["parent/931",[362,3.705]],["name/932",[6,38.37]],["parent/932",[362,3.705]],["name/933",[7,41.549]],["parent/933",[362,3.705]],["name/934",[270,48.101]],["parent/934",[362,3.705]],["name/935",[271,49.775]],["parent/935",[362,3.705]],["name/936",[272,48.101]],["parent/936",[362,3.705]],["name/937",[273,50.402]],["parent/937",[362,3.705]],["name/938",[84,49.186]],["parent/938",[362,3.705]],["name/939",[274,49.186]],["parent/939",[362,3.705]],["name/940",[275,50.402]],["parent/940",[362,3.705]],["name/941",[276,50.402]],["parent/941",[362,3.705]],["name/942",[277,50.402]],["parent/942",[362,3.705]],["name/943",[278,47.6]],["parent/943",[362,3.705]],["name/944",[73,35.366]],["parent/944",[362,3.705]],["name/945",[279,50.402]],["parent/945",[363,6.432]],["name/946",[281,50.402]],["parent/946",[363,6.432]],["name/947",[104,49.775]],["parent/947",[363,6.432]],["name/948",[282,50.402]],["parent/948",[362,3.705]],["name/949",[283,49.186]],["parent/949",[362,3.705]],["name/950",[284,50.402]],["parent/950",[362,3.705]],["name/951",[285,50.402]],["parent/951",[362,3.705]],["name/952",[286,50.402]],["parent/952",[362,3.705]],["name/953",[287,50.402]],["parent/953",[362,3.705]],["name/954",[288,50.402]],["parent/954",[362,3.705]],["name/955",[289,49.775]],["parent/955",[362,3.705]],["name/956",[290,50.402]],["parent/956",[362,3.705]],["name/957",[291,50.402]],["parent/957",[362,3.705]],["name/958",[292,50.402]],["parent/958",[362,3.705]],["name/959",[293,50.402]],["parent/959",[362,3.705]],["name/960",[294,50.402]],["parent/960",[362,3.705]],["name/961",[295,50.402]],["parent/961",[362,3.705]],["name/962",[296,50.402]],["parent/962",[362,3.705]],["name/963",[297,50.402]],["parent/963",[362,3.705]],["name/964",[298,50.402]],["parent/964",[362,3.705]],["name/965",[299,49.775]],["parent/965",[362,3.705]],["name/966",[300,49.775]],["parent/966",[362,3.705]],["name/967",[301,49.775]],["parent/967",[362,3.705]],["name/968",[302,49.775]],["parent/968",[362,3.705]],["name/969",[303,49.775]],["parent/969",[362,3.705]],["name/970",[304,49.775]],["parent/970",[362,3.705]],["name/971",[305,49.775]],["parent/971",[362,3.705]],["name/972",[306,50.402]],["parent/972",[362,3.705]],["name/973",[307,50.402]],["parent/973",[362,3.705]],["name/974",[364,68.685]],["parent/974",[]],["name/975",[365,73.804]],["parent/975",[364,6.764]],["name/976",[2,37.093]],["parent/976",[366,3.705]],["name/977",[161,47.6]],["parent/977",[366,3.705]],["name/978",[264,46.668]],["parent/978",[366,3.705]],["name/979",[154,46.668]],["parent/979",[366,3.705]],["name/980",[155,46.668]],["parent/980",[366,3.705]],["name/981",[156,47.6]],["parent/981",[366,3.705]],["name/982",[265,51.07]],["parent/982",[366,3.705]],["name/983",[255,48.629]],["parent/983",[366,3.705]],["name/984",[266,47.6]],["parent/984",[366,3.705]],["name/985",[149,44.299]],["parent/985",[366,3.705]],["name/986",[150,47.123]],["parent/986",[366,3.705]],["name/987",[267,48.629]],["parent/987",[366,3.705]],["name/988",[79,47.123]],["parent/988",[366,3.705]],["name/989",[80,47.123]],["parent/989",[366,3.705]],["name/990",[268,50.402]],["parent/990",[366,3.705]],["name/991",[269,49.775]],["parent/991",[366,3.705]],["name/992",[6,38.37]],["parent/992",[366,3.705]],["name/993",[7,41.549]],["parent/993",[366,3.705]],["name/994",[270,48.101]],["parent/994",[366,3.705]],["name/995",[271,49.775]],["parent/995",[366,3.705]],["name/996",[272,48.101]],["parent/996",[366,3.705]],["name/997",[273,50.402]],["parent/997",[366,3.705]],["name/998",[84,49.186]],["parent/998",[366,3.705]],["name/999",[274,49.186]],["parent/999",[366,3.705]],["name/1000",[275,50.402]],["parent/1000",[366,3.705]],["name/1001",[276,50.402]],["parent/1001",[366,3.705]],["name/1002",[277,50.402]],["parent/1002",[366,3.705]],["name/1003",[278,47.6]],["parent/1003",[366,3.705]],["name/1004",[73,35.366]],["parent/1004",[366,3.705]],["name/1005",[279,50.402]],["parent/1005",[367,6.432]],["name/1006",[281,50.402]],["parent/1006",[367,6.432]],["name/1007",[104,49.775]],["parent/1007",[367,6.432]],["name/1008",[282,50.402]],["parent/1008",[366,3.705]],["name/1009",[283,49.186]],["parent/1009",[366,3.705]],["name/1010",[284,50.402]],["parent/1010",[366,3.705]],["name/1011",[285,50.402]],["parent/1011",[366,3.705]],["name/1012",[286,50.402]],["parent/1012",[366,3.705]],["name/1013",[287,50.402]],["parent/1013",[366,3.705]],["name/1014",[288,50.402]],["parent/1014",[366,3.705]],["name/1015",[289,49.775]],["parent/1015",[366,3.705]],["name/1016",[290,50.402]],["parent/1016",[366,3.705]],["name/1017",[291,50.402]],["parent/1017",[366,3.705]],["name/1018",[292,50.402]],["parent/1018",[366,3.705]],["name/1019",[293,50.402]],["parent/1019",[366,3.705]],["name/1020",[294,50.402]],["parent/1020",[366,3.705]],["name/1021",[295,50.402]],["parent/1021",[366,3.705]],["name/1022",[296,50.402]],["parent/1022",[366,3.705]],["name/1023",[297,50.402]],["parent/1023",[366,3.705]],["name/1024",[298,50.402]],["parent/1024",[366,3.705]],["name/1025",[299,49.775]],["parent/1025",[366,3.705]],["name/1026",[300,49.775]],["parent/1026",[366,3.705]],["name/1027",[301,49.775]],["parent/1027",[366,3.705]],["name/1028",[302,49.775]],["parent/1028",[366,3.705]],["name/1029",[303,49.775]],["parent/1029",[366,3.705]],["name/1030",[304,49.775]],["parent/1030",[366,3.705]],["name/1031",[305,49.775]],["parent/1031",[366,3.705]],["name/1032",[306,50.402]],["parent/1032",[366,3.705]],["name/1033",[307,50.402]],["parent/1033",[366,3.705]],["name/1034",[368,68.685]],["parent/1034",[]],["name/1035",[357,56.422]],["parent/1035",[368,6.764]],["name/1036",[2,37.093]],["parent/1036",[369,3.653]],["name/1037",[357,56.422]],["parent/1037",[369,3.653]],["name/1038",[5,52.558]],["parent/1038",[369,3.653]],["name/1039",[161,47.6]],["parent/1039",[369,3.653]],["name/1040",[370,73.804]],["parent/1040",[369,3.653]],["name/1041",[264,46.668]],["parent/1041",[369,3.653]],["name/1042",[154,46.668]],["parent/1042",[369,3.653]],["name/1043",[155,46.668]],["parent/1043",[369,3.653]],["name/1044",[156,47.6]],["parent/1044",[369,3.653]],["name/1045",[265,51.07]],["parent/1045",[369,3.653]],["name/1046",[255,48.629]],["parent/1046",[369,3.653]],["name/1047",[266,47.6]],["parent/1047",[369,3.653]],["name/1048",[149,44.299]],["parent/1048",[369,3.653]],["name/1049",[150,47.123]],["parent/1049",[369,3.653]],["name/1050",[267,48.629]],["parent/1050",[369,3.653]],["name/1051",[79,47.123]],["parent/1051",[369,3.653]],["name/1052",[80,47.123]],["parent/1052",[369,3.653]],["name/1053",[268,50.402]],["parent/1053",[369,3.653]],["name/1054",[269,49.775]],["parent/1054",[369,3.653]],["name/1055",[6,38.37]],["parent/1055",[369,3.653]],["name/1056",[7,41.549]],["parent/1056",[369,3.653]],["name/1057",[270,48.101]],["parent/1057",[369,3.653]],["name/1058",[271,49.775]],["parent/1058",[369,3.653]],["name/1059",[272,48.101]],["parent/1059",[369,3.653]],["name/1060",[273,50.402]],["parent/1060",[369,3.653]],["name/1061",[84,49.186]],["parent/1061",[369,3.653]],["name/1062",[274,49.186]],["parent/1062",[369,3.653]],["name/1063",[275,50.402]],["parent/1063",[369,3.653]],["name/1064",[276,50.402]],["parent/1064",[369,3.653]],["name/1065",[277,50.402]],["parent/1065",[369,3.653]],["name/1066",[278,47.6]],["parent/1066",[369,3.653]],["name/1067",[73,35.366]],["parent/1067",[369,3.653]],["name/1068",[279,50.402]],["parent/1068",[371,6.432]],["name/1069",[281,50.402]],["parent/1069",[371,6.432]],["name/1070",[104,49.775]],["parent/1070",[371,6.432]],["name/1071",[282,50.402]],["parent/1071",[369,3.653]],["name/1072",[283,49.186]],["parent/1072",[369,3.653]],["name/1073",[284,50.402]],["parent/1073",[369,3.653]],["name/1074",[285,50.402]],["parent/1074",[369,3.653]],["name/1075",[286,50.402]],["parent/1075",[369,3.653]],["name/1076",[287,50.402]],["parent/1076",[369,3.653]],["name/1077",[288,50.402]],["parent/1077",[369,3.653]],["name/1078",[289,49.775]],["parent/1078",[369,3.653]],["name/1079",[290,50.402]],["parent/1079",[369,3.653]],["name/1080",[291,50.402]],["parent/1080",[369,3.653]],["name/1081",[292,50.402]],["parent/1081",[369,3.653]],["name/1082",[293,50.402]],["parent/1082",[369,3.653]],["name/1083",[294,50.402]],["parent/1083",[369,3.653]],["name/1084",[295,50.402]],["parent/1084",[369,3.653]],["name/1085",[296,50.402]],["parent/1085",[369,3.653]],["name/1086",[297,50.402]],["parent/1086",[369,3.653]],["name/1087",[298,50.402]],["parent/1087",[369,3.653]],["name/1088",[299,49.775]],["parent/1088",[369,3.653]],["name/1089",[300,49.775]],["parent/1089",[369,3.653]],["name/1090",[301,49.775]],["parent/1090",[369,3.653]],["name/1091",[302,49.775]],["parent/1091",[369,3.653]],["name/1092",[303,49.775]],["parent/1092",[369,3.653]],["name/1093",[304,49.775]],["parent/1093",[369,3.653]],["name/1094",[305,49.775]],["parent/1094",[369,3.653]],["name/1095",[306,50.402]],["parent/1095",[369,3.653]],["name/1096",[307,50.402]],["parent/1096",[369,3.653]],["name/1097",[372,68.685]],["parent/1097",[]],["name/1098",[373,60.784]],["parent/1098",[372,6.764]],["name/1099",[2,37.093]],["parent/1099",[374,3.705]],["name/1100",[264,46.668]],["parent/1100",[374,3.705]],["name/1101",[154,46.668]],["parent/1101",[374,3.705]],["name/1102",[155,46.668]],["parent/1102",[374,3.705]],["name/1103",[156,47.6]],["parent/1103",[374,3.705]],["name/1104",[161,47.6]],["parent/1104",[374,3.705]],["name/1105",[265,51.07]],["parent/1105",[374,3.705]],["name/1106",[255,48.629]],["parent/1106",[374,3.705]],["name/1107",[266,47.6]],["parent/1107",[374,3.705]],["name/1108",[149,44.299]],["parent/1108",[374,3.705]],["name/1109",[150,47.123]],["parent/1109",[374,3.705]],["name/1110",[267,48.629]],["parent/1110",[374,3.705]],["name/1111",[79,47.123]],["parent/1111",[374,3.705]],["name/1112",[80,47.123]],["parent/1112",[374,3.705]],["name/1113",[268,50.402]],["parent/1113",[374,3.705]],["name/1114",[269,49.775]],["parent/1114",[374,3.705]],["name/1115",[6,38.37]],["parent/1115",[374,3.705]],["name/1116",[7,41.549]],["parent/1116",[374,3.705]],["name/1117",[270,48.101]],["parent/1117",[374,3.705]],["name/1118",[271,49.775]],["parent/1118",[374,3.705]],["name/1119",[272,48.101]],["parent/1119",[374,3.705]],["name/1120",[273,50.402]],["parent/1120",[374,3.705]],["name/1121",[84,49.186]],["parent/1121",[374,3.705]],["name/1122",[274,49.186]],["parent/1122",[374,3.705]],["name/1123",[275,50.402]],["parent/1123",[374,3.705]],["name/1124",[276,50.402]],["parent/1124",[374,3.705]],["name/1125",[277,50.402]],["parent/1125",[374,3.705]],["name/1126",[278,47.6]],["parent/1126",[374,3.705]],["name/1127",[73,35.366]],["parent/1127",[374,3.705]],["name/1128",[279,50.402]],["parent/1128",[375,6.432]],["name/1129",[281,50.402]],["parent/1129",[375,6.432]],["name/1130",[104,49.775]],["parent/1130",[375,6.432]],["name/1131",[282,50.402]],["parent/1131",[374,3.705]],["name/1132",[283,49.186]],["parent/1132",[374,3.705]],["name/1133",[284,50.402]],["parent/1133",[374,3.705]],["name/1134",[285,50.402]],["parent/1134",[374,3.705]],["name/1135",[286,50.402]],["parent/1135",[374,3.705]],["name/1136",[287,50.402]],["parent/1136",[374,3.705]],["name/1137",[288,50.402]],["parent/1137",[374,3.705]],["name/1138",[289,49.775]],["parent/1138",[374,3.705]],["name/1139",[290,50.402]],["parent/1139",[374,3.705]],["name/1140",[291,50.402]],["parent/1140",[374,3.705]],["name/1141",[292,50.402]],["parent/1141",[374,3.705]],["name/1142",[293,50.402]],["parent/1142",[374,3.705]],["name/1143",[294,50.402]],["parent/1143",[374,3.705]],["name/1144",[295,50.402]],["parent/1144",[374,3.705]],["name/1145",[296,50.402]],["parent/1145",[374,3.705]],["name/1146",[297,50.402]],["parent/1146",[374,3.705]],["name/1147",[298,50.402]],["parent/1147",[374,3.705]],["name/1148",[299,49.775]],["parent/1148",[374,3.705]],["name/1149",[300,49.775]],["parent/1149",[374,3.705]],["name/1150",[301,49.775]],["parent/1150",[374,3.705]],["name/1151",[302,49.775]],["parent/1151",[374,3.705]],["name/1152",[303,49.775]],["parent/1152",[374,3.705]],["name/1153",[304,49.775]],["parent/1153",[374,3.705]],["name/1154",[305,49.775]],["parent/1154",[374,3.705]],["name/1155",[306,50.402]],["parent/1155",[374,3.705]],["name/1156",[307,50.402]],["parent/1156",[374,3.705]],["name/1157",[376,68.685]],["parent/1157",[]],["name/1158",[186,57.676]],["parent/1158",[376,6.764]],["name/1159",[2,37.093]],["parent/1159",[377,4.789]],["name/1160",[130,62.795]],["parent/1160",[377,4.789]],["name/1161",[6,38.37]],["parent/1161",[377,4.789]],["name/1162",[378,65.313]],["parent/1162",[377,4.789]],["name/1163",[47,55.308]],["parent/1163",[377,4.789]],["name/1164",[48,57.676]],["parent/1164",[377,4.789]],["name/1165",[379,68.685]],["parent/1165",[377,4.789]],["name/1166",[380,73.804]],["parent/1166",[377,4.789]],["name/1167",[381,62.795]],["parent/1167",[377,4.789]],["name/1168",[382,73.804]],["parent/1168",[377,4.789]],["name/1169",[383,73.804]],["parent/1169",[377,4.789]],["name/1170",[384,65.313]],["parent/1170",[377,4.789]],["name/1171",[385,68.685]],["parent/1171",[377,4.789]],["name/1172",[125,62.795]],["parent/1172",[377,4.789]],["name/1173",[126,62.795]],["parent/1173",[377,4.789]],["name/1174",[386,73.804]],["parent/1174",[377,4.789]],["name/1175",[186,57.676]],["parent/1175",[377,4.789]],["name/1176",[387,65.313]],["parent/1176",[377,4.789]],["name/1177",[388,68.685]],["parent/1177",[]],["name/1178",[389,59.11]],["parent/1178",[388,6.764]],["name/1179",[2,37.093]],["parent/1179",[390,5.986]],["name/1180",[6,38.37]],["parent/1180",[390,5.986]],["name/1181",[7,41.549]],["parent/1181",[390,5.986]],["name/1182",[391,73.804]],["parent/1182",[390,5.986]],["name/1183",[392,73.804]],["parent/1183",[390,5.986]],["name/1184",[393,68.685]],["parent/1184",[]],["name/1185",[394,60.784]],["parent/1185",[393,6.764]],["name/1186",[2,37.093]],["parent/1186",[395,5.258]],["name/1187",[6,38.37]],["parent/1187",[395,5.258]],["name/1188",[7,41.549]],["parent/1188",[395,5.258]],["name/1189",[138,60.784]],["parent/1189",[395,5.258]],["name/1190",[396,68.685]],["parent/1190",[395,5.258]],["name/1191",[73,35.366]],["parent/1191",[395,5.258]],["name/1192",[397,73.804]],["parent/1192",[395,5.258]],["name/1193",[398,73.804]],["parent/1193",[395,5.258]],["name/1194",[399,73.804]],["parent/1194",[395,5.258]],["name/1195",[400,68.685]],["parent/1195",[395,5.258]],["name/1196",[401,68.685]],["parent/1196",[395,5.258]],["name/1197",[402,68.685]],["parent/1197",[]],["name/1198",[4,52.558]],["parent/1198",[402,6.764]],["name/1199",[2,37.093]],["parent/1199",[403,5.176]],["name/1200",[404,68.685]],["parent/1200",[403,5.176]],["name/1201",[405,62.795]],["parent/1201",[403,5.176]],["name/1202",[6,38.37]],["parent/1202",[403,5.176]],["name/1203",[7,41.549]],["parent/1203",[403,5.176]],["name/1204",[394,60.784]],["parent/1204",[403,5.176]],["name/1205",[406,73.804]],["parent/1205",[403,5.176]],["name/1206",[407,73.804]],["parent/1206",[403,5.176]],["name/1207",[408,73.804]],["parent/1207",[403,5.176]],["name/1208",[409,73.804]],["parent/1208",[403,5.176]],["name/1209",[410,68.685]],["parent/1209",[403,5.176]],["name/1210",[400,68.685]],["parent/1210",[403,5.176]],["name/1211",[411,68.685]],["parent/1211",[]],["name/1212",[412,65.313]],["parent/1212",[411,6.764]],["name/1213",[2,37.093]],["parent/1213",[413,5.68]],["name/1214",[180,55.308]],["parent/1214",[413,5.68]],["name/1215",[405,62.795]],["parent/1215",[413,5.68]],["name/1216",[6,38.37]],["parent/1216",[413,5.68]],["name/1217",[7,41.549]],["parent/1217",[413,5.68]],["name/1218",[414,60.784]],["parent/1218",[413,5.68]],["name/1219",[410,68.685]],["parent/1219",[413,5.68]],["name/1220",[415,68.685]],["parent/1220",[]],["name/1221",[414,60.784]],["parent/1221",[415,6.764]],["name/1222",[2,37.093]],["parent/1222",[416,5.447]],["name/1223",[6,38.37]],["parent/1223",[416,5.447]],["name/1224",[7,41.549]],["parent/1224",[416,5.447]],["name/1225",[138,60.784]],["parent/1225",[416,5.447]],["name/1226",[417,73.804]],["parent/1226",[416,5.447]],["name/1227",[73,35.366]],["parent/1227",[416,5.447]],["name/1228",[418,73.804]],["parent/1228",[416,5.447]],["name/1229",[419,73.804]],["parent/1229",[416,5.447]],["name/1230",[401,68.685]],["parent/1230",[416,5.447]],["name/1231",[420,68.685]],["parent/1231",[]],["name/1232",[421,62.795]],["parent/1232",[420,6.764]],["name/1233",[2,37.093]],["parent/1233",[422,3.653]],["name/1234",[423,60.784]],["parent/1234",[422,3.653]],["name/1235",[424,73.804]],["parent/1235",[422,3.653]],["name/1236",[161,47.6]],["parent/1236",[422,3.653]],["name/1237",[425,73.804]],["parent/1237",[422,3.653]],["name/1238",[264,46.668]],["parent/1238",[422,3.653]],["name/1239",[154,46.668]],["parent/1239",[422,3.653]],["name/1240",[155,46.668]],["parent/1240",[422,3.653]],["name/1241",[156,47.6]],["parent/1241",[422,3.653]],["name/1242",[265,51.07]],["parent/1242",[422,3.653]],["name/1243",[255,48.629]],["parent/1243",[422,3.653]],["name/1244",[266,47.6]],["parent/1244",[422,3.653]],["name/1245",[149,44.299]],["parent/1245",[422,3.653]],["name/1246",[150,47.123]],["parent/1246",[422,3.653]],["name/1247",[267,48.629]],["parent/1247",[422,3.653]],["name/1248",[79,47.123]],["parent/1248",[422,3.653]],["name/1249",[80,47.123]],["parent/1249",[422,3.653]],["name/1250",[268,50.402]],["parent/1250",[422,3.653]],["name/1251",[269,49.775]],["parent/1251",[422,3.653]],["name/1252",[6,38.37]],["parent/1252",[422,3.653]],["name/1253",[7,41.549]],["parent/1253",[422,3.653]],["name/1254",[270,48.101]],["parent/1254",[422,3.653]],["name/1255",[271,49.775]],["parent/1255",[422,3.653]],["name/1256",[272,48.101]],["parent/1256",[422,3.653]],["name/1257",[273,50.402]],["parent/1257",[422,3.653]],["name/1258",[84,49.186]],["parent/1258",[422,3.653]],["name/1259",[274,49.186]],["parent/1259",[422,3.653]],["name/1260",[275,50.402]],["parent/1260",[422,3.653]],["name/1261",[276,50.402]],["parent/1261",[422,3.653]],["name/1262",[277,50.402]],["parent/1262",[422,3.653]],["name/1263",[278,47.6]],["parent/1263",[422,3.653]],["name/1264",[73,35.366]],["parent/1264",[422,3.653]],["name/1265",[279,50.402]],["parent/1265",[426,6.432]],["name/1266",[281,50.402]],["parent/1266",[426,6.432]],["name/1267",[104,49.775]],["parent/1267",[426,6.432]],["name/1268",[282,50.402]],["parent/1268",[422,3.653]],["name/1269",[283,49.186]],["parent/1269",[422,3.653]],["name/1270",[284,50.402]],["parent/1270",[422,3.653]],["name/1271",[285,50.402]],["parent/1271",[422,3.653]],["name/1272",[286,50.402]],["parent/1272",[422,3.653]],["name/1273",[287,50.402]],["parent/1273",[422,3.653]],["name/1274",[288,50.402]],["parent/1274",[422,3.653]],["name/1275",[289,49.775]],["parent/1275",[422,3.653]],["name/1276",[290,50.402]],["parent/1276",[422,3.653]],["name/1277",[291,50.402]],["parent/1277",[422,3.653]],["name/1278",[292,50.402]],["parent/1278",[422,3.653]],["name/1279",[293,50.402]],["parent/1279",[422,3.653]],["name/1280",[294,50.402]],["parent/1280",[422,3.653]],["name/1281",[295,50.402]],["parent/1281",[422,3.653]],["name/1282",[296,50.402]],["parent/1282",[422,3.653]],["name/1283",[297,50.402]],["parent/1283",[422,3.653]],["name/1284",[298,50.402]],["parent/1284",[422,3.653]],["name/1285",[299,49.775]],["parent/1285",[422,3.653]],["name/1286",[300,49.775]],["parent/1286",[422,3.653]],["name/1287",[301,49.775]],["parent/1287",[422,3.653]],["name/1288",[302,49.775]],["parent/1288",[422,3.653]],["name/1289",[303,49.775]],["parent/1289",[422,3.653]],["name/1290",[304,49.775]],["parent/1290",[422,3.653]],["name/1291",[305,49.775]],["parent/1291",[422,3.653]],["name/1292",[306,50.402]],["parent/1292",[422,3.653]],["name/1293",[307,50.402]],["parent/1293",[422,3.653]],["name/1294",[427,68.685]],["parent/1294",[]],["name/1295",[428,59.11]],["parent/1295",[427,6.764]],["name/1296",[2,37.093]],["parent/1296",[429,4.737]],["name/1297",[6,38.37]],["parent/1297",[429,4.737]],["name/1298",[7,41.549]],["parent/1298",[429,4.737]],["name/1299",[430,73.804]],["parent/1299",[429,4.737]],["name/1300",[431,73.804]],["parent/1300",[429,4.737]],["name/1301",[432,73.804]],["parent/1301",[429,4.737]],["name/1302",[433,73.804]],["parent/1302",[429,4.737]],["name/1303",[434,73.804]],["parent/1303",[429,4.737]],["name/1304",[435,73.804]],["parent/1304",[429,4.737]],["name/1305",[436,73.804]],["parent/1305",[429,4.737]],["name/1306",[437,73.804]],["parent/1306",[429,4.737]],["name/1307",[438,73.804]],["parent/1307",[429,4.737]],["name/1308",[439,73.804]],["parent/1308",[429,4.737]],["name/1309",[440,73.804]],["parent/1309",[429,4.737]],["name/1310",[441,73.804]],["parent/1310",[429,4.737]],["name/1311",[442,73.804]],["parent/1311",[429,4.737]],["name/1312",[443,73.804]],["parent/1312",[429,4.737]],["name/1313",[444,73.804]],["parent/1313",[429,4.737]],["name/1314",[445,73.804]],["parent/1314",[429,4.737]],["name/1315",[446,68.685]],["parent/1315",[]],["name/1316",[447,56.422]],["parent/1316",[446,6.764]],["name/1317",[2,37.093]],["parent/1317",[448,5.258]],["name/1318",[149,44.299]],["parent/1318",[448,5.258]],["name/1319",[150,47.123]],["parent/1319",[448,5.258]],["name/1320",[449,68.685]],["parent/1320",[448,5.258]],["name/1321",[450,68.685]],["parent/1321",[448,5.258]],["name/1322",[6,38.37]],["parent/1322",[448,5.258]],["name/1323",[7,41.549]],["parent/1323",[448,5.258]],["name/1324",[154,46.668]],["parent/1324",[448,5.258]],["name/1325",[155,46.668]],["parent/1325",[448,5.258]],["name/1326",[156,47.6]],["parent/1326",[448,5.258]],["name/1327",[161,47.6]],["parent/1327",[448,5.258]],["name/1328",[451,68.685]],["parent/1328",[]],["name/1329",[452,73.804]],["parent/1329",[451,6.764]],["name/1330",[2,37.093]],["parent/1330",[453,5.986]],["name/1331",[149,44.299]],["parent/1331",[453,5.986]],["name/1332",[267,48.629]],["parent/1332",[453,5.986]],["name/1333",[79,47.123]],["parent/1333",[453,5.986]],["name/1334",[80,47.123]],["parent/1334",[453,5.986]],["name/1335",[454,68.685]],["parent/1335",[]],["name/1336",[455,68.685]],["parent/1336",[454,6.764]],["name/1337",[2,37.093]],["parent/1337",[456,5.68]],["name/1338",[457,65.313]],["parent/1338",[456,5.68]],["name/1339",[447,56.422]],["parent/1339",[456,5.68]],["name/1340",[6,38.37]],["parent/1340",[456,5.68]],["name/1341",[7,41.549]],["parent/1341",[456,5.68]],["name/1342",[155,46.668]],["parent/1342",[456,5.68]],["name/1343",[154,46.668]],["parent/1343",[456,5.68]],["name/1344",[458,68.685]],["parent/1344",[]],["name/1345",[459,60.784]],["parent/1345",[458,6.764]],["name/1346",[2,37.093]],["parent/1346",[460,5.176]],["name/1347",[161,47.6]],["parent/1347",[460,5.176]],["name/1348",[461,73.804]],["parent/1348",[460,5.176]],["name/1349",[149,44.299]],["parent/1349",[460,5.176]],["name/1350",[150,47.123]],["parent/1350",[460,5.176]],["name/1351",[449,68.685]],["parent/1351",[460,5.176]],["name/1352",[450,68.685]],["parent/1352",[460,5.176]],["name/1353",[6,38.37]],["parent/1353",[460,5.176]],["name/1354",[7,41.549]],["parent/1354",[460,5.176]],["name/1355",[154,46.668]],["parent/1355",[460,5.176]],["name/1356",[155,46.668]],["parent/1356",[460,5.176]],["name/1357",[156,47.6]],["parent/1357",[460,5.176]],["name/1358",[462,68.685]],["parent/1358",[]],["name/1359",[457,65.313]],["parent/1359",[462,6.764]],["name/1360",[2,37.093]],["parent/1360",[463,5.176]],["name/1361",[264,46.668]],["parent/1361",[463,5.176]],["name/1362",[464,73.804]],["parent/1362",[463,5.176]],["name/1363",[465,73.804]],["parent/1363",[463,5.176]],["name/1364",[466,68.685]],["parent/1364",[463,5.176]],["name/1365",[467,68.685]],["parent/1365",[463,5.176]],["name/1366",[6,38.37]],["parent/1366",[463,5.176]],["name/1367",[7,41.549]],["parent/1367",[463,5.176]],["name/1368",[468,73.804]],["parent/1368",[463,5.176]],["name/1369",[469,73.804]],["parent/1369",[463,5.176]],["name/1370",[470,73.804]],["parent/1370",[463,5.176]],["name/1371",[471,73.804]],["parent/1371",[463,5.176]],["name/1372",[472,68.685]],["parent/1372",[]],["name/1373",[473,65.313]],["parent/1373",[472,6.764]],["name/1374",[474,68.685]],["parent/1374",[]],["name/1375",[475,68.685]],["parent/1375",[474,6.764]],["name/1376",[476,68.685]],["parent/1376",[]],["name/1377",[477,68.685]],["parent/1377",[476,6.764]],["name/1378",[478,68.685]],["parent/1378",[]],["name/1379",[479,68.685]],["parent/1379",[478,6.764]],["name/1380",[480,68.685]],["parent/1380",[]],["name/1381",[481,65.313]],["parent/1381",[480,6.764]],["name/1382",[482,73.804]],["parent/1382",[483,3.741]],["name/1383",[484,73.804]],["parent/1383",[483,3.741]],["name/1384",[485,73.804]],["parent/1384",[483,3.741]],["name/1385",[74,68.685]],["parent/1385",[483,3.741]],["name/1386",[76,68.685]],["parent/1386",[483,3.741]],["name/1387",[331,68.685]],["parent/1387",[483,3.741]],["name/1388",[486,73.804]],["parent/1388",[483,3.741]],["name/1389",[487,73.804]],["parent/1389",[483,3.741]],["name/1390",[488,73.804]],["parent/1390",[483,3.741]],["name/1391",[2,37.093]],["parent/1391",[483,3.741]],["name/1392",[489,51.786]],["parent/1392",[483,3.741]],["name/1393",[490,52.558]],["parent/1393",[483,3.741]],["name/1394",[491,73.804]],["parent/1394",[483,3.741]],["name/1395",[492,73.804]],["parent/1395",[483,3.741]],["name/1396",[47,55.308]],["parent/1396",[483,3.741]],["name/1397",[493,73.804]],["parent/1397",[483,3.741]],["name/1398",[494,73.804]],["parent/1398",[483,3.741]],["name/1399",[495,73.804]],["parent/1399",[483,3.741]],["name/1400",[496,68.685]],["parent/1400",[483,3.741]],["name/1401",[497,73.804]],["parent/1401",[483,3.741]],["name/1402",[498,73.804]],["parent/1402",[483,3.741]],["name/1403",[499,73.804]],["parent/1403",[483,3.741]],["name/1404",[500,73.804]],["parent/1404",[483,3.741]],["name/1405",[501,73.804]],["parent/1405",[483,3.741]],["name/1406",[502,73.804]],["parent/1406",[483,3.741]],["name/1407",[503,73.804]],["parent/1407",[483,3.741]],["name/1408",[71,68.685]],["parent/1408",[483,3.741]],["name/1409",[504,73.804]],["parent/1409",[483,3.741]],["name/1410",[505,73.804]],["parent/1410",[483,3.741]],["name/1411",[506,73.804]],["parent/1411",[483,3.741]],["name/1412",[507,73.804]],["parent/1412",[483,3.741]],["name/1413",[508,73.804]],["parent/1413",[483,3.741]],["name/1414",[509,73.804]],["parent/1414",[483,3.741]],["name/1415",[510,73.804]],["parent/1415",[483,3.741]],["name/1416",[511,73.804]],["parent/1416",[483,3.741]],["name/1417",[512,73.804]],["parent/1417",[483,3.741]],["name/1418",[81,52.558]],["parent/1418",[483,3.741]],["name/1419",[513,73.804]],["parent/1419",[483,3.741]],["name/1420",[514,73.804]],["parent/1420",[483,3.741]],["name/1421",[515,73.804]],["parent/1421",[483,3.741]],["name/1422",[516,73.804]],["parent/1422",[483,3.741]],["name/1423",[517,73.804]],["parent/1423",[483,3.741]],["name/1424",[518,73.804]],["parent/1424",[483,3.741]],["name/1425",[519,65.313]],["parent/1425",[483,3.741]],["name/1426",[520,73.804]],["parent/1426",[483,3.741]],["name/1427",[521,73.804]],["parent/1427",[483,3.741]],["name/1428",[522,73.804]],["parent/1428",[483,3.741]],["name/1429",[473,65.313]],["parent/1429",[483,3.741]],["name/1430",[523,73.804]],["parent/1430",[483,3.741]],["name/1431",[524,73.804]],["parent/1431",[483,3.741]],["name/1432",[525,73.804]],["parent/1432",[483,3.741]],["name/1433",[526,73.804]],["parent/1433",[483,3.741]],["name/1434",[527,73.804]],["parent/1434",[483,3.741]],["name/1435",[528,68.685]],["parent/1435",[]],["name/1436",[250,62.795]],["parent/1436",[528,6.764]],["name/1437",[2,37.093]],["parent/1437",[529,5.68]],["name/1438",[530,73.804]],["parent/1438",[529,5.68]],["name/1439",[73,35.366]],["parent/1439",[529,5.68]],["name/1440",[531,73.804]],["parent/1440",[529,5.68]],["name/1441",[532,73.804]],["parent/1441",[529,5.68]],["name/1442",[533,73.804]],["parent/1442",[529,5.68]],["name/1443",[379,68.685]],["parent/1443",[529,5.68]],["name/1444",[534,68.685]],["parent/1444",[]],["name/1445",[535,62.795]],["parent/1445",[534,6.764]],["name/1446",[2,37.093]],["parent/1446",[536,5.258]],["name/1447",[6,38.37]],["parent/1447",[536,5.258]],["name/1448",[327,65.313]],["parent/1448",[536,5.258]],["name/1449",[47,55.308]],["parent/1449",[536,5.258]],["name/1450",[48,57.676]],["parent/1450",[536,5.258]],["name/1451",[537,73.804]],["parent/1451",[536,5.258]],["name/1452",[538,73.804]],["parent/1452",[536,5.258]],["name/1453",[381,62.795]],["parent/1453",[536,5.258]],["name/1454",[384,65.313]],["parent/1454",[536,5.258]],["name/1455",[387,65.313]],["parent/1455",[536,5.258]],["name/1456",[539,68.685]],["parent/1456",[536,5.258]],["name/1457",[540,68.685]],["parent/1457",[]],["name/1458",[541,62.795]],["parent/1458",[540,6.764]],["name/1459",[2,37.093]],["parent/1459",[542,5.447]],["name/1460",[327,65.313]],["parent/1460",[542,5.447]],["name/1461",[47,55.308]],["parent/1461",[542,5.447]],["name/1462",[48,57.676]],["parent/1462",[542,5.447]],["name/1463",[381,62.795]],["parent/1463",[542,5.447]],["name/1464",[543,73.804]],["parent/1464",[542,5.447]],["name/1465",[384,65.313]],["parent/1465",[542,5.447]],["name/1466",[387,65.313]],["parent/1466",[542,5.447]],["name/1467",[539,68.685]],["parent/1467",[542,5.447]],["name/1468",[544,68.685]],["parent/1468",[]],["name/1469",[545,62.795]],["parent/1469",[544,6.764]],["name/1470",[2,37.093]],["parent/1470",[546,3.723]],["name/1471",[547,73.804]],["parent/1471",[546,3.723]],["name/1472",[548,73.804]],["parent/1472",[546,3.723]],["name/1473",[549,73.804]],["parent/1473",[546,3.723]],["name/1474",[550,73.804]],["parent/1474",[546,3.723]],["name/1475",[283,49.186]],["parent/1475",[546,3.723]],["name/1476",[551,73.804]],["parent/1476",[546,3.723]],["name/1477",[552,73.804]],["parent/1477",[546,3.723]],["name/1478",[553,73.804]],["parent/1478",[546,3.723]],["name/1479",[149,44.299]],["parent/1479",[546,3.723]],["name/1480",[150,47.123]],["parent/1480",[546,3.723]],["name/1481",[267,48.629]],["parent/1481",[546,3.723]],["name/1482",[79,47.123]],["parent/1482",[546,3.723]],["name/1483",[80,47.123]],["parent/1483",[546,3.723]],["name/1484",[268,50.402]],["parent/1484",[546,3.723]],["name/1485",[269,49.775]],["parent/1485",[546,3.723]],["name/1486",[6,38.37]],["parent/1486",[546,3.723]],["name/1487",[7,41.549]],["parent/1487",[546,3.723]],["name/1488",[270,48.101]],["parent/1488",[546,3.723]],["name/1489",[271,49.775]],["parent/1489",[546,3.723]],["name/1490",[272,48.101]],["parent/1490",[546,3.723]],["name/1491",[273,50.402]],["parent/1491",[546,3.723]],["name/1492",[84,49.186]],["parent/1492",[546,3.723]],["name/1493",[274,49.186]],["parent/1493",[546,3.723]],["name/1494",[275,50.402]],["parent/1494",[546,3.723]],["name/1495",[276,50.402]],["parent/1495",[546,3.723]],["name/1496",[277,50.402]],["parent/1496",[546,3.723]],["name/1497",[278,47.6]],["parent/1497",[546,3.723]],["name/1498",[73,35.366]],["parent/1498",[546,3.723]],["name/1499",[279,50.402]],["parent/1499",[554,6.432]],["name/1500",[281,50.402]],["parent/1500",[554,6.432]],["name/1501",[104,49.775]],["parent/1501",[554,6.432]],["name/1502",[282,50.402]],["parent/1502",[546,3.723]],["name/1503",[284,50.402]],["parent/1503",[546,3.723]],["name/1504",[285,50.402]],["parent/1504",[546,3.723]],["name/1505",[286,50.402]],["parent/1505",[546,3.723]],["name/1506",[287,50.402]],["parent/1506",[546,3.723]],["name/1507",[288,50.402]],["parent/1507",[546,3.723]],["name/1508",[289,49.775]],["parent/1508",[546,3.723]],["name/1509",[290,50.402]],["parent/1509",[546,3.723]],["name/1510",[291,50.402]],["parent/1510",[546,3.723]],["name/1511",[292,50.402]],["parent/1511",[546,3.723]],["name/1512",[293,50.402]],["parent/1512",[546,3.723]],["name/1513",[294,50.402]],["parent/1513",[546,3.723]],["name/1514",[295,50.402]],["parent/1514",[546,3.723]],["name/1515",[296,50.402]],["parent/1515",[546,3.723]],["name/1516",[297,50.402]],["parent/1516",[546,3.723]],["name/1517",[298,50.402]],["parent/1517",[546,3.723]],["name/1518",[299,49.775]],["parent/1518",[546,3.723]],["name/1519",[300,49.775]],["parent/1519",[546,3.723]],["name/1520",[301,49.775]],["parent/1520",[546,3.723]],["name/1521",[302,49.775]],["parent/1521",[546,3.723]],["name/1522",[303,49.775]],["parent/1522",[546,3.723]],["name/1523",[304,49.775]],["parent/1523",[546,3.723]],["name/1524",[305,49.775]],["parent/1524",[546,3.723]],["name/1525",[306,50.402]],["parent/1525",[546,3.723]],["name/1526",[307,50.402]],["parent/1526",[546,3.723]],["name/1527",[555,68.685]],["parent/1527",[]],["name/1528",[270,48.101]],["parent/1528",[555,6.764]],["name/1529",[2,37.093]],["parent/1529",[556,5.821]],["name/1530",[272,48.101]],["parent/1530",[556,5.821]],["name/1531",[271,49.775]],["parent/1531",[556,5.821]],["name/1532",[6,38.37]],["parent/1532",[556,5.821]],["name/1533",[283,49.186]],["parent/1533",[556,5.821]],["name/1534",[557,73.804]],["parent/1534",[556,5.821]],["name/1535",[558,68.685]],["parent/1535",[]],["name/1536",[272,48.101]],["parent/1536",[558,6.764]],["name/1537",[2,37.093]],["parent/1537",[559,4.295]],["name/1538",[149,44.299]],["parent/1538",[559,4.295]],["name/1539",[267,48.629]],["parent/1539",[559,4.295]],["name/1540",[560,68.685]],["parent/1540",[559,4.295]],["name/1541",[79,47.123]],["parent/1541",[559,4.295]],["name/1542",[80,47.123]],["parent/1542",[559,4.295]],["name/1543",[6,38.37]],["parent/1543",[559,4.295]],["name/1544",[7,41.549]],["parent/1544",[559,4.295]],["name/1545",[561,73.804]],["parent/1545",[559,4.295]],["name/1546",[562,73.804]],["parent/1546",[559,4.295]],["name/1547",[154,46.668]],["parent/1547",[559,4.295]],["name/1548",[155,46.668]],["parent/1548",[559,4.295]],["name/1549",[156,47.6]],["parent/1549",[559,4.295]],["name/1550",[563,73.804]],["parent/1550",[559,4.295]],["name/1551",[161,47.6]],["parent/1551",[559,4.295]],["name/1552",[283,49.186]],["parent/1552",[559,4.295]],["name/1553",[564,73.804]],["parent/1553",[559,4.295]],["name/1554",[81,52.558]],["parent/1554",[559,4.295]],["name/1555",[565,73.804]],["parent/1555",[559,4.295]],["name/1556",[566,73.804]],["parent/1556",[559,4.295]],["name/1557",[567,73.804]],["parent/1557",[559,4.295]],["name/1558",[568,73.804]],["parent/1558",[559,4.295]],["name/1559",[569,73.804]],["parent/1559",[559,4.295]],["name/1560",[299,49.775]],["parent/1560",[559,4.295]],["name/1561",[300,49.775]],["parent/1561",[559,4.295]],["name/1562",[301,49.775]],["parent/1562",[559,4.295]],["name/1563",[302,49.775]],["parent/1563",[559,4.295]],["name/1564",[303,49.775]],["parent/1564",[559,4.295]],["name/1565",[304,49.775]],["parent/1565",[559,4.295]],["name/1566",[305,49.775]],["parent/1566",[559,4.295]],["name/1567",[570,68.685]],["parent/1567",[]],["name/1568",[571,62.795]],["parent/1568",[570,6.764]],["name/1569",[2,37.093]],["parent/1569",[572,3.858]],["name/1570",[149,44.299]],["parent/1570",[572,3.858]],["name/1571",[150,47.123]],["parent/1571",[572,3.858]],["name/1572",[267,48.629]],["parent/1572",[572,3.858]],["name/1573",[79,47.123]],["parent/1573",[572,3.858]],["name/1574",[80,47.123]],["parent/1574",[572,3.858]],["name/1575",[268,50.402]],["parent/1575",[572,3.858]],["name/1576",[269,49.775]],["parent/1576",[572,3.858]],["name/1577",[6,38.37]],["parent/1577",[572,3.858]],["name/1578",[7,41.549]],["parent/1578",[572,3.858]],["name/1579",[270,48.101]],["parent/1579",[572,3.858]],["name/1580",[271,49.775]],["parent/1580",[572,3.858]],["name/1581",[272,48.101]],["parent/1581",[572,3.858]],["name/1582",[273,50.402]],["parent/1582",[572,3.858]],["name/1583",[84,49.186]],["parent/1583",[572,3.858]],["name/1584",[274,49.186]],["parent/1584",[572,3.858]],["name/1585",[275,50.402]],["parent/1585",[572,3.858]],["name/1586",[276,50.402]],["parent/1586",[572,3.858]],["name/1587",[277,50.402]],["parent/1587",[572,3.858]],["name/1588",[278,47.6]],["parent/1588",[572,3.858]],["name/1589",[73,35.366]],["parent/1589",[572,3.858]],["name/1590",[279,50.402]],["parent/1590",[573,6.432]],["name/1591",[281,50.402]],["parent/1591",[573,6.432]],["name/1592",[104,49.775]],["parent/1592",[573,6.432]],["name/1593",[282,50.402]],["parent/1593",[572,3.858]],["name/1594",[283,49.186]],["parent/1594",[572,3.858]],["name/1595",[284,50.402]],["parent/1595",[572,3.858]],["name/1596",[285,50.402]],["parent/1596",[572,3.858]],["name/1597",[286,50.402]],["parent/1597",[572,3.858]],["name/1598",[287,50.402]],["parent/1598",[572,3.858]],["name/1599",[288,50.402]],["parent/1599",[572,3.858]],["name/1600",[289,49.775]],["parent/1600",[572,3.858]],["name/1601",[290,50.402]],["parent/1601",[572,3.858]],["name/1602",[291,50.402]],["parent/1602",[572,3.858]],["name/1603",[292,50.402]],["parent/1603",[572,3.858]],["name/1604",[293,50.402]],["parent/1604",[572,3.858]],["name/1605",[294,50.402]],["parent/1605",[572,3.858]],["name/1606",[295,50.402]],["parent/1606",[572,3.858]],["name/1607",[296,50.402]],["parent/1607",[572,3.858]],["name/1608",[297,50.402]],["parent/1608",[572,3.858]],["name/1609",[298,50.402]],["parent/1609",[572,3.858]],["name/1610",[299,49.775]],["parent/1610",[572,3.858]],["name/1611",[300,49.775]],["parent/1611",[572,3.858]],["name/1612",[301,49.775]],["parent/1612",[572,3.858]],["name/1613",[302,49.775]],["parent/1613",[572,3.858]],["name/1614",[303,49.775]],["parent/1614",[572,3.858]],["name/1615",[304,49.775]],["parent/1615",[572,3.858]],["name/1616",[305,49.775]],["parent/1616",[572,3.858]],["name/1617",[306,50.402]],["parent/1617",[572,3.858]],["name/1618",[307,50.402]],["parent/1618",[572,3.858]],["name/1619",[574,68.685]],["parent/1619",[]],["name/1620",[575,62.795]],["parent/1620",[574,6.764]],["name/1621",[2,37.093]],["parent/1621",[576,6.184]],["name/1622",[6,38.37]],["parent/1622",[576,6.184]],["name/1623",[7,41.549]],["parent/1623",[576,6.184]],["name/1624",[577,68.685]],["parent/1624",[576,6.184]],["name/1625",[578,68.685]],["parent/1625",[]],["name/1626",[579,73.804]],["parent/1626",[578,6.764]],["name/1627",[580,68.685]],["parent/1627",[]],["name/1628",[581,73.804]],["parent/1628",[580,6.764]],["name/1629",[582,68.685]],["parent/1629",[]],["name/1630",[583,68.685]],["parent/1630",[582,6.764]],["name/1631",[584,68.685]],["parent/1631",[]],["name/1632",[585,73.804]],["parent/1632",[584,6.764]],["name/1633",[2,37.093]],["parent/1633",[586,4.688]],["name/1634",[6,38.37]],["parent/1634",[586,4.688]],["name/1635",[587,68.685]],["parent/1635",[586,4.688]],["name/1636",[588,68.685]],["parent/1636",[586,4.688]],["name/1637",[589,68.685]],["parent/1637",[586,4.688]],["name/1638",[590,68.685]],["parent/1638",[586,4.688]],["name/1639",[591,68.685]],["parent/1639",[586,4.688]],["name/1640",[592,68.685]],["parent/1640",[586,4.688]],["name/1641",[593,68.685]],["parent/1641",[586,4.688]],["name/1642",[81,52.558]],["parent/1642",[586,4.688]],["name/1643",[519,65.313]],["parent/1643",[586,4.688]],["name/1644",[594,68.685]],["parent/1644",[586,4.688]],["name/1645",[595,68.685]],["parent/1645",[586,4.688]],["name/1646",[596,68.685]],["parent/1646",[586,4.688]],["name/1647",[597,68.685]],["parent/1647",[586,4.688]],["name/1648",[598,68.685]],["parent/1648",[586,4.688]],["name/1649",[266,47.6]],["parent/1649",[586,4.688]],["name/1650",[599,68.685]],["parent/1650",[586,4.688]],["name/1651",[600,68.685]],["parent/1651",[586,4.688]],["name/1652",[601,68.685]],["parent/1652",[586,4.688]],["name/1653",[602,68.685]],["parent/1653",[]],["name/1654",[603,73.804]],["parent/1654",[602,6.764]],["name/1655",[2,37.093]],["parent/1655",[604,4.512]],["name/1656",[605,73.804]],["parent/1656",[604,4.512]],["name/1657",[606,73.804]],["parent/1657",[604,4.512]],["name/1658",[607,65.313]],["parent/1658",[604,4.512]],["name/1659",[592,68.685]],["parent/1659",[604,4.512]],["name/1660",[593,68.685]],["parent/1660",[604,4.512]],["name/1661",[519,65.313]],["parent/1661",[604,4.512]],["name/1662",[594,68.685]],["parent/1662",[604,4.512]],["name/1663",[81,52.558]],["parent/1663",[604,4.512]],["name/1664",[595,68.685]],["parent/1664",[604,4.512]],["name/1665",[596,68.685]],["parent/1665",[604,4.512]],["name/1666",[266,47.6]],["parent/1666",[604,4.512]],["name/1667",[599,68.685]],["parent/1667",[604,4.512]],["name/1668",[600,68.685]],["parent/1668",[604,4.512]],["name/1669",[597,68.685]],["parent/1669",[604,4.512]],["name/1670",[598,68.685]],["parent/1670",[604,4.512]],["name/1671",[587,68.685]],["parent/1671",[604,4.512]],["name/1672",[608,73.804]],["parent/1672",[604,4.512]],["name/1673",[588,68.685]],["parent/1673",[604,4.512]],["name/1674",[589,68.685]],["parent/1674",[604,4.512]],["name/1675",[590,68.685]],["parent/1675",[604,4.512]],["name/1676",[591,68.685]],["parent/1676",[604,4.512]],["name/1677",[601,68.685]],["parent/1677",[604,4.512]],["name/1678",[6,38.37]],["parent/1678",[604,4.512]],["name/1679",[609,68.685]],["parent/1679",[]],["name/1680",[610,73.804]],["parent/1680",[609,6.764]],["name/1681",[73,35.366]],["parent/1681",[611,7.268]],["name/1682",[612,44.603,613,48.787]],["parent/1682",[614,4.434]],["name/1683",[612,44.603,615,48.787]],["parent/1683",[614,4.434]],["name/1684",[612,44.603,616,48.787]],["parent/1684",[614,4.434]],["name/1685",[612,44.603,617,48.787]],["parent/1685",[614,4.434]],["name/1686",[613,48.787,618,44.603]],["parent/1686",[614,4.434]],["name/1687",[615,48.787,618,44.603]],["parent/1687",[614,4.434]],["name/1688",[616,48.787,618,44.603]],["parent/1688",[614,4.434]],["name/1689",[617,48.787,618,44.603]],["parent/1689",[614,4.434]],["name/1690",[619,73.804]],["parent/1690",[614,4.434]],["name/1691",[620,73.804]],["parent/1691",[614,4.434]],["name/1692",[621,73.804]],["parent/1692",[614,4.434]],["name/1693",[496,68.685]],["parent/1693",[614,4.434]],["name/1694",[622,73.804]],["parent/1694",[614,4.434]],["name/1695",[623,73.804]],["parent/1695",[614,4.434]],["name/1696",[624,73.804]],["parent/1696",[614,4.434]],["name/1697",[625,73.804]],["parent/1697",[614,4.434]],["name/1698",[423,43.175,626,52.422]],["parent/1698",[614,4.434]],["name/1699",[423,43.175,627,52.422]],["parent/1699",[614,4.434]],["name/1700",[628,52.422,629,46.392]],["parent/1700",[614,4.434]],["name/1701",[629,46.392,630,52.422]],["parent/1701",[614,4.434]],["name/1702",[631,73.804]],["parent/1702",[614,4.434]],["name/1703",[632,73.804]],["parent/1703",[614,4.434]],["name/1704",[633,73.804]],["parent/1704",[614,4.434]],["name/1705",[634,73.804]],["parent/1705",[614,4.434]],["name/1706",[423,60.784]],["parent/1706",[614,4.434]],["name/1707",[635,73.804]],["parent/1707",[614,4.434]],["name/1708",[636,68.685]],["parent/1708",[]],["name/1709",[637,68.685]],["parent/1709",[636,6.764]],["name/1710",[2,37.093]],["parent/1710",[638,5.68]],["name/1711",[6,38.37]],["parent/1711",[638,5.68]],["name/1712",[639,73.804]],["parent/1712",[638,5.68]],["name/1713",[640,73.804]],["parent/1713",[638,5.68]],["name/1714",[641,73.804]],["parent/1714",[638,5.68]],["name/1715",[642,73.804]],["parent/1715",[638,5.68]],["name/1716",[643,73.804]],["parent/1716",[638,5.68]],["name/1717",[644,68.685]],["parent/1717",[]],["name/1718",[7,41.549]],["parent/1718",[644,6.764]],["name/1719",[2,37.093]],["parent/1719",[645,4.362]],["name/1720",[4,52.558]],["parent/1720",[645,4.362]],["name/1721",[154,46.668]],["parent/1721",[645,4.362]],["name/1722",[646,73.804]],["parent/1722",[645,4.362]],["name/1723",[6,38.37]],["parent/1723",[645,4.362]],["name/1724",[647,73.804]],["parent/1724",[645,4.362]],["name/1725",[648,65.313]],["parent/1725",[645,4.362]],["name/1726",[649,65.313]],["parent/1726",[645,4.362]],["name/1727",[535,62.795]],["parent/1727",[645,4.362]],["name/1728",[541,62.795]],["parent/1728",[645,4.362]],["name/1729",[428,59.11]],["parent/1729",[645,4.362]],["name/1730",[575,62.795]],["parent/1730",[645,4.362]],["name/1731",[650,73.804]],["parent/1731",[645,4.362]],["name/1732",[73,35.366]],["parent/1732",[645,4.362]],["name/1733",[651,73.804]],["parent/1733",[645,4.362]],["name/1734",[73,35.366]],["parent/1734",[645,4.362]],["name/1735",[47,55.308]],["parent/1735",[645,4.362]],["name/1736",[73,35.366]],["parent/1736",[645,4.362]],["name/1737",[309,59.11]],["parent/1737",[652,4.362]],["name/1738",[73,35.366]],["parent/1738",[652,4.362]],["name/1739",[653,57.676]],["parent/1739",[654,4.295]],["name/1740",[73,35.366]],["parent/1740",[654,4.295]],["name/1741",[313,60.784]],["parent/1741",[655,5.348]],["name/1742",[656,73.804]],["parent/1742",[654,4.295]],["name/1743",[8,56.422]],["parent/1743",[654,4.295]],["name/1744",[341,62.795]],["parent/1744",[654,4.295]],["name/1745",[262,60.784]],["parent/1745",[654,4.295]],["name/1746",[345,62.795]],["parent/1746",[654,4.295]],["name/1747",[653,57.676]],["parent/1747",[652,4.362]],["name/1748",[73,35.366]],["parent/1748",[652,4.362]],["name/1749",[545,62.795]],["parent/1749",[654,4.295]],["name/1750",[373,60.784]],["parent/1750",[652,4.362]],["name/1751",[73,35.366]],["parent/1751",[652,4.362]],["name/1752",[357,56.422]],["parent/1752",[654,4.295]],["name/1753",[180,55.308]],["parent/1753",[654,4.295]],["name/1754",[657,62.795]],["parent/1754",[652,4.362]],["name/1755",[389,59.11]],["parent/1755",[652,4.362]],["name/1756",[67,59.11]],["parent/1756",[652,4.362]],["name/1757",[648,65.313]],["parent/1757",[652,4.362]],["name/1758",[629,65.313]],["parent/1758",[652,4.362]],["name/1759",[73,35.366]],["parent/1759",[652,4.362]],["name/1760",[421,62.795]],["parent/1760",[654,4.295]],["name/1761",[186,57.676]],["parent/1761",[652,4.362]],["name/1762",[317,59.11]],["parent/1762",[652,4.362]],["name/1763",[153,56.422]],["parent/1763",[652,4.362]],["name/1764",[111,59.11]],["parent/1764",[652,4.362]],["name/1765",[447,56.422]],["parent/1765",[652,4.362]],["name/1766",[73,35.366]],["parent/1766",[652,4.362]],["name/1767",[459,60.784]],["parent/1767",[654,4.295]],["name/1768",[457,65.313]],["parent/1768",[654,4.295]],["name/1769",[455,68.685]],["parent/1769",[654,4.295]],["name/1770",[147,62.795]],["parent/1770",[652,4.362]],["name/1771",[658,73.804]],["parent/1771",[652,4.362]],["name/1772",[73,35.366]],["parent/1772",[652,4.362]],["name/1773",[164,62.795]],["parent/1773",[654,4.295]],["name/1774",[169,62.795]],["parent/1774",[654,4.295]],["name/1775",[659,73.804]],["parent/1775",[645,4.362]],["name/1776",[73,35.366]],["parent/1776",[645,4.362]],["name/1777",[428,59.11]],["parent/1777",[652,4.362]],["name/1778",[423,60.784]],["parent/1778",[652,4.362]],["name/1779",[73,35.366]],["parent/1779",[652,4.362]],["name/1780",[660,73.804]],["parent/1780",[654,4.295]],["name/1781",[661,73.804]],["parent/1781",[654,4.295]],["name/1782",[662,73.804]],["parent/1782",[654,4.295]],["name/1783",[73,35.366]],["parent/1783",[654,4.295]],["name/1784",[663,68.685]],["parent/1784",[655,5.348]],["name/1785",[664,73.804]],["parent/1785",[655,5.348]],["name/1786",[665,68.685]],["parent/1786",[655,5.348]],["name/1787",[666,73.804]],["parent/1787",[654,4.295]],["name/1788",[73,35.366]],["parent/1788",[654,4.295]],["name/1789",[665,68.685]],["parent/1789",[655,5.348]],["name/1790",[73,35.366]],["parent/1790",[655,5.348]],["name/1791",[667,68.685]],["parent/1791",[668,5.68]],["name/1792",[669,68.685]],["parent/1792",[668,5.68]],["name/1793",[670,73.804]],["parent/1793",[655,5.348]],["name/1794",[73,35.366]],["parent/1794",[655,5.348]],["name/1795",[671,73.804]],["parent/1795",[668,5.68]],["name/1796",[672,68.685]],["parent/1796",[668,5.68]],["name/1797",[663,68.685]],["parent/1797",[655,5.348]],["name/1798",[73,35.366]],["parent/1798",[655,5.348]],["name/1799",[669,68.685]],["parent/1799",[668,5.68]],["name/1800",[672,68.685]],["parent/1800",[668,5.68]],["name/1801",[667,68.685]],["parent/1801",[668,5.68]],["name/1802",[278,47.6]],["parent/1802",[652,4.362]],["name/1803",[73,35.366]],["parent/1803",[652,4.362]],["name/1804",[583,68.685]],["parent/1804",[654,4.295]],["name/1805",[673,73.804]],["parent/1805",[654,4.295]],["name/1806",[674,62.795]],["parent/1806",[652,4.362]],["name/1807",[73,35.366]],["parent/1807",[652,4.362]],["name/1808",[675,73.804]],["parent/1808",[654,4.295]],["name/1809",[56,65.313]],["parent/1809",[654,4.295]],["name/1810",[473,65.313]],["parent/1810",[654,4.295]],["name/1811",[475,68.685]],["parent/1811",[654,4.295]],["name/1812",[479,68.685]],["parent/1812",[654,4.295]],["name/1813",[477,68.685]],["parent/1813",[654,4.295]],["name/1814",[577,68.685]],["parent/1814",[645,4.362]],["name/1815",[265,51.07]],["parent/1815",[645,4.362]],["name/1816",[676,73.804]],["parent/1816",[645,4.362]],["name/1817",[677,73.804]],["parent/1817",[645,4.362]],["name/1818",[678,73.804]],["parent/1818",[645,4.362]],["name/1819",[679,65.313]],["parent/1819",[645,4.362]],["name/1820",[680,73.804]],["parent/1820",[645,4.362]],["name/1821",[681,73.804]],["parent/1821",[645,4.362]],["name/1822",[682,68.685]],["parent/1822",[]],["name/1823",[657,62.795]],["parent/1823",[682,6.764]],["name/1824",[2,37.093]],["parent/1824",[683,4.737]],["name/1825",[684,73.804]],["parent/1825",[683,4.737]],["name/1826",[685,73.804]],["parent/1826",[683,4.737]],["name/1827",[686,68.685]],["parent/1827",[683,4.737]],["name/1828",[24,65.313]],["parent/1828",[683,4.737]],["name/1829",[26,65.313]],["parent/1829",[683,4.737]],["name/1830",[687,73.804]],["parent/1830",[683,4.737]],["name/1831",[688,73.804]],["parent/1831",[683,4.737]],["name/1832",[30,57.676]],["parent/1832",[683,4.737]],["name/1833",[252,65.313]],["parent/1833",[683,4.737]],["name/1834",[689,73.804]],["parent/1834",[683,4.737]],["name/1835",[32,65.313]],["parent/1835",[683,4.737]],["name/1836",[690,73.804]],["parent/1836",[683,4.737]],["name/1837",[691,73.804]],["parent/1837",[683,4.737]],["name/1838",[692,73.804]],["parent/1838",[683,4.737]],["name/1839",[693,68.685]],["parent/1839",[683,4.737]],["name/1840",[694,73.804]],["parent/1840",[683,4.737]],["name/1841",[695,73.804]],["parent/1841",[683,4.737]],["name/1842",[696,73.804]],["parent/1842",[683,4.737]],["name/1843",[697,68.685]],["parent/1843",[]],["name/1844",[235,62.795]],["parent/1844",[697,6.764]],["name/1845",[2,37.093]],["parent/1845",[698,5.1]],["name/1846",[699,73.804]],["parent/1846",[698,5.1]],["name/1847",[73,35.366]],["parent/1847",[698,5.1]],["name/1848",[700,73.804]],["parent/1848",[698,5.1]],["name/1849",[701,73.804]],["parent/1849",[698,5.1]],["name/1850",[39,68.685]],["parent/1850",[698,5.1]],["name/1851",[49,65.313]],["parent/1851",[698,5.1]],["name/1852",[702,73.804]],["parent/1852",[698,5.1]],["name/1853",[703,73.804]],["parent/1853",[698,5.1]],["name/1854",[396,68.685]],["parent/1854",[698,5.1]],["name/1855",[704,73.804]],["parent/1855",[698,5.1]],["name/1856",[381,62.795]],["parent/1856",[698,5.1]],["name/1857",[705,73.804]],["parent/1857",[698,5.1]],["name/1858",[706,68.685]],["parent/1858",[]],["name/1859",[264,46.668]],["parent/1859",[706,6.764]],["name/1860",[707,62.795]],["parent/1860",[708,5.176]],["name/1861",[709,62.795]],["parent/1861",[708,5.176]],["name/1862",[710,62.795]],["parent/1862",[708,5.176]],["name/1863",[2,37.093]],["parent/1863",[708,5.176]],["name/1864",[711,51.07]],["parent/1864",[708,5.176]],["name/1865",[149,44.299]],["parent/1865",[708,5.176]],["name/1866",[712,59.11]],["parent/1866",[708,5.176]],["name/1867",[264,46.668]],["parent/1867",[708,5.176]],["name/1868",[81,52.558]],["parent/1868",[708,5.176]],["name/1869",[255,48.629]],["parent/1869",[708,5.176]],["name/1870",[322,57.676]],["parent/1870",[708,5.176]],["name/1871",[266,47.6]],["parent/1871",[708,5.176]],["name/1872",[713,68.685]],["parent/1872",[]],["name/1873",[714,68.685]],["parent/1873",[713,6.764]],["name/1874",[707,62.795]],["parent/1874",[715,4.789]],["name/1875",[709,62.795]],["parent/1875",[715,4.789]],["name/1876",[710,62.795]],["parent/1876",[715,4.789]],["name/1877",[2,37.093]],["parent/1877",[715,4.789]],["name/1878",[6,38.37]],["parent/1878",[715,4.789]],["name/1879",[7,41.549]],["parent/1879",[715,4.789]],["name/1880",[716,73.804]],["parent/1880",[715,4.789]],["name/1881",[717,73.804]],["parent/1881",[715,4.789]],["name/1882",[718,73.804]],["parent/1882",[715,4.789]],["name/1883",[49,65.313]],["parent/1883",[715,4.789]],["name/1884",[711,51.07]],["parent/1884",[715,4.789]],["name/1885",[149,44.299]],["parent/1885",[715,4.789]],["name/1886",[712,59.11]],["parent/1886",[715,4.789]],["name/1887",[264,46.668]],["parent/1887",[715,4.789]],["name/1888",[81,52.558]],["parent/1888",[715,4.789]],["name/1889",[255,48.629]],["parent/1889",[715,4.789]],["name/1890",[322,57.676]],["parent/1890",[715,4.789]],["name/1891",[266,47.6]],["parent/1891",[715,4.789]],["name/1892",[719,68.685]],["parent/1892",[]],["name/1893",[720,73.804]],["parent/1893",[719,6.764]],["name/1894",[707,62.795]],["parent/1894",[721,5.176]],["name/1895",[709,62.795]],["parent/1895",[721,5.176]],["name/1896",[710,62.795]],["parent/1896",[721,5.176]],["name/1897",[2,37.093]],["parent/1897",[721,5.176]],["name/1898",[711,51.07]],["parent/1898",[721,5.176]],["name/1899",[149,44.299]],["parent/1899",[721,5.176]],["name/1900",[712,59.11]],["parent/1900",[721,5.176]],["name/1901",[264,46.668]],["parent/1901",[721,5.176]],["name/1902",[81,52.558]],["parent/1902",[721,5.176]],["name/1903",[255,48.629]],["parent/1903",[721,5.176]],["name/1904",[322,57.676]],["parent/1904",[721,5.176]],["name/1905",[266,47.6]],["parent/1905",[721,5.176]],["name/1906",[722,68.685]],["parent/1906",[]],["name/1907",[723,73.804]],["parent/1907",[722,6.764]],["name/1908",[707,62.795]],["parent/1908",[724,4.902]],["name/1909",[709,62.795]],["parent/1909",[724,4.902]],["name/1910",[710,62.795]],["parent/1910",[724,4.902]],["name/1911",[2,37.093]],["parent/1911",[724,4.902]],["name/1912",[725,73.804]],["parent/1912",[724,4.902]],["name/1913",[726,73.804]],["parent/1913",[724,4.902]],["name/1914",[466,68.685]],["parent/1914",[724,4.902]],["name/1915",[467,68.685]],["parent/1915",[724,4.902]],["name/1916",[711,51.07]],["parent/1916",[724,4.902]],["name/1917",[149,44.299]],["parent/1917",[724,4.902]],["name/1918",[712,59.11]],["parent/1918",[724,4.902]],["name/1919",[264,46.668]],["parent/1919",[724,4.902]],["name/1920",[81,52.558]],["parent/1920",[724,4.902]],["name/1921",[255,48.629]],["parent/1921",[724,4.902]],["name/1922",[322,57.676]],["parent/1922",[724,4.902]],["name/1923",[266,47.6]],["parent/1923",[724,4.902]],["name/1924",[118,62.795]],["parent/1924",[]],["name/1925",[727,73.804]],["parent/1925",[118,6.184]],["name/1926",[728,73.804]],["parent/1926",[729,5.986]],["name/1927",[730,73.804]],["parent/1927",[729,5.986]],["name/1928",[6,38.37]],["parent/1928",[731,4.963]],["name/1929",[7,41.549]],["parent/1929",[731,4.963]],["name/1930",[732,68.685]],["parent/1930",[731,4.963]],["name/1931",[309,59.11]],["parent/1931",[733,5.556]],["name/1932",[262,60.784]],["parent/1932",[733,5.556]],["name/1933",[341,62.795]],["parent/1933",[733,5.556]],["name/1934",[345,62.795]],["parent/1934",[733,5.556]],["name/1935",[8,56.422]],["parent/1935",[733,5.556]],["name/1936",[734,68.685]],["parent/1936",[733,5.556]],["name/1937",[317,59.11]],["parent/1937",[735,6.764]],["name/1938",[153,56.422]],["parent/1938",[735,6.764]],["name/1939",[373,60.784]],["parent/1939",[733,5.556]],["name/1940",[180,55.308]],["parent/1940",[736,6.764]],["name/1941",[357,56.422]],["parent/1941",[736,6.764]],["name/1942",[653,57.676]],["parent/1942",[733,5.556]],["name/1943",[313,60.784]],["parent/1943",[737,7.268]],["name/1944",[738,68.685]],["parent/1944",[731,4.963]],["name/1945",[147,62.795]],["parent/1945",[739,6.764]],["name/1946",[740,68.685]],["parent/1946",[739,6.764]],["name/1947",[164,62.795]],["parent/1947",[741,6.764]],["name/1948",[169,62.795]],["parent/1948",[741,6.764]],["name/1949",[653,57.676]],["parent/1949",[731,4.963]],["name/1950",[428,59.11]],["parent/1950",[742,5.986]],["name/1951",[186,57.676]],["parent/1951",[742,5.986]],["name/1952",[111,59.11]],["parent/1952",[742,5.986]],["name/1953",[235,62.795]],["parent/1953",[742,5.986]],["name/1954",[250,62.795]],["parent/1954",[742,5.986]],["name/1955",[743,68.685]],["parent/1955",[731,4.963]],["name/1956",[326,65.313]],["parent/1956",[744,6.432]],["name/1957",[679,65.313]],["parent/1957",[744,6.432]],["name/1958",[607,65.313]],["parent/1958",[744,6.432]],["name/1959",[745,65.313]],["parent/1959",[731,4.963]],["name/1960",[657,62.795]],["parent/1960",[746,7.268]],["name/1961",[649,65.313]],["parent/1961",[731,4.963]],["name/1962",[67,59.11]],["parent/1962",[747,7.268]],["name/1963",[278,47.6]],["parent/1963",[731,4.963]],["name/1964",[270,48.101]],["parent/1964",[748,6.184]],["name/1965",[575,62.795]],["parent/1965",[748,6.184]],["name/1966",[571,62.795]],["parent/1966",[748,6.184]],["name/1967",[749,59.11]],["parent/1967",[748,6.184]],["name/1968",[272,48.101]],["parent/1968",[750,6.764]],["name/1969",[545,62.795]],["parent/1969",[750,6.764]],["name/1970",[749,59.11]],["parent/1970",[731,4.963]],["name/1971",[535,62.795]],["parent/1971",[751,6.432]],["name/1972",[541,62.795]],["parent/1972",[751,6.432]],["name/1973",[264,46.668]],["parent/1973",[751,6.432]],["name/1974",[447,56.422]],["parent/1974",[731,4.963]],["name/1975",[447,56.422]],["parent/1975",[752,6.764]],["name/1976",[459,60.784]],["parent/1976",[752,6.764]],["name/1977",[674,62.795]],["parent/1977",[731,4.963]],["name/1978",[481,65.313]],["parent/1978",[753,7.268]],["name/1979",[754,68.685]],["parent/1979",[731,4.963]],["name/1980",[421,62.795]],["parent/1980",[755,7.268]],["name/1981",[389,59.11]],["parent/1981",[731,4.963]],["name/1982",[389,59.11]],["parent/1982",[756,6.184]],["name/1983",[394,60.784]],["parent/1983",[756,6.184]],["name/1984",[414,60.784]],["parent/1984",[756,6.184]],["name/1985",[749,59.11]],["parent/1985",[756,6.184]],["name/1986",[4,52.558]],["parent/1986",[757,6.764]],["name/1987",[412,65.313]],["parent/1987",[757,6.764]],["name/1988",[1,57.676]],["parent/1988",[731,4.963]],["name/1989",[1,57.676]],["parent/1989",[758,5.986]],["name/1990",[35,62.795]],["parent/1990",[758,5.986]],["name/1991",[41,65.313]],["parent/1991",[758,5.986]],["name/1992",[53,65.313]],["parent/1992",[758,5.986]],["name/1993",[59,62.795]],["parent/1993",[758,5.986]],["name/1994",[759,73.804]],["parent/1994",[729,5.986]],["name/1995",[6,38.37]],["parent/1995",[760,4.963]],["name/1996",[7,41.549]],["parent/1996",[760,4.963]],["name/1997",[732,68.685]],["parent/1997",[760,4.963]],["name/1998",[309,59.11]],["parent/1998",[761,5.556]],["name/1999",[262,60.784]],["parent/1999",[761,5.556]],["name/2000",[341,62.795]],["parent/2000",[761,5.556]],["name/2001",[345,62.795]],["parent/2001",[761,5.556]],["name/2002",[8,56.422]],["parent/2002",[761,5.556]],["name/2003",[734,68.685]],["parent/2003",[761,5.556]],["name/2004",[317,59.11]],["parent/2004",[762,6.764]],["name/2005",[153,56.422]],["parent/2005",[762,6.764]],["name/2006",[373,60.784]],["parent/2006",[761,5.556]],["name/2007",[180,55.308]],["parent/2007",[763,6.764]],["name/2008",[357,56.422]],["parent/2008",[763,6.764]],["name/2009",[653,57.676]],["parent/2009",[761,5.556]],["name/2010",[313,60.784]],["parent/2010",[764,7.268]],["name/2011",[738,68.685]],["parent/2011",[760,4.963]],["name/2012",[147,62.795]],["parent/2012",[765,6.764]],["name/2013",[740,68.685]],["parent/2013",[765,6.764]],["name/2014",[164,62.795]],["parent/2014",[766,6.764]],["name/2015",[169,62.795]],["parent/2015",[766,6.764]],["name/2016",[653,57.676]],["parent/2016",[760,4.963]],["name/2017",[428,59.11]],["parent/2017",[767,5.986]],["name/2018",[186,57.676]],["parent/2018",[767,5.986]],["name/2019",[111,59.11]],["parent/2019",[767,5.986]],["name/2020",[235,62.795]],["parent/2020",[767,5.986]],["name/2021",[250,62.795]],["parent/2021",[767,5.986]],["name/2022",[743,68.685]],["parent/2022",[760,4.963]],["name/2023",[326,65.313]],["parent/2023",[768,6.432]],["name/2024",[679,65.313]],["parent/2024",[768,6.432]],["name/2025",[607,65.313]],["parent/2025",[768,6.432]],["name/2026",[745,65.313]],["parent/2026",[760,4.963]],["name/2027",[657,62.795]],["parent/2027",[769,7.268]],["name/2028",[649,65.313]],["parent/2028",[760,4.963]],["name/2029",[67,59.11]],["parent/2029",[770,7.268]],["name/2030",[278,47.6]],["parent/2030",[760,4.963]],["name/2031",[270,48.101]],["parent/2031",[771,6.184]],["name/2032",[575,62.795]],["parent/2032",[771,6.184]],["name/2033",[571,62.795]],["parent/2033",[771,6.184]],["name/2034",[749,59.11]],["parent/2034",[771,6.184]],["name/2035",[272,48.101]],["parent/2035",[772,6.764]],["name/2036",[545,62.795]],["parent/2036",[772,6.764]],["name/2037",[749,59.11]],["parent/2037",[760,4.963]],["name/2038",[535,62.795]],["parent/2038",[773,6.432]],["name/2039",[541,62.795]],["parent/2039",[773,6.432]],["name/2040",[264,46.668]],["parent/2040",[773,6.432]],["name/2041",[447,56.422]],["parent/2041",[760,4.963]],["name/2042",[447,56.422]],["parent/2042",[774,6.764]],["name/2043",[459,60.784]],["parent/2043",[774,6.764]],["name/2044",[674,62.795]],["parent/2044",[760,4.963]],["name/2045",[481,65.313]],["parent/2045",[775,7.268]],["name/2046",[754,68.685]],["parent/2046",[760,4.963]],["name/2047",[421,62.795]],["parent/2047",[776,7.268]],["name/2048",[389,59.11]],["parent/2048",[760,4.963]],["name/2049",[389,59.11]],["parent/2049",[777,6.184]],["name/2050",[394,60.784]],["parent/2050",[777,6.184]],["name/2051",[414,60.784]],["parent/2051",[777,6.184]],["name/2052",[749,59.11]],["parent/2052",[777,6.184]],["name/2053",[4,52.558]],["parent/2053",[778,6.764]],["name/2054",[412,65.313]],["parent/2054",[778,6.764]],["name/2055",[1,57.676]],["parent/2055",[760,4.963]],["name/2056",[1,57.676]],["parent/2056",[779,5.986]],["name/2057",[35,62.795]],["parent/2057",[779,5.986]],["name/2058",[41,65.313]],["parent/2058",[779,5.986]],["name/2059",[53,65.313]],["parent/2059",[779,5.986]],["name/2060",[59,62.795]],["parent/2060",[779,5.986]],["name/2061",[780,73.804]],["parent/2061",[729,5.986]],["name/2062",[781,73.804]],["parent/2062",[782,7.268]],["name/2063",[155,46.668]],["parent/2063",[783,7.268]],["name/2064",[73,35.366]],["parent/2064",[784,7.268]],["name/2065",[313,60.784]],["parent/2065",[785,5.68]],["name/2066",[309,59.11]],["parent/2066",[785,5.68]],["name/2067",[317,59.11]],["parent/2067",[785,5.68]],["name/2068",[180,55.308]],["parent/2068",[785,5.68]],["name/2069",[357,56.422]],["parent/2069",[785,5.68]],["name/2070",[786,73.804]],["parent/2070",[785,5.68]],["name/2071",[787,73.804]],["parent/2071",[785,5.68]],["name/2072",[788,73.804]],["parent/2072",[729,5.986]],["name/2073",[309,59.11]],["parent/2073",[789,4.434]],["name/2074",[790,73.804]],["parent/2074",[789,4.434]],["name/2075",[791,73.804]],["parent/2075",[789,4.434]],["name/2076",[149,44.299]],["parent/2076",[792,5.821]],["name/2077",[155,46.668]],["parent/2077",[792,5.821]],["name/2078",[154,46.668]],["parent/2078",[792,5.821]],["name/2079",[6,38.37]],["parent/2079",[792,5.821]],["name/2080",[161,47.6]],["parent/2080",[792,5.821]],["name/2081",[156,47.6]],["parent/2081",[792,5.821]],["name/2082",[6,38.37]],["parent/2082",[789,4.434]],["name/2083",[5,52.558]],["parent/2083",[793,6.432]],["name/2084",[234,68.685]],["parent/2084",[794,4.737]],["name/2085",[795,68.685]],["parent/2085",[794,4.737]],["name/2086",[796,73.804]],["parent/2086",[794,4.737]],["name/2087",[187,60.784]],["parent/2087",[794,4.737]],["name/2088",[188,60.784]],["parent/2088",[794,4.737]],["name/2089",[797,73.804]],["parent/2089",[794,4.737]],["name/2090",[278,47.6]],["parent/2090",[794,4.737]],["name/2091",[73,35.366]],["parent/2091",[794,4.737]],["name/2092",[274,49.186]],["parent/2092",[798,5.821]],["name/2093",[799,73.804]],["parent/2093",[798,5.821]],["name/2094",[800,73.804]],["parent/2094",[798,5.821]],["name/2095",[128,65.313]],["parent/2095",[798,5.821]],["name/2096",[801,73.804]],["parent/2096",[794,4.737]],["name/2097",[802,73.804]],["parent/2097",[794,4.737]],["name/2098",[81,52.558]],["parent/2098",[794,4.737]],["name/2099",[128,65.313]],["parent/2099",[794,4.737]],["name/2100",[803,73.804]],["parent/2100",[794,4.737]],["name/2101",[249,68.685]],["parent/2101",[794,4.737]],["name/2102",[73,35.366]],["parent/2102",[794,4.737]],["name/2103",[804,73.804]],["parent/2103",[798,5.821]],["name/2104",[805,73.804]],["parent/2104",[798,5.821]],["name/2105",[806,73.804]],["parent/2105",[794,4.737]],["name/2106",[807,73.804]],["parent/2106",[794,4.737]],["name/2107",[139,68.685]],["parent/2107",[794,4.737]],["name/2108",[808,73.804]],["parent/2108",[794,4.737]],["name/2109",[130,62.795]],["parent/2109",[793,6.432]],["name/2110",[245,68.685]],["parent/2110",[809,6.764]],["name/2111",[795,68.685]],["parent/2111",[809,6.764]],["name/2112",[810,73.804]],["parent/2112",[793,6.432]],["name/2113",[811,60.784]],["parent/2113",[812,6.432]],["name/2114",[813,73.804]],["parent/2114",[812,6.432]],["name/2115",[378,65.313]],["parent/2115",[812,6.432]],["name/2116",[637,68.685]],["parent/2116",[789,4.434]],["name/2117",[814,73.804]],["parent/2117",[815,7.268]],["name/2118",[7,41.549]],["parent/2118",[816,6.764]],["name/2119",[817,73.804]],["parent/2119",[816,6.764]],["name/2120",[653,57.676]],["parent/2120",[789,4.434]],["name/2121",[81,52.558]],["parent/2121",[818,7.268]],["name/2122",[819,73.804]],["parent/2122",[820,6.764]],["name/2123",[821,73.804]],["parent/2123",[820,6.764]],["name/2124",[270,48.101]],["parent/2124",[789,4.434]],["name/2125",[822,73.804]],["parent/2125",[823,6.764]],["name/2126",[824,73.804]],["parent/2126",[823,6.764]],["name/2127",[745,65.313]],["parent/2127",[789,4.434]],["name/2128",[8,56.422]],["parent/2128",[825,6.764]],["name/2129",[826,73.804]],["parent/2129",[827,6.432]],["name/2130",[828,73.804]],["parent/2130",[827,6.432]],["name/2131",[4,52.558]],["parent/2131",[827,6.432]],["name/2132",[5,52.558]],["parent/2132",[825,6.764]],["name/2133",[829,73.804]],["parent/2133",[830,6.184]],["name/2134",[693,68.685]],["parent/2134",[830,6.184]],["name/2135",[686,68.685]],["parent/2135",[830,6.184]],["name/2136",[252,65.313]],["parent/2136",[830,6.184]],["name/2137",[831,73.804]],["parent/2137",[789,4.434]],["name/2138",[832,73.804]],["parent/2138",[833,6.184]],["name/2139",[834,73.804]],["parent/2139",[833,6.184]],["name/2140",[835,73.804]],["parent/2140",[833,6.184]],["name/2141",[836,73.804]],["parent/2141",[837,4.844]],["name/2142",[838,73.804]],["parent/2142",[837,4.844]],["name/2143",[489,51.786]],["parent/2143",[837,4.844]],["name/2144",[490,52.558]],["parent/2144",[837,4.844]],["name/2145",[839,73.804]],["parent/2145",[837,4.844]],["name/2146",[840,73.804]],["parent/2146",[837,4.844]],["name/2147",[841,73.804]],["parent/2147",[837,4.844]],["name/2148",[842,73.804]],["parent/2148",[837,4.844]],["name/2149",[843,73.804]],["parent/2149",[837,4.844]],["name/2150",[844,73.804]],["parent/2150",[837,4.844]],["name/2151",[845,68.685]],["parent/2151",[837,4.844]],["name/2152",[846,68.685]],["parent/2152",[837,4.844]],["name/2153",[847,68.685]],["parent/2153",[837,4.844]],["name/2154",[848,68.685]],["parent/2154",[837,4.844]],["name/2155",[849,68.685]],["parent/2155",[837,4.844]],["name/2156",[850,68.685]],["parent/2156",[837,4.844]],["name/2157",[851,68.685]],["parent/2157",[837,4.844]],["name/2158",[852,73.804]],["parent/2158",[833,6.184]],["name/2159",[489,51.786]],["parent/2159",[853,4.844]],["name/2160",[262,60.784]],["parent/2160",[853,4.844]],["name/2161",[854,73.804]],["parent/2161",[853,4.844]],["name/2162",[855,73.804]],["parent/2162",[853,4.844]],["name/2163",[856,73.804]],["parent/2163",[853,4.844]],["name/2164",[857,73.804]],["parent/2164",[853,4.844]],["name/2165",[858,73.804]],["parent/2165",[853,4.844]],["name/2166",[859,73.804]],["parent/2166",[853,4.844]],["name/2167",[860,73.804]],["parent/2167",[853,4.844]],["name/2168",[269,49.775]],["parent/2168",[853,4.844]],["name/2169",[845,68.685]],["parent/2169",[853,4.844]],["name/2170",[846,68.685]],["parent/2170",[853,4.844]],["name/2171",[847,68.685]],["parent/2171",[853,4.844]],["name/2172",[848,68.685]],["parent/2172",[853,4.844]],["name/2173",[849,68.685]],["parent/2173",[853,4.844]],["name/2174",[850,68.685]],["parent/2174",[853,4.844]],["name/2175",[851,68.685]],["parent/2175",[853,4.844]],["name/2176",[373,60.784]],["parent/2176",[789,4.434]],["name/2177",[357,56.422]],["parent/2177",[861,6.764]],["name/2178",[5,52.558]],["parent/2178",[862,7.268]],["name/2179",[489,51.786]],["parent/2179",[863,5.986]],["name/2180",[490,52.558]],["parent/2180",[863,5.986]],["name/2181",[864,73.804]],["parent/2181",[863,5.986]],["name/2182",[865,73.804]],["parent/2182",[863,5.986]],["name/2183",[73,35.366]],["parent/2183",[863,5.986]],["name/2184",[866,73.804]],["parent/2184",[867,5.986]],["name/2185",[868,73.804]],["parent/2185",[867,5.986]],["name/2186",[869,73.804]],["parent/2186",[867,5.986]],["name/2187",[870,73.804]],["parent/2187",[867,5.986]],["name/2188",[871,73.804]],["parent/2188",[867,5.986]],["name/2189",[180,55.308]],["parent/2189",[861,6.764]],["name/2190",[150,47.123]],["parent/2190",[872,5.986]],["name/2191",[873,68.685]],["parent/2191",[872,5.986]],["name/2192",[874,73.804]],["parent/2192",[872,5.986]],["name/2193",[489,51.786]],["parent/2193",[875,6.432]],["name/2194",[490,52.558]],["parent/2194",[875,6.432]],["name/2195",[711,51.07]],["parent/2195",[875,6.432]],["name/2196",[876,73.804]],["parent/2196",[872,5.986]],["name/2197",[73,35.366]],["parent/2197",[877,7.268]],["name/2198",[878,68.685]],["parent/2198",[872,5.986]],["name/2199",[711,51.07]],["parent/2199",[879,6.764]],["name/2200",[811,60.784]],["parent/2200",[879,6.764]],["name/2201",[186,57.676]],["parent/2201",[789,4.434]],["name/2202",[385,68.685]],["parent/2202",[880,6.432]],["name/2203",[873,68.685]],["parent/2203",[880,6.432]],["name/2204",[878,68.685]],["parent/2204",[880,6.432]],["name/2205",[811,60.784]],["parent/2205",[881,6.764]],["name/2206",[711,51.07]],["parent/2206",[881,6.764]],["name/2207",[153,56.422]],["parent/2207",[789,4.434]],["name/2208",[882,73.804]],["parent/2208",[883,6.764]],["name/2209",[884,73.804]],["parent/2209",[883,6.764]],["name/2210",[885,73.804]],["parent/2210",[886,6.432]],["name/2211",[166,65.313]],["parent/2211",[886,6.432]],["name/2212",[887,73.804]],["parent/2212",[886,6.432]],["name/2213",[111,59.11]],["parent/2213",[789,4.434]],["name/2214",[888,73.804]],["parent/2214",[889,5.821]],["name/2215",[890,73.804]],["parent/2215",[889,5.821]],["name/2216",[711,51.07]],["parent/2216",[891,6.764]],["name/2217",[811,60.784]],["parent/2217",[891,6.764]],["name/2218",[892,73.804]],["parent/2218",[889,5.821]],["name/2219",[893,73.804]],["parent/2219",[889,5.821]],["name/2220",[711,51.07]],["parent/2220",[894,5.176]],["name/2221",[895,73.804]],["parent/2221",[894,5.176]],["name/2222",[95,68.685]],["parent/2222",[894,5.176]],["name/2223",[73,35.366]],["parent/2223",[894,5.176]],["name/2224",[489,51.786]],["parent/2224",[896,6.764]],["name/2225",[490,52.558]],["parent/2225",[896,6.764]],["name/2226",[811,60.784]],["parent/2226",[894,5.176]],["name/2227",[897,73.804]],["parent/2227",[894,5.176]],["name/2228",[898,73.804]],["parent/2228",[894,5.176]],["name/2229",[899,73.804]],["parent/2229",[894,5.176]],["name/2230",[900,73.804]],["parent/2230",[894,5.176]],["name/2231",[901,73.804]],["parent/2231",[894,5.176]],["name/2232",[902,73.804]],["parent/2232",[894,5.176]],["name/2233",[903,73.804]],["parent/2233",[894,5.176]],["name/2234",[113,68.685]],["parent/2234",[889,5.821]],["name/2235",[120,68.685]],["parent/2235",[904,6.432]],["name/2236",[73,35.366]],["parent/2236",[904,6.432]],["name/2237",[905,73.804]],["parent/2237",[906,5.821]],["name/2238",[73,35.366]],["parent/2238",[906,5.821]],["name/2239",[489,51.786]],["parent/2239",[907,5.447]],["name/2240",[490,52.558]],["parent/2240",[907,5.447]],["name/2241",[908,73.804]],["parent/2241",[906,5.821]],["name/2242",[909,73.804]],["parent/2242",[906,5.821]],["name/2243",[73,35.366]],["parent/2243",[906,5.821]],["name/2244",[910,73.804]],["parent/2244",[907,5.447]],["name/2245",[162,62.795]],["parent/2245",[907,5.447]],["name/2246",[911,73.804]],["parent/2246",[907,5.447]],["name/2247",[912,73.804]],["parent/2247",[907,5.447]],["name/2248",[73,35.366]],["parent/2248",[907,5.447]],["name/2249",[489,51.786]],["parent/2249",[913,6.764]],["name/2250",[490,52.558]],["parent/2250",[913,6.764]],["name/2251",[914,73.804]],["parent/2251",[907,5.447]],["name/2252",[915,73.804]],["parent/2252",[907,5.447]],["name/2253",[916,73.804]],["parent/2253",[906,5.821]],["name/2254",[114,68.685]],["parent/2254",[904,6.432]],["name/2255",[5,52.558]],["parent/2255",[889,5.821]],["name/2256",[648,65.313]],["parent/2256",[917,6.184]],["name/2257",[117,68.685]],["parent/2257",[917,6.184]],["name/2258",[116,68.685]],["parent/2258",[917,6.184]],["name/2259",[115,68.685]],["parent/2259",[917,6.184]],["name/2260",[459,60.784]],["parent/2260",[789,4.434]],["name/2261",[447,56.422]],["parent/2261",[918,6.764]],["name/2262",[919,73.804]],["parent/2262",[918,6.764]],["name/2263",[920,73.804]],["parent/2263",[789,4.434]],["name/2264",[84,49.186]],["parent/2264",[921,6.764]],["name/2265",[267,48.629]],["parent/2265",[922,6.184]],["name/2266",[73,35.366]],["parent/2266",[922,6.184]],["name/2267",[489,51.786]],["parent/2267",[923,6.764]],["name/2268",[490,52.558]],["parent/2268",[923,6.764]],["name/2269",[79,47.123]],["parent/2269",[922,6.184]],["name/2270",[80,47.123]],["parent/2270",[922,6.184]],["name/2271",[278,47.6]],["parent/2271",[921,6.764]],["name/2272",[924,73.804]],["parent/2272",[925,7.268]],["name/2273",[428,59.11]],["parent/2273",[789,4.434]],["name/2274",[926,73.804]],["parent/2274",[927,6.432]],["name/2275",[928,73.804]],["parent/2275",[927,6.432]],["name/2276",[711,51.07]],["parent/2276",[929,6.432]],["name/2277",[930,68.685]],["parent/2277",[929,6.432]],["name/2278",[4,52.558]],["parent/2278",[929,6.432]],["name/2279",[931,73.804]],["parent/2279",[927,6.432]],["name/2280",[712,59.11]],["parent/2280",[932,6.184]],["name/2281",[711,51.07]],["parent/2281",[932,6.184]],["name/2282",[930,68.685]],["parent/2282",[932,6.184]],["name/2283",[4,52.558]],["parent/2283",[932,6.184]],["name/2284",[264,46.668]],["parent/2284",[789,4.434]],["name/2285",[711,51.07]],["parent/2285",[933,6.764]],["name/2286",[712,59.11]],["parent/2286",[933,6.764]],["name/2287",[571,62.795]],["parent/2287",[789,4.434]],["name/2288",[711,51.07]],["parent/2288",[934,5.821]],["name/2289",[5,52.558]],["parent/2289",[934,5.821]],["name/2290",[711,51.07]],["parent/2290",[935,7.268]],["name/2291",[936,73.804]],["parent/2291",[934,5.821]],["name/2292",[937,73.804]],["parent/2292",[938,6.764]],["name/2293",[560,68.685]],["parent/2293",[938,6.764]],["name/2294",[939,73.804]],["parent/2294",[934,5.821]],["name/2295",[940,73.804]],["parent/2295",[934,5.821]],["name/2296",[941,73.804]],["parent/2296",[934,5.821]],["name/2297",[1,57.676]],["parent/2297",[789,4.434]],["name/2298",[5,52.558]],["parent/2298",[942,6.764]],["name/2299",[4,52.558]],["parent/2299",[943,5.68]],["name/2300",[12,68.685]],["parent/2300",[943,5.68]],["name/2301",[944,73.804]],["parent/2301",[943,5.68]],["name/2302",[10,68.685]],["parent/2302",[943,5.68]],["name/2303",[945,73.804]],["parent/2303",[943,5.68]],["name/2304",[946,73.804]],["parent/2304",[943,5.68]],["name/2305",[947,73.804]],["parent/2305",[943,5.68]],["name/2306",[948,73.804]],["parent/2306",[942,6.764]],["name/2307",[37,68.685]],["parent/2307",[949,6.764]],["name/2308",[38,68.685]],["parent/2308",[949,6.764]],["name/2309",[59,62.795]],["parent/2309",[789,4.434]],["name/2310",[950,73.804]],["parent/2310",[951,6.432]],["name/2311",[952,73.804]],["parent/2311",[953,6.432]],["name/2312",[954,73.804]],["parent/2312",[953,6.432]],["name/2313",[955,73.804]],["parent/2313",[953,6.432]],["name/2314",[956,73.804]],["parent/2314",[951,6.432]],["name/2315",[4,52.558]],["parent/2315",[957,6.432]],["name/2316",[56,65.313]],["parent/2316",[957,6.432]],["name/2317",[55,68.685]],["parent/2317",[957,6.432]],["name/2318",[5,52.558]],["parent/2318",[951,6.432]],["name/2319",[958,73.804]],["parent/2319",[959,6.764]],["name/2320",[57,65.313]],["parent/2320",[959,6.764]],["name/2321",[394,60.784]],["parent/2321",[789,4.434]],["name/2322",[960,73.804]],["parent/2322",[961,7.268]],["name/2323",[404,68.685]],["parent/2323",[962,5.821]],["name/2324",[405,62.795]],["parent/2324",[962,5.821]],["name/2325",[963,73.804]],["parent/2325",[962,5.821]],["name/2326",[964,73.804]],["parent/2326",[962,5.821]],["name/2327",[965,73.804]],["parent/2327",[962,5.821]],["name/2328",[966,73.804]],["parent/2328",[962,5.821]],["name/2329",[414,60.784]],["parent/2329",[789,4.434]],["name/2330",[967,73.804]],["parent/2330",[968,7.268]],["name/2331",[180,55.308]],["parent/2331",[969,5.986]],["name/2332",[405,62.795]],["parent/2332",[969,5.986]],["name/2333",[970,73.804]],["parent/2333",[969,5.986]],["name/2334",[971,73.804]],["parent/2334",[969,5.986]],["name/2335",[972,73.804]],["parent/2335",[969,5.986]],["name/2336",[67,59.11]],["parent/2336",[789,4.434]],["name/2337",[973,73.804]],["parent/2337",[974,7.268]],["name/2338",[975,73.804]],["parent/2338",[976,6.764]],["name/2339",[977,73.804]],["parent/2339",[976,6.764]],["name/2340",[714,68.685]],["parent/2340",[789,4.434]],["name/2341",[978,73.804]],["parent/2341",[979,6.764]],["name/2342",[4,52.558]],["parent/2342",[980,5.986]],["name/2343",[489,51.786]],["parent/2343",[980,5.986]],["name/2344",[490,52.558]],["parent/2344",[980,5.986]],["name/2345",[79,47.123]],["parent/2345",[980,5.986]],["name/2346",[80,47.123]],["parent/2346",[980,5.986]],["name/2347",[981,73.804]],["parent/2347",[979,6.764]],["name/2348",[378,65.313]],["parent/2348",[982,6.764]],["name/2349",[983,73.804]],["parent/2349",[982,6.764]],["name/2350",[674,62.795]],["parent/2350",[789,4.434]],["name/2351",[984,73.804]],["parent/2351",[985,6.432]],["name/2352",[489,51.786]],["parent/2352",[986,6.764]],["name/2353",[490,52.558]],["parent/2353",[986,6.764]],["name/2354",[987,73.804]],["parent/2354",[985,6.432]],["name/2355",[489,51.786]],["parent/2355",[988,6.764]],["name/2356",[490,52.558]],["parent/2356",[988,6.764]],["name/2357",[989,73.804]],["parent/2357",[985,6.432]],["name/2358",[79,47.123]],["parent/2358",[990,6.184]],["name/2359",[80,47.123]],["parent/2359",[990,6.184]],["name/2360",[489,51.786]],["parent/2360",[990,6.184]],["name/2361",[490,52.558]],["parent/2361",[990,6.184]],["name/2362",[991,73.804]],["parent/2362",[789,4.434]],["name/2363",[992,73.804]],["parent/2363",[993,6.764]],["name/2364",[994,73.804]],["parent/2364",[993,6.764]],["name/2365",[995,73.804]],["parent/2365",[118,6.184]],["name/2366",[73,35.366]],["parent/2366",[996,7.268]],["name/2367",[6,38.37]],["parent/2367",[997,6.764]],["name/2368",[7,41.549]],["parent/2368",[997,6.764]]],"invertedIndex":[["__tick",{"_index":577,"name":{"1624":{},"1814":{}},"parent":{}}],["__type",{"_index":73,"name":{"95":{},"154":{},"156":{},"243":{},"249":{},"251":{},"256":{},"260":{},"265":{},"287":{},"291":{},"299":{},"307":{},"330":{},"335":{},"341":{},"347":{},"369":{},"421":{},"481":{},"541":{},"606":{},"695":{},"755":{},"820":{},"884":{},"944":{},"1004":{},"1067":{},"1127":{},"1191":{},"1227":{},"1264":{},"1439":{},"1498":{},"1589":{},"1681":{},"1732":{},"1734":{},"1736":{},"1738":{},"1740":{},"1748":{},"1751":{},"1759":{},"1766":{},"1772":{},"1776":{},"1779":{},"1783":{},"1788":{},"1790":{},"1794":{},"1798":{},"1803":{},"1807":{},"1847":{},"2064":{},"2091":{},"2102":{},"2183":{},"2197":{},"2223":{},"2236":{},"2238":{},"2243":{},"2248":{},"2266":{},"2366":{}},"parent":{}}],["_draw",{"_index":161,"name":{"190":{},"201":{},"225":{},"394":{},"458":{},"514":{},"577":{},"668":{},"728":{},"792":{},"856":{},"917":{},"977":{},"1039":{},"1104":{},"1236":{},"1327":{},"1347":{},"1551":{},"2080":{}},"parent":{}}],["_update",{"_index":283,"name":{"426":{},"486":{},"546":{},"578":{},"700":{},"760":{},"825":{},"889":{},"949":{},"1009":{},"1072":{},"1132":{},"1269":{},"1475":{},"1533":{},"1552":{},"1594":{}},"parent":{}}],["a",{"_index":836,"name":{"2141":{}},"parent":{}}],["abs",{"_index":527,"name":{"1434":{}},"parent":{}}],["acceleratevelocity",{"_index":292,"name":{"435":{},"495":{},"555":{},"619":{},"709":{},"769":{},"834":{},"898":{},"958":{},"1018":{},"1081":{},"1141":{},"1278":{},"1511":{},"1603":{}},"parent":{}}],["add",{"_index":47,"name":{"50":{},"257":{},"348":{},"370":{},"1163":{},"1396":{},"1449":{},"1461":{},"1735":{}},"parent":{}}],["addbody",{"_index":551,"name":{"1476":{}},"parent":{}}],["addcollider",{"_index":279,"name":{"422":{},"482":{},"542":{},"607":{},"696":{},"756":{},"821":{},"885":{},"945":{},"1005":{},"1068":{},"1128":{},"1265":{},"1499":{},"1590":{}},"parent":{}}],["addhitbox",{"_index":281,"name":{"423":{},"483":{},"543":{},"608":{},"697":{},"757":{},"822":{},"886":{},"946":{},"1006":{},"1069":{},"1129":{},"1266":{},"1500":{},"1591":{}},"parent":{}}],["addkey",{"_index":397,"name":{"1192":{}},"parent":{}}],["addkeys",{"_index":398,"name":{"1193":{}},"parent":{}}],["addmice",{"_index":419,"name":{"1229":{}},"parent":{}}],["addmouse",{"_index":418,"name":{"1228":{}},"parent":{}}],["addnumber",{"_index":493,"name":{"1397":{}},"parent":{}}],["affect",{"_index":895,"name":{"2221":{}},"parent":{}}],["age",{"_index":321,"name":{"576":{}},"parent":{}}],["alpha",{"_index":424,"name":{"1235":{}},"parent":{}}],["alpharange",{"_index":994,"name":{"2364":{}},"parent":{}}],["amount",{"_index":326,"name":{"642":{},"1956":{},"2023":{}},"parent":{}}],["anglebetween",{"_index":501,"name":{"1405":{}},"parent":{}}],["angleto",{"_index":502,"name":{"1406":{}},"parent":{}}],["animation",{"_index":1,"name":{"1":{},"71":{},"1988":{},"1989":{},"2055":{},"2056":{},"2297":{}},"parent":{}}],["animationframe",{"_index":35,"name":{"34":{},"357":{},"1990":{},"2057":{}},"parent":{}}],["animationmanager",{"_index":41,"name":{"41":{},"1991":{},"2058":{}},"parent":{}}],["animationnormaltimer",{"_index":14,"name":{"13":{}},"parent":{}}],["animationreversetimer",{"_index":15,"name":{"14":{}},"parent":{}}],["animations",{"_index":43,"name":{"46":{},"79":{}},"parent":{}}],["animationstate",{"_index":53,"name":{"68":{},"1992":{},"2059":{}},"parent":{}}],["anims",{"_index":352,"name":{"790":{}},"parent":{}}],["applyfriction",{"_index":293,"name":{"436":{},"496":{},"556":{},"620":{},"710":{},"770":{},"835":{},"899":{},"959":{},"1019":{},"1082":{},"1142":{},"1279":{},"1512":{},"1604":{}},"parent":{}}],["applygravity",{"_index":294,"name":{"437":{},"497":{},"557":{},"621":{},"711":{},"771":{},"836":{},"900":{},"960":{},"1020":{},"1083":{},"1143":{},"1280":{},"1513":{},"1605":{}},"parent":{}}],["applyscale",{"_index":90,"name":{"111":{}},"parent":{}}],["applytranslation",{"_index":91,"name":{"112":{}},"parent":{}}],["area",{"_index":545,"name":{"1469":{},"1749":{},"1969":{},"2036":{}},"parent":{}}],["args",{"_index":813,"name":{"2114":{}},"parent":{}}],["aspectratio",{"_index":82,"name":{"103":{}},"parent":{}}],["at",{"_index":386,"name":{"1174":{}},"parent":{}}],["atlas",{"_index":919,"name":{"2262":{}},"parent":{}}],["atop",{"_index":617,"name":{"1685":{},"1689":{}},"parent":{}}],["attachchild",{"_index":286,"name":{"429":{},"489":{},"549":{},"613":{},"703":{},"763":{},"828":{},"892":{},"952":{},"1012":{},"1075":{},"1135":{},"1272":{},"1505":{},"1597":{}},"parent":{}}],["attachedbody",{"_index":936,"name":{"2291":{}},"parent":{}}],["attachedchildren",{"_index":276,"name":{"418":{},"478":{},"538":{},"603":{},"692":{},"752":{},"817":{},"881":{},"941":{},"1001":{},"1064":{},"1124":{},"1261":{},"1495":{},"1586":{}},"parent":{}}],["attachoffset",{"_index":277,"name":{"419":{},"479":{},"539":{},"604":{},"693":{},"753":{},"818":{},"882":{},"942":{},"1002":{},"1065":{},"1125":{},"1262":{},"1496":{},"1587":{}},"parent":{}}],["attachto",{"_index":285,"name":{"428":{},"488":{},"548":{},"612":{},"702":{},"762":{},"827":{},"891":{},"951":{},"1011":{},"1074":{},"1134":{},"1271":{},"1504":{},"1596":{}},"parent":{}}],["audiostack",{"_index":435,"name":{"1304":{}},"parent":{}}],["auto",{"_index":566,"name":{"1556":{}},"parent":{}}],["autoadvance",{"_index":55,"name":{"72":{},"2317":{}},"parent":{}}],["autocanvas",{"_index":728,"name":{"1926":{}},"parent":{}}],["autocull",{"_index":107,"name":{"128":{}},"parent":{}}],["autofithitbox",{"_index":297,"name":{"440":{},"500":{},"560":{},"624":{},"714":{},"774":{},"839":{},"903":{},"963":{},"1023":{},"1086":{},"1146":{},"1283":{},"1516":{},"1608":{}},"parent":{}}],["autoplay",{"_index":829,"name":{"2133":{}},"parent":{}}],["b",{"_index":838,"name":{"2142":{}},"parent":{}}],["background",{"_index":806,"name":{"2105":{}},"parent":{}}],["base",{"_index":743,"name":{"1955":{},"2022":{}},"parent":{}}],["baserenderer",{"_index":585,"name":{"1632":{}},"parent":{}}],["begin",{"_index":88,"name":{"109":{}},"parent":{}}],["blendmodes",{"_index":610,"name":{"1680":{}},"parent":{}}],["blur",{"_index":188,"name":{"267":{},"296":{},"304":{},"309":{},"2088":{}},"parent":{}}],["bodies",{"_index":548,"name":{"1472":{}},"parent":{}}],["body",{"_index":937,"name":{"2292":{}},"parent":{}}],["bodyisinarea",{"_index":553,"name":{"1478":{}},"parent":{}}],["bottom",{"_index":78,"name":{"99":{}},"parent":{}}],["bouncevelocitybounds",{"_index":295,"name":{"438":{},"498":{},"558":{},"622":{},"712":{},"772":{},"837":{},"901":{},"961":{},"1021":{},"1084":{},"1144":{},"1281":{},"1514":{},"1606":{}},"parent":{}}],["bounciness",{"_index":924,"name":{"2272":{}},"parent":{}}],["bounds",{"_index":84,"name":{"105":{},"415":{},"475":{},"535":{},"600":{},"689":{},"749":{},"814":{},"878":{},"938":{},"998":{},"1061":{},"1121":{},"1258":{},"1492":{},"1583":{},"2264":{}},"parent":{}}],["boundslike",{"_index":989,"name":{"2357":{}},"parent":{}}],["browser",{"_index":251,"name":{"378":{}},"parent":{}}],["burn",{"_index":627,"name":{"1699":{}},"parent":{}}],["button",{"_index":180,"name":{"250":{},"851":{},"1214":{},"1753":{},"1940":{},"2007":{},"2068":{},"2189":{},"2331":{}},"parent":{}}],["buttonevents",{"_index":221,"name":{"334":{}},"parent":{}}],["cache",{"_index":699,"name":{"1846":{}},"parent":{}}],["cachemanager",{"_index":235,"name":{"358":{},"1844":{},"1953":{},"2020":{}},"parent":{}}],["call",{"_index":533,"name":{"1442":{}},"parent":{}}],["callbacks",{"_index":176,"name":{"242":{}},"parent":{}}],["camera",{"_index":67,"name":{"87":{},"140":{},"1756":{},"1962":{},"2029":{},"2336":{}},"parent":{}}],["camerafollow",{"_index":901,"name":{"2231":{}},"parent":{}}],["camerafollowlerpx",{"_index":902,"name":{"2232":{}},"parent":{}}],["camerafollowlerpy",{"_index":903,"name":{"2233":{}},"parent":{}}],["cameraintervalms",{"_index":898,"name":{"2228":{}},"parent":{}}],["cameras",{"_index":649,"name":{"1726":{},"1961":{},"2028":{}},"parent":{}}],["camerasettings",{"_index":909,"name":{"2242":{}},"parent":{}}],["cameratimems",{"_index":899,"name":{"2229":{}},"parent":{}}],["cameravalue",{"_index":897,"name":{"2227":{}},"parent":{}}],["cantravel",{"_index":65,"name":{"85":{}},"parent":{}}],["canvas",{"_index":234,"name":{"354":{},"2084":{}},"parent":{}}],["canvasmodulate",{"_index":313,"name":{"512":{},"1741":{},"1943":{},"2010":{},"2065":{}},"parent":{}}],["canvasrenderer",{"_index":603,"name":{"1654":{}},"parent":{}}],["circle",{"_index":262,"name":{"392":{},"1745":{},"1932":{},"1999":{},"2160":{}},"parent":{}}],["circlerectcollision",{"_index":579,"name":{"1626":{}},"parent":{}}],["circletorectintersect",{"_index":673,"name":{"1805":{}},"parent":{}}],["clamp",{"_index":473,"name":{"1373":{},"1429":{},"1810":{}},"parent":{}}],["clampmax",{"_index":524,"name":{"1431":{}},"parent":{}}],["clampmin",{"_index":523,"name":{"1430":{}},"parent":{}}],["classes",{"_index":730,"name":{"1927":{}},"parent":{}}],["clear",{"_index":51,"name":{"54":{}},"parent":{}}],["clear_frame",{"_index":197,"name":{"278":{},"289":{},"320":{},"332":{}},"parent":{}}],["clearframe",{"_index":587,"name":{"1635":{},"1671":{}},"parent":{}}],["clearrect",{"_index":608,"name":{"1672":{}},"parent":{}}],["click",{"_index":182,"name":{"252":{},"336":{}},"parent":{}}],["clone",{"_index":503,"name":{"1407":{}},"parent":{}}],["col",{"_index":37,"name":{"36":{},"2307":{}},"parent":{}}],["collidehitboxes",{"_index":557,"name":{"1534":{}},"parent":{}}],["collider",{"_index":270,"name":{"411":{},"471":{},"531":{},"596":{},"685":{},"745":{},"810":{},"874":{},"934":{},"994":{},"1057":{},"1117":{},"1254":{},"1488":{},"1528":{},"1579":{},"1964":{},"2031":{},"2124":{}},"parent":{}}],["collideswith",{"_index":271,"name":{"412":{},"472":{},"532":{},"597":{},"686":{},"746":{},"811":{},"875":{},"935":{},"995":{},"1058":{},"1118":{},"1255":{},"1489":{},"1531":{},"1580":{}},"parent":{}}],["collisionfilter",{"_index":547,"name":{"1471":{}},"parent":{}}],["collisionresponsetype",{"_index":824,"name":{"2126":{}},"parent":{}}],["collisionstate",{"_index":563,"name":{"1550":{}},"parent":{}}],["color",{"_index":423,"name":{"1234":{},"1698":{},"1699":{},"1706":{},"1778":{}},"parent":{}}],["cols",{"_index":467,"name":{"1365":{},"1915":{}},"parent":{}}],["config",{"_index":5,"name":{"4":{},"78":{},"134":{},"353":{},"1038":{},"2083":{},"2132":{},"2178":{},"2255":{},"2289":{},"2298":{},"2318":{}},"parent":{}}],["connectionbase",{"_index":950,"name":{"2310":{}},"parent":{}}],["connectionbasevalue",{"_index":956,"name":{"2314":{}},"parent":{}}],["connections",{"_index":57,"name":{"74":{},"80":{},"2320":{}},"parent":{}}],["connectloop",{"_index":63,"name":{"83":{}},"parent":{}}],["connectto",{"_index":62,"name":{"82":{}},"parent":{}}],["conntype",{"_index":955,"name":{"2313":{}},"parent":{}}],["constructor",{"_index":2,"name":{"2":{},"35":{},"42":{},"69":{},"77":{},"88":{},"133":{},"162":{},"175":{},"195":{},"217":{},"241":{},"352":{},"393":{},"453":{},"513":{},"573":{},"637":{},"667":{},"727":{},"787":{},"852":{},"916":{},"976":{},"1036":{},"1099":{},"1159":{},"1179":{},"1186":{},"1199":{},"1213":{},"1222":{},"1233":{},"1296":{},"1317":{},"1330":{},"1337":{},"1346":{},"1360":{},"1391":{},"1437":{},"1446":{},"1459":{},"1470":{},"1529":{},"1537":{},"1569":{},"1621":{},"1633":{},"1655":{},"1710":{},"1719":{},"1824":{},"1845":{},"1863":{},"1877":{},"1897":{},"1911":{}},"parent":{}}],["context_lost",{"_index":203,"name":{"284":{},"326":{}},"parent":{}}],["context_restored",{"_index":204,"name":{"285":{},"327":{}},"parent":{}}],["convert",{"_index":666,"name":{"1787":{}},"parent":{}}],["copy",{"_index":620,"name":{"1691":{}},"parent":{}}],["core/animation/animation",{"_index":0,"name":{"0":{}},"parent":{"1":{}}}],["core/animation/animation.animation",{"_index":3,"name":{},"parent":{"2":{},"3":{},"4":{},"5":{},"6":{},"7":{},"8":{},"9":{},"10":{},"11":{},"12":{},"13":{},"14":{},"15":{},"16":{},"17":{},"18":{},"19":{},"20":{},"21":{},"22":{},"23":{},"24":{},"25":{},"26":{},"27":{},"28":{},"29":{},"30":{},"31":{},"32":{}}}],["core/animation/animationframe",{"_index":34,"name":{"33":{}},"parent":{"34":{}}}],["core/animation/animationframe.animationframe",{"_index":36,"name":{},"parent":{"35":{},"36":{},"37":{},"38":{},"39":{}}}],["core/animation/animationmanager",{"_index":40,"name":{"40":{}},"parent":{"41":{}}}],["core/animation/animationmanager.animationmanager",{"_index":42,"name":{},"parent":{"42":{},"43":{},"44":{},"45":{},"46":{},"47":{},"48":{},"49":{},"50":{},"51":{},"52":{},"53":{},"54":{},"55":{},"56":{},"57":{},"58":{},"59":{},"60":{},"61":{},"62":{},"63":{},"64":{},"65":{},"66":{}}}],["core/animation/animationstate",{"_index":52,"name":{"67":{}},"parent":{"68":{}}}],["core/animation/animationstate.animationstate",{"_index":54,"name":{},"parent":{"69":{},"70":{},"71":{},"72":{},"73":{},"74":{}}}],["core/animation/statemachine",{"_index":58,"name":{"75":{}},"parent":{"76":{}}}],["core/animation/statemachine.statemachine",{"_index":60,"name":{},"parent":{"77":{},"78":{},"79":{},"80":{},"81":{},"82":{},"83":{},"84":{},"85":{}}}],["core/camera/camera",{"_index":66,"name":{"86":{}},"parent":{"87":{}}}],["core/camera/camera.camera",{"_index":68,"name":{},"parent":{"88":{},"89":{},"90":{},"91":{},"92":{},"93":{},"94":{},"95":{},"103":{},"104":{},"105":{},"106":{},"107":{},"108":{},"109":{},"110":{},"111":{},"112":{},"113":{},"114":{},"115":{},"116":{},"117":{},"118":{},"119":{},"120":{},"121":{},"122":{},"123":{},"124":{},"125":{},"126":{},"127":{},"128":{},"129":{},"130":{}}}],["core/camera/camera.camera.__type",{"_index":75,"name":{},"parent":{"96":{},"97":{},"98":{},"99":{},"100":{},"101":{},"102":{}}}],["core/cutscene/cutscene",{"_index":110,"name":{"131":{}},"parent":{"132":{}}}],["core/cutscene/cutscene.cutscene",{"_index":112,"name":{},"parent":{"133":{},"134":{},"135":{},"136":{},"137":{},"138":{},"139":{},"140":{},"141":{},"142":{},"143":{},"144":{},"145":{},"146":{},"147":{},"148":{},"149":{},"150":{},"151":{}}}],["core/debug/debug",{"_index":127,"name":{"152":{}},"parent":{"153":{}}}],["core/debug/debug.debug",{"_index":129,"name":{},"parent":{"154":{}}}],["core/debug/debug.debug.__type",{"_index":131,"name":{},"parent":{"155":{},"156":{},"157":{},"158":{},"159":{}}}],["core/display/displaymanager",{"_index":135,"name":{"160":{}},"parent":{"161":{}}}],["core/display/displaymanager.displaymanager",{"_index":137,"name":{},"parent":{"162":{},"163":{},"164":{},"165":{},"166":{},"167":{},"168":{},"169":{},"170":{},"171":{},"172":{}}}],["core/effect/effect",{"_index":146,"name":{"173":{}},"parent":{"174":{}}}],["core/effect/effect.effect",{"_index":148,"name":{},"parent":{"175":{},"176":{},"177":{},"178":{},"179":{},"180":{},"181":{},"182":{},"183":{},"184":{},"185":{},"186":{},"187":{},"188":{},"189":{},"190":{},"191":{},"192":{}}}],["core/effect/preset/explosion",{"_index":163,"name":{"193":{}},"parent":{"194":{}}}],["core/effect/preset/explosion.explosioneffect",{"_index":165,"name":{},"parent":{"195":{},"196":{},"197":{},"198":{},"199":{},"200":{},"201":{},"202":{},"203":{},"204":{},"205":{},"206":{},"207":{},"208":{},"209":{},"210":{},"211":{},"212":{},"213":{},"214":{}}}],["core/effect/preset/smoke",{"_index":168,"name":{"215":{}},"parent":{"216":{}}}],["core/effect/preset/smoke.smokeeffect",{"_index":170,"name":{},"parent":{"217":{},"218":{},"219":{},"220":{},"221":{},"222":{},"223":{},"224":{},"225":{},"226":{},"227":{},"228":{},"229":{},"230":{},"231":{},"232":{},"233":{},"234":{},"235":{},"236":{},"237":{},"238":{}}}],["core/events/eventemitter",{"_index":174,"name":{"239":{}},"parent":{"240":{}}}],["core/events/eventemitter.eventemitter",{"_index":175,"name":{},"parent":{"241":{},"242":{},"243":{},"244":{},"245":{},"246":{}}}],["core/events/events",{"_index":177,"name":{"247":{}},"parent":{"248":{}}}],["core/events/events.events",{"_index":179,"name":{},"parent":{"249":{}}}],["core/events/events.events.__type",{"_index":181,"name":{},"parent":{"250":{},"251":{},"255":{},"256":{},"259":{},"260":{},"264":{},"265":{},"286":{},"287":{},"290":{},"291":{}}}],["core/events/events.events.__type.__type",{"_index":183,"name":{},"parent":{"252":{},"253":{},"254":{},"257":{},"258":{},"261":{},"262":{},"263":{},"266":{},"267":{},"268":{},"269":{},"270":{},"271":{},"272":{},"273":{},"274":{},"275":{},"276":{},"277":{},"278":{},"279":{},"280":{},"281":{},"282":{},"283":{},"284":{},"285":{},"288":{},"289":{},"292":{},"293":{},"294":{},"295":{},"296":{}}}],["core/events/main/displayevents",{"_index":208,"name":{"297":{}},"parent":{"298":{}}}],["core/events/main/displayevents.displayevents",{"_index":210,"name":{},"parent":{"299":{}}}],["core/events/main/displayevents.displayevents.__type",{"_index":211,"name":{},"parent":{"300":{},"301":{},"302":{},"303":{},"304":{}}}],["core/events/main/gameevents",{"_index":212,"name":{"305":{}},"parent":{"306":{}}}],["core/events/main/gameevents.gameevents",{"_index":214,"name":{},"parent":{"307":{}}}],["core/events/main/gameevents.gameevents.__type",{"_index":215,"name":{},"parent":{"308":{},"309":{},"310":{},"311":{},"312":{},"313":{},"314":{},"315":{},"316":{},"317":{},"318":{},"319":{},"320":{},"321":{},"322":{},"323":{},"324":{},"325":{},"326":{},"327":{}}}],["core/events/main/rendererevents",{"_index":216,"name":{"328":{}},"parent":{"329":{}}}],["core/events/main/rendererevents.rendererevents",{"_index":218,"name":{},"parent":{"330":{}}}],["core/events/main/rendererevents.rendererevents.__type",{"_index":219,"name":{},"parent":{"331":{},"332":{}}}],["core/events/other/buttonevents",{"_index":220,"name":{"333":{}},"parent":{"334":{}}}],["core/events/other/buttonevents.buttonevents",{"_index":222,"name":{},"parent":{"335":{}}}],["core/events/other/buttonevents.buttonevents.__type",{"_index":223,"name":{},"parent":{"336":{},"337":{},"338":{}}}],["core/events/other/cutsceneevents",{"_index":224,"name":{"339":{}},"parent":{"340":{}}}],["core/events/other/cutsceneevents.cutsceneevents",{"_index":226,"name":{},"parent":{"341":{}}}],["core/events/other/cutsceneevents.cutsceneevents.__type",{"_index":227,"name":{},"parent":{"342":{},"343":{},"344":{}}}],["core/events/other/groupevents",{"_index":228,"name":{"345":{}},"parent":{"346":{}}}],["core/events/other/groupevents.groupevents",{"_index":230,"name":{},"parent":{"347":{}}}],["core/events/other/groupevents.groupevents.__type",{"_index":231,"name":{},"parent":{"348":{},"349":{}}}],["core/game",{"_index":232,"name":{"350":{}},"parent":{"351":{}}}],["core/game.game",{"_index":233,"name":{},"parent":{"352":{},"353":{},"354":{},"355":{},"356":{},"357":{},"358":{},"359":{},"360":{},"361":{},"362":{},"363":{},"364":{},"365":{},"366":{},"367":{},"368":{},"369":{},"372":{},"373":{},"374":{},"375":{},"376":{},"377":{},"378":{},"379":{},"380":{},"381":{},"382":{},"383":{},"384":{},"385":{},"386":{},"387":{},"388":{},"389":{},"390":{}}}],["core/game.game.__type",{"_index":246,"name":{},"parent":{"370":{},"371":{}}}],["core/gameobjects/circle",{"_index":261,"name":{"391":{}},"parent":{"392":{}}}],["core/gameobjects/circle.circle",{"_index":263,"name":{},"parent":{"393":{},"394":{},"395":{},"396":{},"397":{},"398":{},"399":{},"400":{},"401":{},"402":{},"403":{},"404":{},"405":{},"406":{},"407":{},"408":{},"409":{},"410":{},"411":{},"412":{},"413":{},"414":{},"415":{},"416":{},"417":{},"418":{},"419":{},"420":{},"421":{},"425":{},"426":{},"427":{},"428":{},"429":{},"430":{},"431":{},"432":{},"433":{},"434":{},"435":{},"436":{},"437":{},"438":{},"439":{},"440":{},"441":{},"442":{},"443":{},"444":{},"445":{},"446":{},"447":{},"448":{},"449":{},"450":{}}}],["core/gameobjects/circle.circle.__type",{"_index":280,"name":{},"parent":{"422":{},"423":{},"424":{}}}],["core/gameobjects/gameobject",{"_index":308,"name":{"451":{}},"parent":{"452":{}}}],["core/gameobjects/gameobject.gameobject",{"_index":310,"name":{},"parent":{"453":{},"454":{},"455":{},"456":{},"457":{},"458":{},"459":{},"460":{},"461":{},"462":{},"463":{},"464":{},"465":{},"466":{},"467":{},"468":{},"469":{},"470":{},"471":{},"472":{},"473":{},"474":{},"475":{},"476":{},"477":{},"478":{},"479":{},"480":{},"481":{},"485":{},"486":{},"487":{},"488":{},"489":{},"490":{},"491":{},"492":{},"493":{},"494":{},"495":{},"496":{},"497":{},"498":{},"499":{},"500":{},"501":{},"502":{},"503":{},"504":{},"505":{},"506":{},"507":{},"508":{},"509":{},"510":{}}}],["core/gameobjects/gameobject.gameobject.__type",{"_index":311,"name":{},"parent":{"482":{},"483":{},"484":{}}}],["core/gameobjects/misc/canvasmodulate",{"_index":312,"name":{"511":{}},"parent":{"512":{}}}],["core/gameobjects/misc/canvasmodulate.canvasmodulate",{"_index":314,"name":{},"parent":{"513":{},"514":{},"515":{},"516":{},"517":{},"518":{},"519":{},"520":{},"521":{},"522":{},"523":{},"524":{},"525":{},"526":{},"527":{},"528":{},"529":{},"530":{},"531":{},"532":{},"533":{},"534":{},"535":{},"536":{},"537":{},"538":{},"539":{},"540":{},"541":{},"545":{},"546":{},"547":{},"548":{},"549":{},"550":{},"551":{},"552":{},"553":{},"554":{},"555":{},"556":{},"557":{},"558":{},"559":{},"560":{},"561":{},"562":{},"563":{},"564":{},"565":{},"566":{},"567":{},"568":{},"569":{},"570":{}}}],["core/gameobjects/misc/canvasmodulate.canvasmodulate.__type",{"_index":315,"name":{},"parent":{"542":{},"543":{},"544":{}}}],["core/gameobjects/particles/particle",{"_index":316,"name":{"571":{}},"parent":{"572":{}}}],["core/gameobjects/particles/particle.particle",{"_index":318,"name":{},"parent":{"573":{},"574":{},"575":{},"576":{},"577":{},"578":{},"579":{},"580":{},"581":{},"582":{},"583":{},"584":{},"585":{},"586":{},"587":{},"588":{},"589":{},"590":{},"591":{},"592":{},"593":{},"594":{},"595":{},"596":{},"597":{},"598":{},"599":{},"600":{},"601":{},"602":{},"603":{},"604":{},"605":{},"606":{},"610":{},"611":{},"612":{},"613":{},"614":{},"615":{},"616":{},"617":{},"618":{},"619":{},"620":{},"621":{},"622":{},"623":{},"624":{},"625":{},"626":{},"627":{},"628":{},"629":{},"630":{},"631":{},"632":{},"633":{},"634":{}}}],["core/gameobjects/particles/particle.particle.__type",{"_index":323,"name":{},"parent":{"607":{},"608":{},"609":{}}}],["core/gameobjects/particles/particleemitter",{"_index":324,"name":{"635":{}},"parent":{"636":{}}}],["core/gameobjects/particles/particleemitter.particleemitter",{"_index":325,"name":{},"parent":{"637":{},"638":{},"639":{},"640":{},"641":{},"642":{},"643":{},"644":{},"645":{},"646":{},"647":{},"648":{},"649":{},"650":{},"651":{},"652":{},"653":{},"654":{},"655":{},"656":{},"657":{},"658":{},"659":{},"660":{},"661":{},"662":{},"663":{},"664":{}}}],["core/gameobjects/rect",{"_index":340,"name":{"665":{}},"parent":{"666":{}}}],["core/gameobjects/rect.rect",{"_index":342,"name":{},"parent":{"667":{},"668":{},"669":{},"670":{},"671":{},"672":{},"673":{},"674":{},"675":{},"676":{},"677":{},"678":{},"679":{},"680":{},"681":{},"682":{},"683":{},"684":{},"685":{},"686":{},"687":{},"688":{},"689":{},"690":{},"691":{},"692":{},"693":{},"694":{},"695":{},"699":{},"700":{},"701":{},"702":{},"703":{},"704":{},"705":{},"706":{},"707":{},"708":{},"709":{},"710":{},"711":{},"712":{},"713":{},"714":{},"715":{},"716":{},"717":{},"718":{},"719":{},"720":{},"721":{},"722":{},"723":{},"724":{}}}],["core/gameobjects/rect.rect.__type",{"_index":343,"name":{},"parent":{"696":{},"697":{},"698":{}}}],["core/gameobjects/roundrect",{"_index":344,"name":{"725":{}},"parent":{"726":{}}}],["core/gameobjects/roundrect.roundrect",{"_index":346,"name":{},"parent":{"727":{},"728":{},"729":{},"730":{},"731":{},"732":{},"733":{},"734":{},"735":{},"736":{},"737":{},"738":{},"739":{},"740":{},"741":{},"742":{},"743":{},"744":{},"745":{},"746":{},"747":{},"748":{},"749":{},"750":{},"751":{},"752":{},"753":{},"754":{},"755":{},"759":{},"760":{},"761":{},"762":{},"763":{},"764":{},"765":{},"766":{},"767":{},"768":{},"769":{},"770":{},"771":{},"772":{},"773":{},"774":{},"775":{},"776":{},"777":{},"778":{},"779":{},"780":{},"781":{},"782":{},"783":{},"784":{}}}],["core/gameobjects/roundrect.roundrect.__type",{"_index":347,"name":{},"parent":{"756":{},"757":{},"758":{}}}],["core/gameobjects/sprite",{"_index":348,"name":{"785":{}},"parent":{"786":{}}}],["core/gameobjects/sprite.sprite",{"_index":349,"name":{},"parent":{"787":{},"788":{},"789":{},"790":{},"791":{},"792":{},"793":{},"794":{},"795":{},"796":{},"797":{},"798":{},"799":{},"800":{},"801":{},"802":{},"803":{},"804":{},"805":{},"806":{},"807":{},"808":{},"809":{},"810":{},"811":{},"812":{},"813":{},"814":{},"815":{},"816":{},"817":{},"818":{},"819":{},"820":{},"824":{},"825":{},"826":{},"827":{},"828":{},"829":{},"830":{},"831":{},"832":{},"833":{},"834":{},"835":{},"836":{},"837":{},"838":{},"839":{},"840":{},"841":{},"842":{},"843":{},"844":{},"845":{},"846":{},"847":{},"848":{},"849":{}}}],["core/gameobjects/sprite.sprite.__type",{"_index":354,"name":{},"parent":{"821":{},"822":{},"823":{}}}],["core/gameobjects/ui/button",{"_index":355,"name":{"850":{}},"parent":{"851":{}}}],["core/gameobjects/ui/button.button",{"_index":356,"name":{},"parent":{"852":{},"853":{},"854":{},"855":{},"856":{},"857":{},"858":{},"859":{},"860":{},"861":{},"862":{},"863":{},"864":{},"865":{},"866":{},"867":{},"868":{},"869":{},"870":{},"871":{},"872":{},"873":{},"874":{},"875":{},"876":{},"877":{},"878":{},"879":{},"880":{},"881":{},"882":{},"883":{},"884":{},"888":{},"889":{},"890":{},"891":{},"892":{},"893":{},"894":{},"895":{},"896":{},"897":{},"898":{},"899":{},"900":{},"901":{},"902":{},"903":{},"904":{},"905":{},"906":{},"907":{},"908":{},"909":{},"910":{},"911":{},"912":{},"913":{}}}],["core/gameobjects/ui/button.button.__type",{"_index":359,"name":{},"parent":{"885":{},"886":{},"887":{}}}],["core/gameobjects/ui/imagerect",{"_index":360,"name":{"914":{}},"parent":{"915":{}}}],["core/gameobjects/ui/imagerect.imagerect",{"_index":362,"name":{},"parent":{"916":{},"917":{},"918":{},"919":{},"920":{},"921":{},"922":{},"923":{},"924":{},"925":{},"926":{},"927":{},"928":{},"929":{},"930":{},"931":{},"932":{},"933":{},"934":{},"935":{},"936":{},"937":{},"938":{},"939":{},"940":{},"941":{},"942":{},"943":{},"944":{},"948":{},"949":{},"950":{},"951":{},"952":{},"953":{},"954":{},"955":{},"956":{},"957":{},"958":{},"959":{},"960":{},"961":{},"962":{},"963":{},"964":{},"965":{},"966":{},"967":{},"968":{},"969":{},"970":{},"971":{},"972":{},"973":{}}}],["core/gameobjects/ui/imagerect.imagerect.__type",{"_index":363,"name":{},"parent":{"945":{},"946":{},"947":{}}}],["core/gameobjects/ui/panel",{"_index":364,"name":{"974":{}},"parent":{"975":{}}}],["core/gameobjects/ui/panel.panel",{"_index":366,"name":{},"parent":{"976":{},"977":{},"978":{},"979":{},"980":{},"981":{},"982":{},"983":{},"984":{},"985":{},"986":{},"987":{},"988":{},"989":{},"990":{},"991":{},"992":{},"993":{},"994":{},"995":{},"996":{},"997":{},"998":{},"999":{},"1000":{},"1001":{},"1002":{},"1003":{},"1004":{},"1008":{},"1009":{},"1010":{},"1011":{},"1012":{},"1013":{},"1014":{},"1015":{},"1016":{},"1017":{},"1018":{},"1019":{},"1020":{},"1021":{},"1022":{},"1023":{},"1024":{},"1025":{},"1026":{},"1027":{},"1028":{},"1029":{},"1030":{},"1031":{},"1032":{},"1033":{}}}],["core/gameobjects/ui/panel.panel.__type",{"_index":367,"name":{},"parent":{"1005":{},"1006":{},"1007":{}}}],["core/gameobjects/ui/text",{"_index":368,"name":{"1034":{}},"parent":{"1035":{}}}],["core/gameobjects/ui/text.text",{"_index":369,"name":{},"parent":{"1036":{},"1037":{},"1038":{},"1039":{},"1040":{},"1041":{},"1042":{},"1043":{},"1044":{},"1045":{},"1046":{},"1047":{},"1048":{},"1049":{},"1050":{},"1051":{},"1052":{},"1053":{},"1054":{},"1055":{},"1056":{},"1057":{},"1058":{},"1059":{},"1060":{},"1061":{},"1062":{},"1063":{},"1064":{},"1065":{},"1066":{},"1067":{},"1071":{},"1072":{},"1073":{},"1074":{},"1075":{},"1076":{},"1077":{},"1078":{},"1079":{},"1080":{},"1081":{},"1082":{},"1083":{},"1084":{},"1085":{},"1086":{},"1087":{},"1088":{},"1089":{},"1090":{},"1091":{},"1092":{},"1093":{},"1094":{},"1095":{},"1096":{}}}],["core/gameobjects/ui/text.text.__type",{"_index":371,"name":{},"parent":{"1068":{},"1069":{},"1070":{}}}],["core/gameobjects/ui/ui",{"_index":372,"name":{"1097":{}},"parent":{"1098":{}}}],["core/gameobjects/ui/ui.ui",{"_index":374,"name":{},"parent":{"1099":{},"1100":{},"1101":{},"1102":{},"1103":{},"1104":{},"1105":{},"1106":{},"1107":{},"1108":{},"1109":{},"1110":{},"1111":{},"1112":{},"1113":{},"1114":{},"1115":{},"1116":{},"1117":{},"1118":{},"1119":{},"1120":{},"1121":{},"1122":{},"1123":{},"1124":{},"1125":{},"1126":{},"1127":{},"1131":{},"1132":{},"1133":{},"1134":{},"1135":{},"1136":{},"1137":{},"1138":{},"1139":{},"1140":{},"1141":{},"1142":{},"1143":{},"1144":{},"1145":{},"1146":{},"1147":{},"1148":{},"1149":{},"1150":{},"1151":{},"1152":{},"1153":{},"1154":{},"1155":{},"1156":{}}}],["core/gameobjects/ui/ui.ui.__type",{"_index":375,"name":{},"parent":{"1128":{},"1129":{},"1130":{}}}],["core/group/group",{"_index":376,"name":{"1157":{}},"parent":{"1158":{}}}],["core/group/group.group",{"_index":377,"name":{},"parent":{"1159":{},"1160":{},"1161":{},"1162":{},"1163":{},"1164":{},"1165":{},"1166":{},"1167":{},"1168":{},"1169":{},"1170":{},"1171":{},"1172":{},"1173":{},"1174":{},"1175":{},"1176":{}}}],["core/input/input",{"_index":388,"name":{"1177":{}},"parent":{"1178":{}}}],["core/input/input.input",{"_index":390,"name":{},"parent":{"1179":{},"1180":{},"1181":{},"1182":{},"1183":{}}}],["core/input/keyboardinput",{"_index":393,"name":{"1184":{}},"parent":{"1185":{}}}],["core/input/keyboardinput.keyboardinput",{"_index":395,"name":{},"parent":{"1186":{},"1187":{},"1188":{},"1189":{},"1190":{},"1191":{},"1192":{},"1193":{},"1194":{},"1195":{},"1196":{}}}],["core/input/models/key",{"_index":402,"name":{"1197":{}},"parent":{"1198":{}}}],["core/input/models/key.key",{"_index":403,"name":{},"parent":{"1199":{},"1200":{},"1201":{},"1202":{},"1203":{},"1204":{},"1205":{},"1206":{},"1207":{},"1208":{},"1209":{},"1210":{}}}],["core/input/models/mouse",{"_index":411,"name":{"1211":{}},"parent":{"1212":{}}}],["core/input/models/mouse.mouse",{"_index":413,"name":{},"parent":{"1213":{},"1214":{},"1215":{},"1216":{},"1217":{},"1218":{},"1219":{}}}],["core/input/mouseinput",{"_index":415,"name":{"1220":{}},"parent":{"1221":{}}}],["core/input/mouseinput.mouseinput",{"_index":416,"name":{},"parent":{"1222":{},"1223":{},"1224":{},"1225":{},"1226":{},"1227":{},"1228":{},"1229":{},"1230":{}}}],["core/lights/staticlight",{"_index":420,"name":{"1231":{}},"parent":{"1232":{}}}],["core/lights/staticlight.staticlight",{"_index":422,"name":{},"parent":{"1233":{},"1234":{},"1235":{},"1236":{},"1237":{},"1238":{},"1239":{},"1240":{},"1241":{},"1242":{},"1243":{},"1244":{},"1245":{},"1246":{},"1247":{},"1248":{},"1249":{},"1250":{},"1251":{},"1252":{},"1253":{},"1254":{},"1255":{},"1256":{},"1257":{},"1258":{},"1259":{},"1260":{},"1261":{},"1262":{},"1263":{},"1264":{},"1268":{},"1269":{},"1270":{},"1271":{},"1272":{},"1273":{},"1274":{},"1275":{},"1276":{},"1277":{},"1278":{},"1279":{},"1280":{},"1281":{},"1282":{},"1283":{},"1284":{},"1285":{},"1286":{},"1287":{},"1288":{},"1289":{},"1290":{},"1291":{},"1292":{},"1293":{}}}],["core/lights/staticlight.staticlight.__type",{"_index":426,"name":{},"parent":{"1265":{},"1266":{},"1267":{}}}],["core/loader/loader",{"_index":427,"name":{"1294":{}},"parent":{"1295":{}}}],["core/loader/loader.loader",{"_index":429,"name":{},"parent":{"1296":{},"1297":{},"1298":{},"1299":{},"1300":{},"1301":{},"1302":{},"1303":{},"1304":{},"1305":{},"1306":{},"1307":{},"1308":{},"1309":{},"1310":{},"1311":{},"1312":{},"1313":{},"1314":{}}}],["core/map/map",{"_index":446,"name":{"1315":{}},"parent":{"1316":{}}}],["core/map/map.map",{"_index":448,"name":{},"parent":{"1317":{},"1318":{},"1319":{},"1320":{},"1321":{},"1322":{},"1323":{},"1324":{},"1325":{},"1326":{},"1327":{}}}],["core/map/tile",{"_index":451,"name":{"1328":{}},"parent":{"1329":{}}}],["core/map/tile.tile",{"_index":453,"name":{},"parent":{"1330":{},"1331":{},"1332":{},"1333":{},"1334":{}}}],["core/map/tilelayer",{"_index":454,"name":{"1335":{}},"parent":{"1336":{}}}],["core/map/tilelayer.tilelayer",{"_index":456,"name":{},"parent":{"1337":{},"1338":{},"1339":{},"1340":{},"1341":{},"1342":{},"1343":{}}}],["core/map/tilemap",{"_index":458,"name":{"1344":{}},"parent":{"1345":{}}}],["core/map/tilemap.tilemap",{"_index":460,"name":{},"parent":{"1346":{},"1347":{},"1348":{},"1349":{},"1350":{},"1351":{},"1352":{},"1353":{},"1354":{},"1355":{},"1356":{},"1357":{}}}],["core/map/tileset",{"_index":462,"name":{"1358":{}},"parent":{"1359":{}}}],["core/map/tileset.tileset",{"_index":463,"name":{},"parent":{"1360":{},"1361":{},"1362":{},"1363":{},"1364":{},"1365":{},"1366":{},"1367":{},"1368":{},"1369":{},"1370":{},"1371":{}}}],["core/math/clamp",{"_index":472,"name":{"1372":{}},"parent":{"1373":{}}}],["core/math/lerp",{"_index":474,"name":{"1374":{}},"parent":{"1375":{}}}],["core/math/randomfloat",{"_index":476,"name":{"1376":{}},"parent":{"1377":{}}}],["core/math/randomint",{"_index":478,"name":{"1378":{}},"parent":{"1379":{}}}],["core/math/vector2",{"_index":480,"name":{"1380":{}},"parent":{"1381":{}}}],["core/math/vector2.vector2",{"_index":483,"name":{},"parent":{"1382":{},"1383":{},"1384":{},"1385":{},"1386":{},"1387":{},"1388":{},"1389":{},"1390":{},"1391":{},"1392":{},"1393":{},"1394":{},"1395":{},"1396":{},"1397":{},"1398":{},"1399":{},"1400":{},"1401":{},"1402":{},"1403":{},"1404":{},"1405":{},"1406":{},"1407":{},"1408":{},"1409":{},"1410":{},"1411":{},"1412":{},"1413":{},"1414":{},"1415":{},"1416":{},"1417":{},"1418":{},"1419":{},"1420":{},"1421":{},"1422":{},"1423":{},"1424":{},"1425":{},"1426":{},"1427":{},"1428":{},"1429":{},"1430":{},"1431":{},"1432":{},"1433":{},"1434":{}}}],["core/misc/pluginmanager",{"_index":528,"name":{"1435":{}},"parent":{"1436":{}}}],["core/misc/pluginmanager.pluginmanager",{"_index":529,"name":{},"parent":{"1437":{},"1438":{},"1439":{},"1440":{},"1441":{},"1442":{},"1443":{}}}],["core/models/displaylist",{"_index":534,"name":{"1444":{}},"parent":{"1445":{}}}],["core/models/displaylist.displaylist",{"_index":536,"name":{},"parent":{"1446":{},"1447":{},"1448":{},"1449":{},"1450":{},"1451":{},"1452":{},"1453":{},"1454":{},"1455":{},"1456":{}}}],["core/models/physicslist",{"_index":540,"name":{"1457":{}},"parent":{"1458":{}}}],["core/models/physicslist.physicslist",{"_index":542,"name":{},"parent":{"1459":{},"1460":{},"1461":{},"1462":{},"1463":{},"1464":{},"1465":{},"1466":{},"1467":{}}}],["core/physics/models/area",{"_index":544,"name":{"1468":{}},"parent":{"1469":{}}}],["core/physics/models/area.area",{"_index":546,"name":{},"parent":{"1470":{},"1471":{},"1472":{},"1473":{},"1474":{},"1475":{},"1476":{},"1477":{},"1478":{},"1479":{},"1480":{},"1481":{},"1482":{},"1483":{},"1484":{},"1485":{},"1486":{},"1487":{},"1488":{},"1489":{},"1490":{},"1491":{},"1492":{},"1493":{},"1494":{},"1495":{},"1496":{},"1497":{},"1498":{},"1502":{},"1503":{},"1504":{},"1505":{},"1506":{},"1507":{},"1508":{},"1509":{},"1510":{},"1511":{},"1512":{},"1513":{},"1514":{},"1515":{},"1516":{},"1517":{},"1518":{},"1519":{},"1520":{},"1521":{},"1522":{},"1523":{},"1524":{},"1525":{},"1526":{}}}],["core/physics/models/area.area.__type",{"_index":554,"name":{},"parent":{"1499":{},"1500":{},"1501":{}}}],["core/physics/models/collider",{"_index":555,"name":{"1527":{}},"parent":{"1528":{}}}],["core/physics/models/collider.collider",{"_index":556,"name":{},"parent":{"1529":{},"1530":{},"1531":{},"1532":{},"1533":{},"1534":{}}}],["core/physics/models/hitbox",{"_index":558,"name":{"1535":{}},"parent":{"1536":{}}}],["core/physics/models/hitbox.hitbox",{"_index":559,"name":{},"parent":{"1537":{},"1538":{},"1539":{},"1540":{},"1541":{},"1542":{},"1543":{},"1544":{},"1545":{},"1546":{},"1547":{},"1548":{},"1549":{},"1550":{},"1551":{},"1552":{},"1553":{},"1554":{},"1555":{},"1556":{},"1557":{},"1558":{},"1559":{},"1560":{},"1561":{},"1562":{},"1563":{},"1564":{},"1565":{},"1566":{}}}],["core/physics/physicsbody",{"_index":570,"name":{"1567":{}},"parent":{"1568":{}}}],["core/physics/physicsbody.physicsbody",{"_index":572,"name":{},"parent":{"1569":{},"1570":{},"1571":{},"1572":{},"1573":{},"1574":{},"1575":{},"1576":{},"1577":{},"1578":{},"1579":{},"1580":{},"1581":{},"1582":{},"1583":{},"1584":{},"1585":{},"1586":{},"1587":{},"1588":{},"1589":{},"1593":{},"1594":{},"1595":{},"1596":{},"1597":{},"1598":{},"1599":{},"1600":{},"1601":{},"1602":{},"1603":{},"1604":{},"1605":{},"1606":{},"1607":{},"1608":{},"1609":{},"1610":{},"1611":{},"1612":{},"1613":{},"1614":{},"1615":{},"1616":{},"1617":{},"1618":{}}}],["core/physics/physicsbody.physicsbody.__type",{"_index":573,"name":{},"parent":{"1590":{},"1591":{},"1592":{}}}],["core/physics/server/physicsserver",{"_index":574,"name":{"1619":{}},"parent":{"1620":{}}}],["core/physics/server/physicsserver.physicsserver",{"_index":576,"name":{},"parent":{"1621":{},"1622":{},"1623":{},"1624":{}}}],["core/physics/utils/circletorectintersect",{"_index":578,"name":{"1625":{}},"parent":{"1626":{}}}],["core/physics/utils/hitboxfaceintersect",{"_index":580,"name":{"1627":{}},"parent":{"1628":{}}}],["core/physics/utils/recttorectintersect",{"_index":582,"name":{"1629":{}},"parent":{"1630":{}}}],["core/renderer/baserenderer",{"_index":584,"name":{"1631":{}},"parent":{"1632":{}}}],["core/renderer/baserenderer.baserenderer",{"_index":586,"name":{},"parent":{"1633":{},"1634":{},"1635":{},"1636":{},"1637":{},"1638":{},"1639":{},"1640":{},"1641":{},"1642":{},"1643":{},"1644":{},"1645":{},"1646":{},"1647":{},"1648":{},"1649":{},"1650":{},"1651":{},"1652":{}}}],["core/renderer/canvas/canvasrenderer",{"_index":602,"name":{"1653":{}},"parent":{"1654":{}}}],["core/renderer/canvas/canvasrenderer.canvasrenderer",{"_index":604,"name":{},"parent":{"1655":{},"1656":{},"1657":{},"1658":{},"1659":{},"1660":{},"1661":{},"1662":{},"1663":{},"1664":{},"1665":{},"1666":{},"1667":{},"1668":{},"1669":{},"1670":{},"1671":{},"1672":{},"1673":{},"1674":{},"1675":{},"1676":{},"1677":{},"1678":{}}}],["core/renderer/canvas/const/blendmodes",{"_index":609,"name":{"1679":{}},"parent":{"1680":{}}}],["core/renderer/canvas/const/blendmodes.blendmodes",{"_index":611,"name":{},"parent":{"1681":{}}}],["core/renderer/canvas/const/blendmodes.blendmodes.__type",{"_index":614,"name":{},"parent":{"1682":{},"1683":{},"1684":{},"1685":{},"1686":{},"1687":{},"1688":{},"1689":{},"1690":{},"1691":{},"1692":{},"1693":{},"1694":{},"1695":{},"1696":{},"1697":{},"1698":{},"1699":{},"1700":{},"1701":{},"1702":{},"1703":{},"1704":{},"1705":{},"1706":{},"1707":{}}}],["core/renderer/canvas/pipeline/rendererpipeline",{"_index":636,"name":{"1708":{}},"parent":{"1709":{}}}],["core/renderer/canvas/pipeline/rendererpipeline.rendererpipeline",{"_index":638,"name":{},"parent":{"1710":{},"1711":{},"1712":{},"1713":{},"1714":{},"1715":{},"1716":{}}}],["core/scene",{"_index":644,"name":{"1717":{}},"parent":{"1718":{}}}],["core/scene.scene",{"_index":645,"name":{},"parent":{"1719":{},"1720":{},"1721":{},"1722":{},"1723":{},"1724":{},"1725":{},"1726":{},"1727":{},"1728":{},"1729":{},"1730":{},"1731":{},"1732":{},"1733":{},"1734":{},"1735":{},"1736":{},"1775":{},"1776":{},"1814":{},"1815":{},"1816":{},"1817":{},"1818":{},"1819":{},"1820":{},"1821":{}}}],["core/scene.scene.__type",{"_index":652,"name":{},"parent":{"1737":{},"1738":{},"1747":{},"1748":{},"1750":{},"1751":{},"1754":{},"1755":{},"1756":{},"1757":{},"1758":{},"1759":{},"1761":{},"1762":{},"1763":{},"1764":{},"1765":{},"1766":{},"1770":{},"1771":{},"1772":{},"1777":{},"1778":{},"1779":{},"1802":{},"1803":{},"1806":{},"1807":{}}}],["core/scene.scene.__type.__type",{"_index":654,"name":{},"parent":{"1739":{},"1740":{},"1742":{},"1743":{},"1744":{},"1745":{},"1746":{},"1749":{},"1752":{},"1753":{},"1760":{},"1767":{},"1768":{},"1769":{},"1773":{},"1774":{},"1780":{},"1781":{},"1782":{},"1783":{},"1787":{},"1788":{},"1804":{},"1805":{},"1808":{},"1809":{},"1810":{},"1811":{},"1812":{},"1813":{}}}],["core/scene.scene.__type.__type.__type",{"_index":655,"name":{},"parent":{"1741":{},"1784":{},"1785":{},"1786":{},"1789":{},"1790":{},"1793":{},"1794":{},"1797":{},"1798":{}}}],["core/scene.scene.__type.__type.__type.__type",{"_index":668,"name":{},"parent":{"1791":{},"1792":{},"1795":{},"1796":{},"1799":{},"1800":{},"1801":{}}}],["core/sound/soundplayer",{"_index":682,"name":{"1822":{}},"parent":{"1823":{}}}],["core/sound/soundplayer.soundplayer",{"_index":683,"name":{},"parent":{"1824":{},"1825":{},"1826":{},"1827":{},"1828":{},"1829":{},"1830":{},"1831":{},"1832":{},"1833":{},"1834":{},"1835":{},"1836":{},"1837":{},"1838":{},"1839":{},"1840":{},"1841":{},"1842":{}}}],["core/storage/cachemanager",{"_index":697,"name":{"1843":{}},"parent":{"1844":{}}}],["core/storage/cachemanager.cachemanager",{"_index":698,"name":{},"parent":{"1845":{},"1846":{},"1847":{},"1848":{},"1849":{},"1850":{},"1851":{},"1852":{},"1853":{},"1854":{},"1855":{},"1856":{},"1857":{}}}],["core/texture/texture",{"_index":706,"name":{"1858":{}},"parent":{"1859":{}}}],["core/texture/texture.texture",{"_index":708,"name":{},"parent":{"1860":{},"1861":{},"1862":{},"1863":{},"1864":{},"1865":{},"1866":{},"1867":{},"1868":{},"1869":{},"1870":{},"1871":{}}}],["core/texture/textureatlas",{"_index":713,"name":{"1872":{}},"parent":{"1873":{}}}],["core/texture/textureatlas.textureatlas",{"_index":715,"name":{},"parent":{"1874":{},"1875":{},"1876":{},"1877":{},"1878":{},"1879":{},"1880":{},"1881":{},"1882":{},"1883":{},"1884":{},"1885":{},"1886":{},"1887":{},"1888":{},"1889":{},"1890":{},"1891":{}}}],["core/texture/texturebase",{"_index":719,"name":{"1892":{}},"parent":{"1893":{}}}],["core/texture/texturebase.texturebase",{"_index":721,"name":{},"parent":{"1894":{},"1895":{},"1896":{},"1897":{},"1898":{},"1899":{},"1900":{},"1901":{},"1902":{},"1903":{},"1904":{},"1905":{}}}],["core/texture/texturesheet",{"_index":722,"name":{"1906":{}},"parent":{"1907":{}}}],["core/texture/texturesheet.texturesheet",{"_index":724,"name":{},"parent":{"1908":{},"1909":{},"1910":{},"1911":{},"1912":{},"1913":{},"1914":{},"1915":{},"1916":{},"1917":{},"1918":{},"1919":{},"1920":{},"1921":{},"1922":{},"1923":{}}}],["countby",{"_index":9,"name":{"8":{}},"parent":{}}],["create",{"_index":331,"name":{"650":{},"1387":{}},"parent":{}}],["createframes",{"_index":19,"name":{"18":{}},"parent":{}}],["createkeyboardinput",{"_index":391,"name":{"1182":{}},"parent":{}}],["createmouseinput",{"_index":392,"name":{"1183":{}},"parent":{}}],["createone",{"_index":332,"name":{"651":{}},"parent":{}}],["createstatemachine",{"_index":45,"name":{"48":{}},"parent":{}}],["createtile",{"_index":470,"name":{"1370":{}},"parent":{}}],["createtimer",{"_index":681,"name":{"1821":{}},"parent":{}}],["createvector",{"_index":675,"name":{"1808":{}},"parent":{}}],["crossproduct",{"_index":506,"name":{"1411":{}},"parent":{}}],["ctx",{"_index":605,"name":{"1656":{}},"parent":{}}],["cull",{"_index":106,"name":{"127":{}},"parent":{}}],["culled",{"_index":156,"name":{"184":{},"210":{},"234":{},"398":{},"457":{},"518":{},"583":{},"672":{},"732":{},"799":{},"862":{},"921":{},"981":{},"1044":{},"1103":{},"1241":{},"1326":{},"1357":{},"1549":{},"2081":{}},"parent":{}}],["cullingoptions",{"_index":973,"name":{"2337":{}},"parent":{}}],["currentanimation",{"_index":44,"name":{"47":{}},"parent":{}}],["currentcamera",{"_index":647,"name":{"1724":{}},"parent":{}}],["currentcol",{"_index":351,"name":{"789":{}},"parent":{}}],["currentframe",{"_index":18,"name":{"17":{}},"parent":{}}],["currentindex",{"_index":17,"name":{"16":{}},"parent":{}}],["currentrow",{"_index":350,"name":{"788":{}},"parent":{}}],["currentstate",{"_index":61,"name":{"81":{}},"parent":{}}],["customtick",{"_index":800,"name":{"2094":{}},"parent":{}}],["cutscene",{"_index":111,"name":{"132":{},"259":{},"1764":{},"1952":{},"2019":{},"2213":{}},"parent":{}}],["cutsceneevents",{"_index":225,"name":{"340":{}},"parent":{}}],["d_pad_down",{"_index":848,"name":{"2154":{},"2172":{}},"parent":{}}],["d_pad_left",{"_index":849,"name":{"2155":{},"2173":{}},"parent":{}}],["d_pad_right",{"_index":850,"name":{"2156":{},"2174":{}},"parent":{}}],["d_pad_up",{"_index":847,"name":{"2153":{},"2171":{}},"parent":{}}],["darken",{"_index":624,"name":{"1696":{}},"parent":{}}],["data",{"_index":983,"name":{"2349":{}},"parent":{}}],["datatype",{"_index":712,"name":{"1866":{},"1886":{},"1900":{},"1918":{},"2280":{},"2286":{}},"parent":{}}],["debug",{"_index":128,"name":{"153":{},"2095":{},"2099":{}},"parent":{}}],["debugcolor",{"_index":562,"name":{"1546":{}},"parent":{}}],["debugrendering",{"_index":803,"name":{"2100":{}},"parent":{}}],["default",{"_index":646,"name":{"1722":{}},"parent":{}}],["defaultanim",{"_index":353,"name":{"791":{}},"parent":{}}],["defaultfov",{"_index":109,"name":{"130":{}},"parent":{}}],["defaultscene",{"_index":795,"name":{"2085":{},"2111":{}},"parent":{}}],["defaultstate",{"_index":958,"name":{"2319":{}},"parent":{}}],["defaultzoom",{"_index":108,"name":{"129":{}},"parent":{}}],["delay",{"_index":946,"name":{"2304":{}},"parent":{}}],["delaytimer",{"_index":16,"name":{"15":{}},"parent":{}}],["delete",{"_index":702,"name":{"1852":{}},"parent":{}}],["deltatime",{"_index":237,"name":{"360":{}},"parent":{}}],["deltatimearray",{"_index":236,"name":{"359":{}},"parent":{}}],["depthsort",{"_index":537,"name":{"1451":{}},"parent":{}}],["descriptor",{"_index":405,"name":{"1201":{},"1215":{},"2324":{},"2332":{}},"parent":{}}],["destination",{"_index":618,"name":{"1686":{},"1687":{},"1688":{},"1689":{}},"parent":{}}],["detachchild",{"_index":288,"name":{"431":{},"491":{},"551":{},"615":{},"705":{},"765":{},"830":{},"894":{},"954":{},"1014":{},"1077":{},"1137":{},"1274":{},"1507":{},"1599":{}},"parent":{}}],["detachfrom",{"_index":287,"name":{"430":{},"490":{},"550":{},"614":{},"704":{},"764":{},"829":{},"893":{},"953":{},"1013":{},"1076":{},"1136":{},"1273":{},"1506":{},"1598":{}},"parent":{}}],["difference",{"_index":631,"name":{"1702":{}},"parent":{}}],["display",{"_index":207,"name":{"290":{}},"parent":{}}],["displayevents",{"_index":209,"name":{"298":{}},"parent":{}}],["displaylist",{"_index":535,"name":{"1445":{},"1727":{},"1971":{},"2038":{}},"parent":{}}],["displaymanager",{"_index":136,"name":{"161":{},"377":{}},"parent":{}}],["distance",{"_index":71,"name":{"93":{},"1408":{}},"parent":{}}],["distancesqr",{"_index":504,"name":{"1409":{}},"parent":{}}],["divide",{"_index":498,"name":{"1402":{}},"parent":{}}],["dividenumber",{"_index":499,"name":{"1403":{}},"parent":{}}],["dodge",{"_index":626,"name":{"1698":{}},"parent":{}}],["dot",{"_index":505,"name":{"1410":{}},"parent":{}}],["down",{"_index":485,"name":{"1384":{}},"parent":{}}],["dprscale",{"_index":139,"name":{"166":{},"2107":{}},"parent":{}}],["draw_splash",{"_index":196,"name":{"277":{},"319":{}},"parent":{}}],["drawcircle",{"_index":589,"name":{"1637":{},"1674":{}},"parent":{}}],["drawrect",{"_index":588,"name":{"1636":{},"1673":{}},"parent":{}}],["drawroundrect",{"_index":590,"name":{"1638":{},"1675":{}},"parent":{}}],["drawsplashscreen",{"_index":253,"name":{"382":{}},"parent":{}}],["drawsprite",{"_index":591,"name":{"1639":{},"1676":{}},"parent":{}}],["drawtext",{"_index":597,"name":{"1647":{},"1669":{}},"parent":{}}],["duck",{"_index":727,"name":{"1925":{}},"parent":{}}],["duckengine",{"_index":995,"name":{"2365":{}},"parent":{}}],["duration",{"_index":691,"name":{"1837":{}},"parent":{}}],["each",{"_index":381,"name":{"1167":{},"1453":{},"1463":{},"1856":{}},"parent":{}}],["effect",{"_index":147,"name":{"174":{},"1770":{},"1945":{},"2012":{}},"parent":{}}],["effects",{"_index":738,"name":{"1944":{},"2011":{}},"parent":{}}],["element",{"_index":685,"name":{"1826":{}},"parent":{}}],["emit",{"_index":158,"name":{"187":{},"198":{},"222":{},"246":{},"652":{}},"parent":{}}],["emitfor",{"_index":160,"name":{"189":{},"200":{},"224":{},"654":{}},"parent":{}}],["emitting",{"_index":328,"name":{"646":{}},"parent":{}}],["enabled",{"_index":274,"name":{"416":{},"476":{},"536":{},"601":{},"647":{},"690":{},"750":{},"815":{},"879":{},"939":{},"999":{},"1062":{},"1122":{},"1259":{},"1493":{},"1584":{},"2092":{}},"parent":{}}],["enabledfilter",{"_index":543,"name":{"1464":{}},"parent":{}}],["end",{"_index":89,"name":{"110":{},"262":{},"343":{}},"parent":{}}],["endseconds",{"_index":828,"name":{"2130":{}},"parent":{}}],["entries",{"_index":705,"name":{"1857":{}},"parent":{}}],["equals",{"_index":507,"name":{"1412":{}},"parent":{}}],["error",{"_index":132,"name":{"157":{}},"parent":{}}],["eventemitter",{"_index":138,"name":{"164":{},"240":{},"375":{},"1189":{},"1225":{}},"parent":{}}],["events",{"_index":178,"name":{"248":{}},"parent":{}}],["exclusion",{"_index":632,"name":{"1703":{}},"parent":{}}],["existing",{"_index":656,"name":{"1742":{}},"parent":{}}],["explosioneffect",{"_index":164,"name":{"194":{},"1773":{},"1947":{},"2014":{}},"parent":{}}],["extraduration",{"_index":805,"name":{"2104":{}},"parent":{}}],["fades",{"_index":787,"name":{"2071":{}},"parent":{}}],["fieldofview",{"_index":70,"name":{"92":{}},"parent":{}}],["fillcolor",{"_index":870,"name":{"2187":{}},"parent":{}}],["filter",{"_index":385,"name":{"1171":{},"2202":{}},"parent":{}}],["find",{"_index":379,"name":{"1165":{},"1443":{}},"parent":{}}],["fixedlengtharray",{"_index":992,"name":{"2363":{}},"parent":{}}],["float",{"_index":339,"name":{"662":{}},"parent":{}}],["floatrangex",{"_index":329,"name":{"648":{}},"parent":{}}],["floatrangey",{"_index":330,"name":{"649":{}},"parent":{}}],["floatvelocity",{"_index":319,"name":{"574":{}},"parent":{}}],["focus",{"_index":187,"name":{"266":{},"295":{},"303":{},"308":{},"2087":{}},"parent":{}}],["follow",{"_index":162,"name":{"191":{},"213":{},"237":{},"2245":{}},"parent":{}}],["following",{"_index":85,"name":{"106":{},"185":{},"211":{},"235":{}},"parent":{}}],["followlerpx",{"_index":914,"name":{"2251":{}},"parent":{}}],["followlerpy",{"_index":915,"name":{"2252":{}},"parent":{}}],["fontcss",{"_index":866,"name":{"2184":{}},"parent":{}}],["fontstack",{"_index":434,"name":{"1303":{}},"parent":{}}],["fov",{"_index":910,"name":{"2244":{}},"parent":{}}],["fps",{"_index":241,"name":{"364":{}},"parent":{}}],["framebase",{"_index":948,"name":{"2306":{}},"parent":{}}],["framedata",{"_index":978,"name":{"2341":{}},"parent":{}}],["frameheight",{"_index":726,"name":{"1913":{}},"parent":{}}],["framerate",{"_index":944,"name":{"2301":{}},"parent":{}}],["frames",{"_index":12,"name":{"11":{},"2300":{}},"parent":{}}],["framewidth",{"_index":725,"name":{"1912":{}},"parent":{}}],["from",{"_index":952,"name":{"2311":{}},"parent":{}}],["fromcolor",{"_index":707,"name":{"1860":{},"1874":{},"1894":{},"1908":{}},"parent":{}}],["fromeither",{"_index":710,"name":{"1862":{},"1876":{},"1896":{},"1910":{}},"parent":{}}],["fromtexture",{"_index":709,"name":{"1861":{},"1875":{},"1895":{},"1909":{}},"parent":{}}],["fromvec",{"_index":488,"name":{"1390":{}},"parent":{}}],["fromvector2like",{"_index":486,"name":{"1388":{}},"parent":{}}],["fullscreen",{"_index":144,"name":{"171":{},"293":{},"301":{}},"parent":{}}],["func",{"_index":811,"name":{"2113":{},"2200":{},"2205":{},"2217":{},"2226":{}},"parent":{}}],["game",{"_index":6,"name":{"5":{},"43":{},"89":{},"136":{},"163":{},"181":{},"207":{},"231":{},"264":{},"351":{},"409":{},"469":{},"529":{},"594":{},"644":{},"683":{},"743":{},"808":{},"872":{},"932":{},"992":{},"1055":{},"1115":{},"1161":{},"1180":{},"1187":{},"1202":{},"1216":{},"1223":{},"1252":{},"1297":{},"1322":{},"1340":{},"1353":{},"1366":{},"1447":{},"1486":{},"1532":{},"1543":{},"1577":{},"1622":{},"1634":{},"1678":{},"1711":{},"1723":{},"1878":{},"1928":{},"1995":{},"2079":{},"2082":{},"2367":{}},"parent":{}}],["gameevents",{"_index":213,"name":{"306":{}},"parent":{}}],["gameobject",{"_index":309,"name":{"452":{},"1737":{},"1931":{},"1998":{},"2066":{},"2073":{}},"parent":{}}],["gameobjects",{"_index":732,"name":{"1930":{},"1997":{}},"parent":{}}],["gamepadinput",{"_index":831,"name":{"2137":{}},"parent":{}}],["generatetiles",{"_index":469,"name":{"1369":{}},"parent":{}}],["get",{"_index":49,"name":{"52":{},"1851":{},"1883":{}},"parent":{}}],["getbottom",{"_index":300,"name":{"443":{},"503":{},"563":{},"627":{},"717":{},"777":{},"842":{},"906":{},"966":{},"1026":{},"1089":{},"1149":{},"1286":{},"1519":{},"1561":{},"1611":{}},"parent":{}}],["getcenter",{"_index":303,"name":{"446":{},"506":{},"566":{},"630":{},"720":{},"780":{},"845":{},"909":{},"969":{},"1029":{},"1092":{},"1152":{},"1289":{},"1522":{},"1564":{},"1614":{}},"parent":{}}],["getcenterx",{"_index":305,"name":{"448":{},"508":{},"568":{},"632":{},"722":{},"782":{},"847":{},"911":{},"971":{},"1031":{},"1094":{},"1154":{},"1291":{},"1524":{},"1566":{},"1616":{}},"parent":{}}],["getcentery",{"_index":304,"name":{"447":{},"507":{},"567":{},"631":{},"721":{},"781":{},"846":{},"910":{},"970":{},"1030":{},"1093":{},"1153":{},"1290":{},"1523":{},"1565":{},"1615":{}},"parent":{}}],["getindex",{"_index":50,"name":{"53":{}},"parent":{}}],["getleft",{"_index":301,"name":{"444":{},"504":{},"564":{},"628":{},"718":{},"778":{},"843":{},"907":{},"967":{},"1027":{},"1090":{},"1150":{},"1287":{},"1520":{},"1562":{},"1612":{}},"parent":{}}],["getnormal",{"_index":511,"name":{"1416":{}},"parent":{}}],["getright",{"_index":302,"name":{"445":{},"505":{},"565":{},"629":{},"719":{},"779":{},"844":{},"908":{},"968":{},"1028":{},"1091":{},"1151":{},"1288":{},"1521":{},"1563":{},"1613":{}},"parent":{}}],["gettile",{"_index":471,"name":{"1371":{}},"parent":{}}],["gettop",{"_index":299,"name":{"442":{},"502":{},"562":{},"626":{},"716":{},"776":{},"841":{},"905":{},"965":{},"1025":{},"1088":{},"1148":{},"1285":{},"1518":{},"1560":{},"1610":{}},"parent":{}}],["graphicdebug",{"_index":786,"name":{"2070":{}},"parent":{}}],["gravity",{"_index":799,"name":{"2093":{}},"parent":{}}],["group",{"_index":186,"name":{"255":{},"1158":{},"1175":{},"1761":{},"1951":{},"2018":{},"2201":{}},"parent":{}}],["groupevents",{"_index":229,"name":{"346":{}},"parent":{}}],["groupintersectsfacewith",{"_index":569,"name":{"1559":{}},"parent":{}}],["h",{"_index":80,"name":{"101":{},"406":{},"466":{},"526":{},"591":{},"680":{},"740":{},"805":{},"869":{},"929":{},"989":{},"1052":{},"1112":{},"1249":{},"1334":{},"1483":{},"1542":{},"1574":{},"2270":{},"2346":{},"2359":{}},"parent":{}}],["hard",{"_index":628,"name":{"1700":{}},"parent":{}}],["has",{"_index":703,"name":{"1853":{}},"parent":{}}],["height",{"_index":821,"name":{"2123":{}},"parent":{}}],["helper",{"_index":991,"name":{"2362":{}},"parent":{}}],["hex",{"_index":663,"name":{"1784":{},"1797":{}},"parent":{}}],["hidesplashscreen",{"_index":254,"name":{"383":{}},"parent":{}}],["hitbox",{"_index":272,"name":{"413":{},"473":{},"533":{},"598":{},"687":{},"747":{},"812":{},"876":{},"936":{},"996":{},"1059":{},"1119":{},"1256":{},"1490":{},"1530":{},"1536":{},"1581":{},"1968":{},"2035":{}},"parent":{}}],["hitboxfaceintersect",{"_index":581,"name":{"1628":{}},"parent":{}}],["hover",{"_index":184,"name":{"253":{},"337":{}},"parent":{}}],["hovering",{"_index":358,"name":{"855":{}},"parent":{}}],["hsl",{"_index":664,"name":{"1785":{}},"parent":{}}],["htmlstack",{"_index":432,"name":{"1301":{}},"parent":{}}],["hue",{"_index":633,"name":{"1704":{}},"parent":{}}],["id",{"_index":149,"name":{"176":{},"202":{},"226":{},"402":{},"462":{},"522":{},"587":{},"638":{},"676":{},"736":{},"801":{},"866":{},"925":{},"985":{},"1048":{},"1108":{},"1245":{},"1318":{},"1331":{},"1349":{},"1479":{},"1538":{},"1570":{},"1865":{},"1885":{},"1899":{},"1917":{},"2076":{}},"parent":{}}],["imagerect",{"_index":361,"name":{"915":{}},"parent":{}}],["img",{"_index":804,"name":{"2103":{}},"parent":{}}],["in",{"_index":615,"name":{"1683":{},"1687":{}},"parent":{}}],["index",{"_index":118,"name":{"142":{},"1924":{}},"parent":{"1925":{},"2365":{}}}],["index.duck",{"_index":729,"name":{},"parent":{"1926":{},"1927":{},"1994":{},"2061":{},"2072":{}}}],["index.duck.classes",{"_index":731,"name":{},"parent":{"1928":{},"1929":{},"1930":{},"1944":{},"1949":{},"1955":{},"1959":{},"1961":{},"1963":{},"1970":{},"1974":{},"1977":{},"1979":{},"1981":{},"1988":{}}}],["index.duck.classes.animation",{"_index":758,"name":{},"parent":{"1989":{},"1990":{},"1991":{},"1992":{},"1993":{}}}],["index.duck.classes.base",{"_index":744,"name":{},"parent":{"1956":{},"1957":{},"1958":{}}}],["index.duck.classes.cameras",{"_index":747,"name":{},"parent":{"1962":{}}}],["index.duck.classes.effects",{"_index":739,"name":{},"parent":{"1945":{},"1946":{}}}],["index.duck.classes.effects.presets",{"_index":741,"name":{},"parent":{"1947":{},"1948":{}}}],["index.duck.classes.gameobjects",{"_index":733,"name":{},"parent":{"1931":{},"1932":{},"1933":{},"1934":{},"1935":{},"1936":{},"1939":{},"1942":{}}}],["index.duck.classes.gameobjects.misc",{"_index":737,"name":{},"parent":{"1943":{}}}],["index.duck.classes.gameobjects.particles",{"_index":735,"name":{},"parent":{"1937":{},"1938":{}}}],["index.duck.classes.gameobjects.ui",{"_index":736,"name":{},"parent":{"1940":{},"1941":{}}}],["index.duck.classes.input",{"_index":756,"name":{},"parent":{"1982":{},"1983":{},"1984":{},"1985":{}}}],["index.duck.classes.input.models",{"_index":757,"name":{},"parent":{"1986":{},"1987":{}}}],["index.duck.classes.lights",{"_index":755,"name":{},"parent":{"1980":{}}}],["index.duck.classes.map",{"_index":752,"name":{},"parent":{"1975":{},"1976":{}}}],["index.duck.classes.math",{"_index":753,"name":{},"parent":{"1978":{}}}],["index.duck.classes.misc",{"_index":742,"name":{},"parent":{"1950":{},"1951":{},"1952":{},"1953":{},"1954":{}}}],["index.duck.classes.models",{"_index":751,"name":{},"parent":{"1971":{},"1972":{},"1973":{}}}],["index.duck.classes.physics",{"_index":748,"name":{},"parent":{"1964":{},"1965":{},"1966":{},"1967":{}}}],["index.duck.classes.physics.models",{"_index":750,"name":{},"parent":{"1968":{},"1969":{}}}],["index.duck.classes.sound",{"_index":746,"name":{},"parent":{"1960":{}}}],["index.duck.layers",{"_index":782,"name":{},"parent":{"2062":{}}}],["index.duck.layers.rendering",{"_index":783,"name":{},"parent":{"2063":{}}}],["index.duck.layers.rendering.zindex",{"_index":784,"name":{},"parent":{"2064":{}}}],["index.duck.layers.rendering.zindex.__type",{"_index":785,"name":{},"parent":{"2065":{},"2066":{},"2067":{},"2068":{},"2069":{},"2070":{},"2071":{}}}],["index.duck.typeclasses",{"_index":760,"name":{},"parent":{"1995":{},"1996":{},"1997":{},"2011":{},"2016":{},"2022":{},"2026":{},"2028":{},"2030":{},"2037":{},"2041":{},"2044":{},"2046":{},"2048":{},"2055":{}}}],["index.duck.typeclasses.animation",{"_index":779,"name":{},"parent":{"2056":{},"2057":{},"2058":{},"2059":{},"2060":{}}}],["index.duck.typeclasses.base",{"_index":768,"name":{},"parent":{"2023":{},"2024":{},"2025":{}}}],["index.duck.typeclasses.cameras",{"_index":770,"name":{},"parent":{"2029":{}}}],["index.duck.typeclasses.effects",{"_index":765,"name":{},"parent":{"2012":{},"2013":{}}}],["index.duck.typeclasses.effects.presets",{"_index":766,"name":{},"parent":{"2014":{},"2015":{}}}],["index.duck.typeclasses.gameobjects",{"_index":761,"name":{},"parent":{"1998":{},"1999":{},"2000":{},"2001":{},"2002":{},"2003":{},"2006":{},"2009":{}}}],["index.duck.typeclasses.gameobjects.misc",{"_index":764,"name":{},"parent":{"2010":{}}}],["index.duck.typeclasses.gameobjects.particles",{"_index":762,"name":{},"parent":{"2004":{},"2005":{}}}],["index.duck.typeclasses.gameobjects.ui",{"_index":763,"name":{},"parent":{"2007":{},"2008":{}}}],["index.duck.typeclasses.input",{"_index":777,"name":{},"parent":{"2049":{},"2050":{},"2051":{},"2052":{}}}],["index.duck.typeclasses.input.models",{"_index":778,"name":{},"parent":{"2053":{},"2054":{}}}],["index.duck.typeclasses.lights",{"_index":776,"name":{},"parent":{"2047":{}}}],["index.duck.typeclasses.map",{"_index":774,"name":{},"parent":{"2042":{},"2043":{}}}],["index.duck.typeclasses.math",{"_index":775,"name":{},"parent":{"2045":{}}}],["index.duck.typeclasses.misc",{"_index":767,"name":{},"parent":{"2017":{},"2018":{},"2019":{},"2020":{},"2021":{}}}],["index.duck.typeclasses.models",{"_index":773,"name":{},"parent":{"2038":{},"2039":{},"2040":{}}}],["index.duck.typeclasses.physics",{"_index":771,"name":{},"parent":{"2031":{},"2032":{},"2033":{},"2034":{}}}],["index.duck.typeclasses.physics.models",{"_index":772,"name":{},"parent":{"2035":{},"2036":{}}}],["index.duck.typeclasses.sound",{"_index":769,"name":{},"parent":{"2027":{}}}],["index.duck.types",{"_index":789,"name":{},"parent":{"2073":{},"2074":{},"2075":{},"2082":{},"2116":{},"2120":{},"2124":{},"2127":{},"2137":{},"2176":{},"2201":{},"2207":{},"2213":{},"2260":{},"2263":{},"2273":{},"2284":{},"2287":{},"2297":{},"2309":{},"2321":{},"2329":{},"2336":{},"2340":{},"2350":{},"2362":{}}}],["index.duck.types.animation",{"_index":942,"name":{},"parent":{"2298":{},"2306":{}}}],["index.duck.types.animation.config",{"_index":943,"name":{},"parent":{"2299":{},"2300":{},"2301":{},"2302":{},"2303":{},"2304":{},"2305":{}}}],["index.duck.types.animation.framebase",{"_index":949,"name":{},"parent":{"2307":{},"2308":{}}}],["index.duck.types.camera",{"_index":974,"name":{},"parent":{"2337":{}}}],["index.duck.types.camera.cullingoptions",{"_index":976,"name":{},"parent":{"2338":{},"2339":{}}}],["index.duck.types.collider",{"_index":823,"name":{},"parent":{"2125":{},"2126":{}}}],["index.duck.types.cutscene",{"_index":889,"name":{},"parent":{"2214":{},"2215":{},"2218":{},"2219":{},"2234":{},"2255":{}}}],["index.duck.types.cutscene.config",{"_index":917,"name":{},"parent":{"2256":{},"2257":{},"2258":{},"2259":{}}}],["index.duck.types.cutscene.instructions",{"_index":904,"name":{},"parent":{"2235":{},"2236":{},"2254":{}}}],["index.duck.types.cutscene.instructions.__type",{"_index":906,"name":{},"parent":{"2237":{},"2238":{},"2241":{},"2242":{},"2243":{},"2253":{}}}],["index.duck.types.cutscene.instructions.__type.__type",{"_index":907,"name":{},"parent":{"2239":{},"2240":{},"2244":{},"2245":{},"2246":{},"2247":{},"2248":{},"2251":{},"2252":{}}}],["index.duck.types.cutscene.instructions.__type.__type.__type",{"_index":913,"name":{},"parent":{"2249":{},"2250":{}}}],["index.duck.types.cutscene.onlistener",{"_index":891,"name":{},"parent":{"2216":{},"2217":{}}}],["index.duck.types.cutscene.step",{"_index":894,"name":{},"parent":{"2220":{},"2221":{},"2222":{},"2223":{},"2226":{},"2227":{},"2228":{},"2229":{},"2230":{},"2231":{},"2232":{},"2233":{}}}],["index.duck.types.cutscene.step.__type",{"_index":896,"name":{},"parent":{"2224":{},"2225":{}}}],["index.duck.types.game",{"_index":793,"name":{},"parent":{"2083":{},"2109":{},"2112":{}}}],["index.duck.types.game.config",{"_index":794,"name":{},"parent":{"2084":{},"2085":{},"2086":{},"2087":{},"2088":{},"2089":{},"2090":{},"2091":{},"2096":{},"2097":{},"2098":{},"2099":{},"2100":{},"2101":{},"2102":{},"2105":{},"2106":{},"2107":{},"2108":{}}}],["index.duck.types.game.config.__type",{"_index":798,"name":{},"parent":{"2092":{},"2093":{},"2094":{},"2095":{},"2103":{},"2104":{}}}],["index.duck.types.game.plugin",{"_index":812,"name":{},"parent":{"2113":{},"2114":{},"2115":{}}}],["index.duck.types.game.stack",{"_index":809,"name":{},"parent":{"2110":{},"2111":{}}}],["index.duck.types.gamepadinput",{"_index":833,"name":{},"parent":{"2138":{},"2139":{},"2140":{},"2158":{}}}],["index.duck.types.gamepadinput.playstationmapping",{"_index":853,"name":{},"parent":{"2159":{},"2160":{},"2161":{},"2162":{},"2163":{},"2164":{},"2165":{},"2166":{},"2167":{},"2168":{},"2169":{},"2170":{},"2171":{},"2172":{},"2173":{},"2174":{},"2175":{}}}],["index.duck.types.gamepadinput.xboxmapping",{"_index":837,"name":{},"parent":{"2141":{},"2142":{},"2143":{},"2144":{},"2145":{},"2146":{},"2147":{},"2148":{},"2149":{},"2150":{},"2151":{},"2152":{},"2153":{},"2154":{},"2155":{},"2156":{},"2157":{}}}],["index.duck.types.group",{"_index":880,"name":{},"parent":{"2202":{},"2203":{},"2204":{}}}],["index.duck.types.group.listener",{"_index":881,"name":{},"parent":{"2205":{},"2206":{}}}],["index.duck.types.helper",{"_index":993,"name":{},"parent":{"2363":{},"2364":{}}}],["index.duck.types.keyboardinput",{"_index":961,"name":{},"parent":{"2322":{}}}],["index.duck.types.keyboardinput.keybase",{"_index":962,"name":{},"parent":{"2323":{},"2324":{},"2325":{},"2326":{},"2327":{},"2328":{}}}],["index.duck.types.loader",{"_index":927,"name":{},"parent":{"2274":{},"2275":{},"2279":{}}}],["index.duck.types.loader.stackitem",{"_index":929,"name":{},"parent":{"2276":{},"2277":{},"2278":{}}}],["index.duck.types.loader.texturestackitem",{"_index":932,"name":{},"parent":{"2280":{},"2281":{},"2282":{},"2283":{}}}],["index.duck.types.math",{"_index":985,"name":{},"parent":{"2351":{},"2354":{},"2357":{}}}],["index.duck.types.math.boundslike",{"_index":990,"name":{},"parent":{"2358":{},"2359":{},"2360":{},"2361":{}}}],["index.duck.types.math.vector2like",{"_index":986,"name":{},"parent":{"2352":{},"2353":{}}}],["index.duck.types.math.vector2likeoptional",{"_index":988,"name":{},"parent":{"2355":{},"2356":{}}}],["index.duck.types.misc",{"_index":818,"name":{},"parent":{"2121":{}}}],["index.duck.types.misc.scale",{"_index":820,"name":{},"parent":{"2122":{},"2123":{}}}],["index.duck.types.mouseinput",{"_index":968,"name":{},"parent":{"2330":{}}}],["index.duck.types.mouseinput.mousebase",{"_index":969,"name":{},"parent":{"2331":{},"2332":{},"2333":{},"2334":{},"2335":{}}}],["index.duck.types.particlecontainer",{"_index":921,"name":{},"parent":{"2264":{},"2271":{}}}],["index.duck.types.particlecontainer.bounds",{"_index":922,"name":{},"parent":{"2265":{},"2266":{},"2269":{},"2270":{}}}],["index.duck.types.particlecontainer.bounds.__type",{"_index":923,"name":{},"parent":{"2267":{},"2268":{}}}],["index.duck.types.particlecontainer.physics",{"_index":925,"name":{},"parent":{"2272":{}}}],["index.duck.types.particleemitter",{"_index":883,"name":{},"parent":{"2208":{},"2209":{}}}],["index.duck.types.particleemitter.offloaders",{"_index":886,"name":{},"parent":{"2210":{},"2211":{},"2212":{}}}],["index.duck.types.physicsbody",{"_index":934,"name":{},"parent":{"2288":{},"2289":{},"2291":{},"2294":{},"2295":{},"2296":{}}}],["index.duck.types.physicsbody.attachedbody",{"_index":938,"name":{},"parent":{"2292":{},"2293":{}}}],["index.duck.types.physicsbody.config",{"_index":935,"name":{},"parent":{"2290":{}}}],["index.duck.types.renderable",{"_index":792,"name":{},"parent":{"2076":{},"2077":{},"2078":{},"2079":{},"2080":{},"2081":{}}}],["index.duck.types.rendererpipeline",{"_index":815,"name":{},"parent":{"2117":{}}}],["index.duck.types.rendererpipeline.poolstackitem",{"_index":816,"name":{},"parent":{"2118":{},"2119":{}}}],["index.duck.types.sound",{"_index":825,"name":{},"parent":{"2128":{},"2132":{}}}],["index.duck.types.sound.config",{"_index":830,"name":{},"parent":{"2133":{},"2134":{},"2135":{},"2136":{}}}],["index.duck.types.sound.sprite",{"_index":827,"name":{},"parent":{"2129":{},"2130":{},"2131":{}}}],["index.duck.types.statemachine",{"_index":951,"name":{},"parent":{"2310":{},"2314":{},"2318":{}}}],["index.duck.types.statemachine.config",{"_index":959,"name":{},"parent":{"2319":{},"2320":{}}}],["index.duck.types.statemachine.connectionbase",{"_index":953,"name":{},"parent":{"2311":{},"2312":{},"2313":{}}}],["index.duck.types.statemachine.connectionbasevalue",{"_index":957,"name":{},"parent":{"2315":{},"2316":{},"2317":{}}}],["index.duck.types.texture",{"_index":933,"name":{},"parent":{"2285":{},"2286":{}}}],["index.duck.types.textureatlas",{"_index":979,"name":{},"parent":{"2341":{},"2347":{}}}],["index.duck.types.textureatlas.framedata",{"_index":980,"name":{},"parent":{"2342":{},"2343":{},"2344":{},"2345":{},"2346":{}}}],["index.duck.types.textureatlas.jsonschema",{"_index":982,"name":{},"parent":{"2348":{},"2349":{}}}],["index.duck.types.tilemap",{"_index":918,"name":{},"parent":{"2261":{},"2262":{}}}],["index.duck.types.ui",{"_index":861,"name":{},"parent":{"2177":{},"2189":{}}}],["index.duck.types.ui.button",{"_index":872,"name":{},"parent":{"2190":{},"2191":{},"2192":{},"2196":{},"2198":{}}}],["index.duck.types.ui.button.listener",{"_index":879,"name":{},"parent":{"2199":{},"2200":{}}}],["index.duck.types.ui.button.listenerfunc",{"_index":877,"name":{},"parent":{"2197":{}}}],["index.duck.types.ui.button.listenerreturn",{"_index":875,"name":{},"parent":{"2193":{},"2194":{},"2195":{}}}],["index.duck.types.ui.text",{"_index":862,"name":{},"parent":{"2178":{}}}],["index.duck.types.ui.text.config",{"_index":863,"name":{},"parent":{"2179":{},"2180":{},"2181":{},"2182":{},"2183":{}}}],["index.duck.types.ui.text.config.__type",{"_index":867,"name":{},"parent":{"2184":{},"2185":{},"2186":{},"2187":{},"2188":{}}}],["index.duckengine",{"_index":996,"name":{},"parent":{"2366":{}}}],["index.duckengine.__type",{"_index":997,"name":{},"parent":{"2367":{},"2368":{}}}],["indexof",{"_index":380,"name":{"1166":{}},"parent":{}}],["init",{"_index":120,"name":{"144":{},"2235":{}},"parent":{}}],["input",{"_index":389,"name":{"1178":{},"1755":{},"1981":{},"1982":{},"2048":{},"2049":{}},"parent":{}}],["inputs",{"_index":401,"name":{"1196":{},"1230":{}},"parent":{}}],["instructions",{"_index":113,"name":{"135":{},"2234":{}},"parent":{}}],["intersectsfacewith",{"_index":568,"name":{"1558":{}},"parent":{}}],["intersectswith",{"_index":567,"name":{"1557":{}},"parent":{}}],["interval",{"_index":173,"name":{"221":{}},"parent":{}}],["is",{"_index":662,"name":{"1782":{}},"parent":{}}],["isattached",{"_index":275,"name":{"417":{},"477":{},"537":{},"602":{},"691":{},"751":{},"816":{},"880":{},"940":{},"1000":{},"1063":{},"1123":{},"1260":{},"1494":{},"1585":{}},"parent":{}}],["iscolliding",{"_index":306,"name":{"449":{},"509":{},"569":{},"633":{},"723":{},"783":{},"848":{},"912":{},"972":{},"1032":{},"1095":{},"1155":{},"1292":{},"1525":{},"1617":{}},"parent":{}}],["iscollidinggroup",{"_index":307,"name":{"450":{},"510":{},"570":{},"634":{},"724":{},"784":{},"849":{},"913":{},"973":{},"1033":{},"1096":{},"1156":{},"1293":{},"1526":{},"1618":{}},"parent":{}}],["isdown",{"_index":406,"name":{"1205":{}},"parent":{}}],["isinfullscreen",{"_index":242,"name":{"365":{}},"parent":{}}],["isjustpressed",{"_index":408,"name":{"1207":{}},"parent":{}}],["isloaded",{"_index":248,"name":{"373":{}},"parent":{}}],["ismain",{"_index":83,"name":{"104":{}},"parent":{}}],["ismuted",{"_index":694,"name":{"1840":{}},"parent":{}}],["isplaying",{"_index":692,"name":{"1838":{}},"parent":{}}],["isrendering",{"_index":247,"name":{"372":{}},"parent":{}}],["isup",{"_index":407,"name":{"1206":{}},"parent":{}}],["iszero",{"_index":512,"name":{"1417":{}},"parent":{}}],["json",{"_index":716,"name":{"1880":{}},"parent":{}}],["jsonschema",{"_index":981,"name":{"2347":{}},"parent":{}}],["jsonstack",{"_index":431,"name":{"1300":{}},"parent":{}}],["keepemitting",{"_index":334,"name":{"656":{}},"parent":{}}],["key",{"_index":4,"name":{"3":{},"70":{},"1198":{},"1720":{},"1986":{},"2053":{},"2131":{},"2278":{},"2283":{},"2299":{},"2315":{},"2342":{}},"parent":{}}],["keybase",{"_index":960,"name":{"2322":{}},"parent":{}}],["keyboardinput",{"_index":394,"name":{"1185":{},"1204":{},"1983":{},"2050":{},"2321":{}},"parent":{}}],["keycode",{"_index":404,"name":{"1200":{},"2323":{}},"parent":{}}],["keydown",{"_index":963,"name":{"2325":{}},"parent":{}}],["keyjustpressed",{"_index":965,"name":{"2327":{}},"parent":{}}],["keys",{"_index":396,"name":{"1190":{},"1854":{}},"parent":{}}],["keystate",{"_index":966,"name":{"2328":{}},"parent":{}}],["keyup",{"_index":964,"name":{"2326":{}},"parent":{}}],["kinematicbody",{"_index":939,"name":{"2294":{}},"parent":{}}],["l1",{"_index":856,"name":{"2163":{}},"parent":{}}],["l2",{"_index":858,"name":{"2165":{}},"parent":{}}],["layers",{"_index":780,"name":{"2061":{}},"parent":{}}],["lb",{"_index":839,"name":{"2145":{}},"parent":{}}],["left",{"_index":74,"name":{"96":{},"1385":{}},"parent":{}}],["left_stick_press",{"_index":845,"name":{"2151":{},"2169":{}},"parent":{}}],["length",{"_index":387,"name":{"1176":{},"1455":{},"1466":{}},"parent":{}}],["lerp",{"_index":475,"name":{"1375":{},"1811":{}},"parent":{}}],["lerpx",{"_index":86,"name":{"107":{}},"parent":{}}],["lerpy",{"_index":87,"name":{"108":{}},"parent":{}}],["light",{"_index":629,"name":{"1700":{},"1701":{},"1758":{}},"parent":{}}],["lighten",{"_index":625,"name":{"1697":{}},"parent":{}}],["lighter",{"_index":619,"name":{"1690":{}},"parent":{}}],["lights",{"_index":754,"name":{"1979":{},"2046":{}},"parent":{}}],["list",{"_index":327,"name":{"643":{},"1448":{},"1460":{}},"parent":{}}],["listener",{"_index":878,"name":{"2198":{},"2204":{}},"parent":{}}],["listenerfunc",{"_index":876,"name":{"2196":{}},"parent":{}}],["listenerreturn",{"_index":874,"name":{"2192":{}},"parent":{}}],["listenertype",{"_index":873,"name":{"2191":{},"2203":{}},"parent":{}}],["listitems",{"_index":539,"name":{"1456":{},"1467":{}},"parent":{}}],["load_begin",{"_index":189,"name":{"270":{},"312":{}},"parent":{}}],["load_finish",{"_index":190,"name":{"271":{},"313":{}},"parent":{}}],["load_scene",{"_index":193,"name":{"274":{},"316":{}},"parent":{}}],["loadaudio",{"_index":445,"name":{"1314":{}},"parent":{}}],["loader",{"_index":428,"name":{"1295":{},"1729":{},"1777":{},"1950":{},"2017":{},"2273":{}},"parent":{}}],["loadfont",{"_index":444,"name":{"1313":{}},"parent":{}}],["loadhtml",{"_index":442,"name":{"1311":{}},"parent":{}}],["loadjson",{"_index":441,"name":{"1310":{}},"parent":{}}],["loadtexture",{"_index":438,"name":{"1307":{}},"parent":{}}],["loadtextureatlas",{"_index":440,"name":{"1309":{}},"parent":{}}],["loadtexturesheet",{"_index":439,"name":{"1308":{}},"parent":{}}],["loadxml",{"_index":443,"name":{"1312":{}},"parent":{}}],["lock_pointer",{"_index":201,"name":{"282":{},"324":{}},"parent":{}}],["lockpointer",{"_index":259,"name":{"389":{}},"parent":{}}],["log",{"_index":134,"name":{"159":{}},"parent":{}}],["logo",{"_index":851,"name":{"2157":{},"2175":{}},"parent":{}}],["lookat",{"_index":69,"name":{"91":{}},"parent":{}}],["loop",{"_index":252,"name":{"381":{},"1833":{},"2136":{}},"parent":{}}],["lt",{"_index":841,"name":{"2147":{}},"parent":{}}],["luminosity",{"_index":635,"name":{"1707":{}},"parent":{}}],["magnitude",{"_index":514,"name":{"1420":{}},"parent":{}}],["magnitudesqr",{"_index":515,"name":{"1421":{}},"parent":{}}],["maincamera",{"_index":648,"name":{"1725":{},"1757":{},"2256":{}},"parent":{}}],["mainobject",{"_index":115,"name":{"138":{},"2259":{}},"parent":{}}],["mainobjectpos",{"_index":905,"name":{"2237":{}},"parent":{}}],["map",{"_index":447,"name":{"1316":{},"1339":{},"1765":{},"1974":{},"1975":{},"2041":{},"2042":{},"2261":{}},"parent":{}}],["mapping",{"_index":834,"name":{"2139":{}},"parent":{}}],["mappingtype",{"_index":832,"name":{"2138":{}},"parent":{}}],["math",{"_index":674,"name":{"1806":{},"1977":{},"2044":{},"2350":{}},"parent":{}}],["maxage",{"_index":166,"name":{"196":{},"218":{},"2211":{}},"parent":{}}],["maxamount",{"_index":885,"name":{"2210":{}},"parent":{}}],["maxbounds",{"_index":887,"name":{"2212":{}},"parent":{}}],["maxwidth",{"_index":871,"name":{"2188":{}},"parent":{}}],["measuretext",{"_index":596,"name":{"1646":{},"1665":{}},"parent":{}}],["method",{"_index":864,"name":{"2181":{}},"parent":{}}],["mice",{"_index":417,"name":{"1226":{}},"parent":{}}],["misc",{"_index":653,"name":{"1739":{},"1747":{},"1942":{},"1949":{},"2009":{},"2016":{},"2120":{}},"parent":{}}],["models",{"_index":749,"name":{"1967":{},"1970":{},"1985":{},"2034":{},"2037":{},"2052":{}},"parent":{}}],["modifyphysicsenable",{"_index":977,"name":{"2339":{}},"parent":{}}],["mouse",{"_index":412,"name":{"1212":{},"1987":{},"2054":{}},"parent":{}}],["mousebase",{"_index":967,"name":{"2330":{}},"parent":{}}],["mousedown",{"_index":970,"name":{"2333":{}},"parent":{}}],["mouseinput",{"_index":414,"name":{"1218":{},"1221":{},"1984":{},"2051":{},"2329":{}},"parent":{}}],["mousemove",{"_index":972,"name":{"2335":{}},"parent":{}}],["mouseup",{"_index":971,"name":{"2334":{}},"parent":{}}],["moveto",{"_index":95,"name":{"116":{},"2222":{}},"parent":{}}],["movetowards",{"_index":509,"name":{"1414":{}},"parent":{}}],["multiply",{"_index":496,"name":{"1400":{},"1693":{}},"parent":{}}],["multiplynumber",{"_index":497,"name":{"1401":{}},"parent":{}}],["mute",{"_index":687,"name":{"1830":{}},"parent":{}}],["name",{"_index":378,"name":{"1162":{},"2115":{},"2348":{}},"parent":{}}],["negate",{"_index":513,"name":{"1419":{}},"parent":{}}],["next",{"_index":123,"name":{"148":{},"263":{},"344":{}},"parent":{}}],["normalize",{"_index":510,"name":{"1415":{}},"parent":{}}],["normalstep",{"_index":20,"name":{"19":{}},"parent":{}}],["nothover",{"_index":185,"name":{"254":{},"338":{}},"parent":{}}],["now",{"_index":240,"name":{"363":{}},"parent":{}}],["off",{"_index":126,"name":{"151":{},"245":{},"858":{},"1173":{}},"parent":{}}],["offloadbounds",{"_index":336,"name":{"658":{}},"parent":{}}],["offloaders",{"_index":884,"name":{"2209":{}},"parent":{}}],["offloadmaxage",{"_index":337,"name":{"659":{}},"parent":{}}],["offloadmaxamount",{"_index":335,"name":{"657":{}},"parent":{}}],["offset",{"_index":560,"name":{"1540":{},"2293":{}},"parent":{}}],["oldheight",{"_index":244,"name":{"367":{}},"parent":{}}],["oldtime",{"_index":239,"name":{"362":{}},"parent":{}}],["oldwidth",{"_index":243,"name":{"366":{}},"parent":{}}],["on",{"_index":125,"name":{"150":{},"244":{},"857":{},"1172":{}},"parent":{}}],["onbodyenter",{"_index":549,"name":{"1473":{}},"parent":{}}],["onbodyleave",{"_index":550,"name":{"1474":{}},"parent":{}}],["once",{"_index":679,"name":{"1819":{},"1957":{},"2024":{}},"parent":{}}],["oninput",{"_index":400,"name":{"1195":{},"1210":{}},"parent":{}}],["onlistener",{"_index":890,"name":{"2215":{}},"parent":{}}],["onlistenertype",{"_index":888,"name":{"2214":{}},"parent":{}}],["onpauserendering",{"_index":801,"name":{"2096":{}},"parent":{}}],["onresumerendering",{"_index":802,"name":{"2097":{}},"parent":{}}],["onsceneactive",{"_index":650,"name":{"1731":{}},"parent":{}}],["onsceneinactive",{"_index":651,"name":{"1733":{}},"parent":{}}],["options",{"_index":269,"name":{"408":{},"468":{},"528":{},"593":{},"682":{},"742":{},"807":{},"871":{},"931":{},"991":{},"1054":{},"1114":{},"1251":{},"1485":{},"1576":{},"2168":{}},"parent":{}}],["origin",{"_index":449,"name":{"1320":{},"1351":{}},"parent":{}}],["originalfillcolororimgpath",{"_index":320,"name":{"575":{}},"parent":{}}],["othercameras",{"_index":117,"name":{"141":{},"2257":{}},"parent":{}}],["othercamerasettings",{"_index":916,"name":{"2253":{}},"parent":{}}],["otherobjectpos",{"_index":908,"name":{"2241":{}},"parent":{}}],["otherobjects",{"_index":116,"name":{"139":{},"2258":{}},"parent":{}}],["out",{"_index":616,"name":{"1684":{},"1688":{}},"parent":{}}],["over",{"_index":613,"name":{"1682":{},"1686":{}},"parent":{}}],["overlay",{"_index":623,"name":{"1695":{}},"parent":{}}],["panel",{"_index":365,"name":{"975":{}},"parent":{}}],["parsejson",{"_index":718,"name":{"1882":{}},"parent":{}}],["particle",{"_index":317,"name":{"572":{},"639":{},"1762":{},"1937":{},"2004":{},"2067":{}},"parent":{}}],["particlecontainer",{"_index":920,"name":{"2263":{}},"parent":{}}],["particleemitter",{"_index":153,"name":{"180":{},"206":{},"230":{},"636":{},"1763":{},"1938":{},"2005":{},"2207":{}},"parent":{}}],["particles",{"_index":734,"name":{"1936":{},"2003":{}},"parent":{}}],["path",{"_index":684,"name":{"1825":{}},"parent":{}}],["pause",{"_index":26,"name":{"25":{},"59":{},"1829":{}},"parent":{}}],["pauserenderingonblur",{"_index":797,"name":{"2089":{}},"parent":{}}],["pausereverse",{"_index":27,"name":{"26":{},"60":{}},"parent":{}}],["perpendicular",{"_index":508,"name":{"1413":{}},"parent":{}}],["physics",{"_index":278,"name":{"420":{},"480":{},"540":{},"605":{},"694":{},"754":{},"819":{},"883":{},"943":{},"1003":{},"1066":{},"1126":{},"1263":{},"1497":{},"1588":{},"1802":{},"1963":{},"2030":{},"2090":{},"2271":{}},"parent":{}}],["physicsbody",{"_index":571,"name":{"1568":{},"1966":{},"2033":{},"2287":{}},"parent":{}}],["physicslist",{"_index":541,"name":{"1458":{},"1728":{},"1972":{},"2039":{}},"parent":{}}],["physicsobject",{"_index":561,"name":{"1545":{}},"parent":{}}],["physicsprocessmember",{"_index":790,"name":{"2074":{}},"parent":{}}],["physicsserver",{"_index":575,"name":{"1620":{},"1730":{},"1965":{},"2032":{}},"parent":{}}],["pipeline",{"_index":606,"name":{"1657":{}},"parent":{}}],["pipeline_pool",{"_index":206,"name":{"288":{},"331":{}},"parent":{}}],["play",{"_index":24,"name":{"23":{},"57":{},"1828":{}},"parent":{}}],["playreverse",{"_index":25,"name":{"24":{},"58":{}},"parent":{}}],["playsprite",{"_index":695,"name":{"1841":{}},"parent":{}}],["playstationmapping",{"_index":852,"name":{"2158":{}},"parent":{}}],["plugin",{"_index":810,"name":{"2112":{}},"parent":{}}],["pluginmanager",{"_index":250,"name":{"376":{},"1436":{},"1954":{},"2021":{}},"parent":{}}],["plugins",{"_index":530,"name":{"1438":{}},"parent":{}}],["pool",{"_index":642,"name":{"1715":{}},"parent":{}}],["poolinginterval",{"_index":808,"name":{"2108":{}},"parent":{}}],["poolinterval",{"_index":639,"name":{"1712":{}},"parent":{}}],["poolstack",{"_index":640,"name":{"1713":{}},"parent":{}}],["poolstackitem",{"_index":814,"name":{"2117":{}},"parent":{}}],["pop",{"_index":382,"name":{"1168":{}},"parent":{}}],["pos",{"_index":912,"name":{"2247":{}},"parent":{}}],["position",{"_index":267,"name":{"404":{},"464":{},"524":{},"589":{},"678":{},"738":{},"803":{},"867":{},"927":{},"987":{},"1050":{},"1110":{},"1247":{},"1332":{},"1481":{},"1539":{},"1572":{},"2265":{}},"parent":{}}],["preservevisibility",{"_index":975,"name":{"2338":{}},"parent":{}}],["preseteffect",{"_index":658,"name":{"1771":{}},"parent":{}}],["presets",{"_index":740,"name":{"1946":{},"2013":{}},"parent":{}}],["r",{"_index":268,"name":{"407":{},"467":{},"527":{},"592":{},"681":{},"741":{},"806":{},"870":{},"930":{},"990":{},"1053":{},"1113":{},"1250":{},"1484":{},"1575":{}},"parent":{}}],["r1",{"_index":857,"name":{"2164":{}},"parent":{}}],["r2",{"_index":859,"name":{"2166":{}},"parent":{}}],["random",{"_index":660,"name":{"1780":{}},"parent":{}}],["randomfloat",{"_index":477,"name":{"1377":{},"1813":{}},"parent":{}}],["randomint",{"_index":479,"name":{"1379":{},"1812":{}},"parent":{}}],["randommaxoffset",{"_index":157,"name":{"186":{},"212":{},"236":{}},"parent":{}}],["randomwithalpha",{"_index":661,"name":{"1781":{}},"parent":{}}],["range",{"_index":882,"name":{"2208":{}},"parent":{}}],["rangex",{"_index":151,"name":{"178":{},"204":{},"228":{},"640":{}},"parent":{}}],["rangey",{"_index":152,"name":{"179":{},"205":{},"229":{},"641":{}},"parent":{}}],["rb",{"_index":840,"name":{"2146":{}},"parent":{}}],["rect",{"_index":341,"name":{"666":{},"1744":{},"1933":{},"2000":{}},"parent":{}}],["recttorectintersect",{"_index":583,"name":{"1630":{},"1804":{}},"parent":{}}],["reflect",{"_index":526,"name":{"1433":{}},"parent":{}}],["reflectvelocity",{"_index":296,"name":{"439":{},"499":{},"559":{},"623":{},"713":{},"773":{},"838":{},"902":{},"962":{},"1022":{},"1085":{},"1145":{},"1282":{},"1515":{},"1607":{}},"parent":{}}],["registerlisteners",{"_index":410,"name":{"1209":{},"1219":{}},"parent":{}}],["registerplugin",{"_index":531,"name":{"1440":{}},"parent":{}}],["remove",{"_index":48,"name":{"51":{},"258":{},"349":{},"371":{},"1164":{},"1450":{},"1462":{}},"parent":{}}],["removebody",{"_index":552,"name":{"1477":{}},"parent":{}}],["removekey",{"_index":399,"name":{"1194":{}},"parent":{}}],["render",{"_index":607,"name":{"1658":{},"1958":{},"2025":{}},"parent":{}}],["renderable",{"_index":791,"name":{"2075":{}},"parent":{}}],["renderables",{"_index":817,"name":{"2119":{}},"parent":{}}],["renderer",{"_index":205,"name":{"286":{},"355":{}},"parent":{}}],["rendererevents",{"_index":217,"name":{"329":{}},"parent":{}}],["rendererpipeline",{"_index":637,"name":{"1709":{},"2116":{}},"parent":{}}],["rendering",{"_index":781,"name":{"2062":{}},"parent":{}}],["repeat",{"_index":10,"name":{"9":{},"2302":{}},"parent":{}}],["repeatcounter",{"_index":11,"name":{"10":{}},"parent":{}}],["resetfov",{"_index":102,"name":{"123":{}},"parent":{}}],["resetscale",{"_index":143,"name":{"170":{}},"parent":{}}],["resetzoom",{"_index":103,"name":{"124":{}},"parent":{}}],["restart",{"_index":32,"name":{"31":{},"65":{},"1835":{}},"parent":{}}],["restartreverse",{"_index":33,"name":{"32":{},"66":{}},"parent":{}}],["restore",{"_index":593,"name":{"1641":{},"1660":{}},"parent":{}}],["resume",{"_index":28,"name":{"27":{},"61":{}},"parent":{}}],["resumereverse",{"_index":29,"name":{"28":{},"62":{}},"parent":{}}],["reversedframes",{"_index":13,"name":{"12":{}},"parent":{}}],["reversestep",{"_index":21,"name":{"20":{}},"parent":{}}],["rgb",{"_index":665,"name":{"1786":{},"1789":{}},"parent":{}}],["rgba",{"_index":670,"name":{"1793":{}},"parent":{}}],["right",{"_index":76,"name":{"97":{},"1386":{}},"parent":{}}],["right_stick_press",{"_index":846,"name":{"2152":{},"2170":{}},"parent":{}}],["rigidbody",{"_index":940,"name":{"2295":{}},"parent":{}}],["rotate",{"_index":525,"name":{"1432":{}},"parent":{}}],["round",{"_index":500,"name":{"1404":{}},"parent":{}}],["roundpixels",{"_index":796,"name":{"2086":{}},"parent":{}}],["roundrect",{"_index":345,"name":{"726":{},"1746":{},"1934":{},"2001":{}},"parent":{}}],["row",{"_index":38,"name":{"37":{},"2308":{}},"parent":{}}],["rows",{"_index":466,"name":{"1364":{},"1914":{}},"parent":{}}],["rt",{"_index":842,"name":{"2148":{}},"parent":{}}],["runamount",{"_index":680,"name":{"1820":{}},"parent":{}}],["running",{"_index":119,"name":{"143":{}},"parent":{}}],["saturation",{"_index":634,"name":{"1705":{}},"parent":{}}],["save",{"_index":592,"name":{"1640":{},"1659":{}},"parent":{}}],["savecache",{"_index":437,"name":{"1306":{}},"parent":{}}],["scale",{"_index":81,"name":{"102":{},"165":{},"1418":{},"1554":{},"1642":{},"1663":{},"1868":{},"1888":{},"1902":{},"1920":{},"2098":{},"2121":{}},"parent":{}}],["scaleaspectratio",{"_index":141,"name":{"168":{}},"parent":{}}],["scalehitbox",{"_index":298,"name":{"441":{},"501":{},"561":{},"625":{},"715":{},"775":{},"840":{},"904":{},"964":{},"1024":{},"1087":{},"1147":{},"1284":{},"1517":{},"1609":{}},"parent":{}}],["scaletomagnitude",{"_index":516,"name":{"1422":{}},"parent":{}}],["scaletowindow",{"_index":142,"name":{"169":{}},"parent":{}}],["scene",{"_index":7,"name":{"6":{},"44":{},"90":{},"410":{},"470":{},"530":{},"595":{},"645":{},"684":{},"744":{},"809":{},"873":{},"933":{},"993":{},"1056":{},"1116":{},"1181":{},"1188":{},"1203":{},"1217":{},"1224":{},"1253":{},"1298":{},"1323":{},"1341":{},"1354":{},"1367":{},"1487":{},"1544":{},"1578":{},"1623":{},"1718":{},"1879":{},"1929":{},"1996":{},"2118":{},"2368":{}},"parent":{}}],["scene_add",{"_index":191,"name":{"272":{},"314":{}},"parent":{}}],["scene_remove",{"_index":192,"name":{"273":{},"315":{}},"parent":{}}],["scenes",{"_index":245,"name":{"368":{},"2110":{}},"parent":{}}],["screen",{"_index":622,"name":{"1694":{}},"parent":{}}],["screentoworld",{"_index":98,"name":{"119":{}},"parent":{}}],["seek",{"_index":689,"name":{"1834":{}},"parent":{}}],["set",{"_index":39,"name":{"39":{},"1850":{}},"parent":{}}],["set_background",{"_index":199,"name":{"280":{},"322":{}},"parent":{}}],["set_scale",{"_index":198,"name":{"279":{},"292":{},"300":{},"321":{}},"parent":{}}],["setbackground",{"_index":256,"name":{"386":{}},"parent":{}}],["setblendmode",{"_index":601,"name":{"1652":{},"1677":{}},"parent":{}}],["setbounds",{"_index":104,"name":{"125":{},"424":{},"484":{},"544":{},"609":{},"698":{},"758":{},"823":{},"887":{},"947":{},"1007":{},"1070":{},"1130":{},"1267":{},"1501":{},"1592":{}},"parent":{}}],["setcurrentanimation",{"_index":46,"name":{"49":{}},"parent":{}}],["setdebugcolor",{"_index":564,"name":{"1553":{}},"parent":{}}],["setenabled",{"_index":282,"name":{"425":{},"485":{},"545":{},"610":{},"699":{},"759":{},"824":{},"888":{},"948":{},"1008":{},"1071":{},"1131":{},"1268":{},"1502":{},"1593":{}},"parent":{}}],["setfillcolor",{"_index":266,"name":{"401":{},"461":{},"521":{},"586":{},"663":{},"675":{},"735":{},"795":{},"865":{},"924":{},"984":{},"1047":{},"1107":{},"1244":{},"1649":{},"1666":{},"1871":{},"1891":{},"1905":{},"1923":{}},"parent":{}}],["setfillcoloralpha",{"_index":425,"name":{"1237":{}},"parent":{}}],["setfont",{"_index":595,"name":{"1645":{},"1664":{}},"parent":{}}],["setfov",{"_index":100,"name":{"121":{}},"parent":{}}],["setfovsmooth",{"_index":101,"name":{"122":{}},"parent":{}}],["setimagepath",{"_index":322,"name":{"579":{},"664":{},"794":{},"1870":{},"1890":{},"1904":{},"1922":{}},"parent":{}}],["setlinewidth",{"_index":600,"name":{"1651":{},"1668":{}},"parent":{}}],["setmaincamera",{"_index":678,"name":{"1818":{}},"parent":{}}],["setpath",{"_index":696,"name":{"1842":{}},"parent":{}}],["setposition",{"_index":565,"name":{"1555":{}},"parent":{}}],["setrange",{"_index":333,"name":{"655":{}},"parent":{}}],["setrepeat",{"_index":22,"name":{"21":{},"55":{}},"parent":{}}],["setrepeatreverse",{"_index":23,"name":{"22":{},"56":{}},"parent":{}}],["setscale",{"_index":255,"name":{"385":{},"400":{},"460":{},"520":{},"585":{},"674":{},"734":{},"793":{},"864":{},"923":{},"983":{},"1046":{},"1106":{},"1243":{},"1869":{},"1889":{},"1903":{},"1921":{}},"parent":{}}],["setstrokecolor",{"_index":599,"name":{"1650":{},"1667":{}},"parent":{}}],["settext",{"_index":370,"name":{"1040":{}},"parent":{}}],["settype",{"_index":284,"name":{"427":{},"487":{},"547":{},"611":{},"701":{},"761":{},"826":{},"890":{},"950":{},"1010":{},"1073":{},"1133":{},"1270":{},"1503":{},"1595":{}},"parent":{}}],["setvalues",{"_index":491,"name":{"1394":{}},"parent":{}}],["setvaluesvec",{"_index":492,"name":{"1395":{}},"parent":{}}],["setvelocity",{"_index":289,"name":{"432":{},"492":{},"552":{},"616":{},"660":{},"706":{},"766":{},"831":{},"895":{},"955":{},"1015":{},"1078":{},"1138":{},"1275":{},"1508":{},"1600":{}},"parent":{}}],["setvelocityx",{"_index":290,"name":{"433":{},"493":{},"553":{},"617":{},"707":{},"767":{},"832":{},"896":{},"956":{},"1016":{},"1079":{},"1139":{},"1276":{},"1509":{},"1601":{}},"parent":{}}],["setvelocityy",{"_index":291,"name":{"434":{},"494":{},"554":{},"618":{},"708":{},"768":{},"833":{},"897":{},"957":{},"1017":{},"1080":{},"1140":{},"1277":{},"1510":{},"1602":{}},"parent":{}}],["setvisible",{"_index":265,"name":{"399":{},"459":{},"519":{},"584":{},"673":{},"733":{},"800":{},"863":{},"922":{},"982":{},"1045":{},"1105":{},"1242":{},"1815":{}},"parent":{}}],["setvolume",{"_index":690,"name":{"1836":{}},"parent":{}}],["setzoom",{"_index":93,"name":{"114":{}},"parent":{}}],["setzoomsmooth",{"_index":94,"name":{"115":{}},"parent":{}}],["shake",{"_index":105,"name":{"126":{}},"parent":{}}],["shape",{"_index":150,"name":{"177":{},"203":{},"227":{},"403":{},"463":{},"523":{},"588":{},"677":{},"737":{},"802":{},"853":{},"926":{},"986":{},"1049":{},"1109":{},"1246":{},"1319":{},"1350":{},"1480":{},"1571":{},"2190":{}},"parent":{}}],["shapestring",{"_index":822,"name":{"2125":{}},"parent":{}}],["share",{"_index":860,"name":{"2167":{}},"parent":{}}],["shift",{"_index":383,"name":{"1169":{}},"parent":{}}],["show_address_bar",{"_index":843,"name":{"2149":{}},"parent":{}}],["show_menu",{"_index":844,"name":{"2150":{}},"parent":{}}],["show_scene",{"_index":195,"name":{"276":{},"318":{}},"parent":{}}],["showscene",{"_index":258,"name":{"388":{}},"parent":{}}],["sleep",{"_index":124,"name":{"149":{},"384":{}},"parent":{}}],["sleepvalue",{"_index":900,"name":{"2230":{}},"parent":{}}],["smallcorrectionscale",{"_index":140,"name":{"167":{}},"parent":{}}],["smartscale",{"_index":807,"name":{"2106":{}},"parent":{}}],["smokeeffect",{"_index":169,"name":{"216":{},"1774":{},"1948":{},"2015":{}},"parent":{}}],["smoothdeltatime",{"_index":238,"name":{"361":{}},"parent":{}}],["soft",{"_index":630,"name":{"1701":{}},"parent":{}}],["sorttilelayers",{"_index":461,"name":{"1348":{}},"parent":{}}],["sound",{"_index":745,"name":{"1959":{},"2026":{},"2127":{}},"parent":{}}],["soundplayer",{"_index":657,"name":{"1754":{},"1823":{},"1960":{},"2027":{}},"parent":{}}],["source",{"_index":612,"name":{"1682":{},"1683":{},"1684":{},"1685":{}},"parent":{}}],["speedrange",{"_index":167,"name":{"197":{}},"parent":{}}],["speedrangex",{"_index":171,"name":{"219":{}},"parent":{}}],["speedrangey",{"_index":172,"name":{"220":{}},"parent":{}}],["splashscreen",{"_index":249,"name":{"374":{},"2101":{}},"parent":{}}],["splice",{"_index":384,"name":{"1170":{},"1454":{},"1465":{}},"parent":{}}],["sprite",{"_index":8,"name":{"7":{},"38":{},"45":{},"786":{},"1743":{},"1935":{},"2002":{},"2128":{}},"parent":{}}],["sprites",{"_index":686,"name":{"1827":{},"2135":{}},"parent":{}}],["square",{"_index":854,"name":{"2161":{}},"parent":{}}],["stack",{"_index":130,"name":{"155":{},"356":{},"1160":{},"2109":{}},"parent":{}}],["stackitem",{"_index":928,"name":{"2275":{}},"parent":{}}],["stackitemtype",{"_index":926,"name":{"2274":{}},"parent":{}}],["start",{"_index":121,"name":{"145":{},"261":{},"268":{},"310":{},"342":{},"379":{}},"parent":{}}],["startfollow",{"_index":96,"name":{"117":{}},"parent":{}}],["startseconds",{"_index":826,"name":{"2129":{}},"parent":{}}],["state",{"_index":409,"name":{"1208":{}},"parent":{}}],["statemachine",{"_index":59,"name":{"76":{},"1993":{},"2060":{},"2309":{}},"parent":{}}],["staticbody",{"_index":941,"name":{"2296":{}},"parent":{}}],["staticlight",{"_index":421,"name":{"1232":{},"1760":{},"1980":{},"2047":{}},"parent":{}}],["step",{"_index":893,"name":{"2219":{}},"parent":{}}],["steps",{"_index":114,"name":{"137":{},"2254":{}},"parent":{}}],["steptype",{"_index":892,"name":{"2218":{}},"parent":{}}],["stop",{"_index":30,"name":{"29":{},"63":{},"146":{},"269":{},"311":{},"380":{},"1832":{}},"parent":{}}],["stopemit",{"_index":159,"name":{"188":{},"199":{},"223":{},"653":{}},"parent":{}}],["stopfollow",{"_index":97,"name":{"118":{},"192":{},"214":{},"238":{}},"parent":{}}],["stopreverse",{"_index":31,"name":{"30":{},"64":{}},"parent":{}}],["storageidentifier",{"_index":700,"name":{"1848":{}},"parent":{}}],["strokecolor",{"_index":869,"name":{"2186":{}},"parent":{}}],["stroketext",{"_index":598,"name":{"1648":{},"1670":{}},"parent":{}}],["strokewidth",{"_index":868,"name":{"2185":{}},"parent":{}}],["styles",{"_index":865,"name":{"2182":{}},"parent":{}}],["subtract",{"_index":494,"name":{"1398":{}},"parent":{}}],["subtractnumber",{"_index":495,"name":{"1399":{}},"parent":{}}],["switch_scene",{"_index":194,"name":{"275":{},"317":{}},"parent":{}}],["switchcamera",{"_index":676,"name":{"1816":{}},"parent":{}}],["switchscene",{"_index":257,"name":{"387":{}},"parent":{}}],["switchtomaincamera",{"_index":677,"name":{"1817":{}},"parent":{}}],["sync",{"_index":701,"name":{"1849":{}},"parent":{}}],["sync_cache",{"_index":200,"name":{"281":{},"323":{}},"parent":{}}],["text",{"_index":357,"name":{"854":{},"1035":{},"1037":{},"1752":{},"1941":{},"2008":{},"2069":{},"2177":{}},"parent":{}}],["texture",{"_index":264,"name":{"395":{},"454":{},"515":{},"580":{},"669":{},"729":{},"796":{},"859":{},"918":{},"978":{},"1041":{},"1100":{},"1238":{},"1361":{},"1859":{},"1867":{},"1887":{},"1901":{},"1919":{},"1973":{},"2040":{},"2284":{}},"parent":{}}],["textureatlas",{"_index":714,"name":{"1873":{},"2340":{}},"parent":{}}],["texturebase",{"_index":720,"name":{"1893":{}},"parent":{}}],["texturesheet",{"_index":723,"name":{"1907":{}},"parent":{}}],["texturestack",{"_index":430,"name":{"1299":{}},"parent":{}}],["texturestackitem",{"_index":931,"name":{"2279":{}},"parent":{}}],["tile",{"_index":452,"name":{"1329":{}},"parent":{}}],["tileh",{"_index":465,"name":{"1363":{}},"parent":{}}],["tilelayer",{"_index":455,"name":{"1336":{},"1769":{}},"parent":{}}],["tilelayers",{"_index":450,"name":{"1321":{},"1352":{}},"parent":{}}],["tilemap",{"_index":459,"name":{"1345":{},"1767":{},"1976":{},"2043":{},"2260":{}},"parent":{}}],["tiles",{"_index":468,"name":{"1368":{}},"parent":{}}],["tileset",{"_index":457,"name":{"1338":{},"1359":{},"1768":{}},"parent":{}}],["tilew",{"_index":464,"name":{"1362":{}},"parent":{}}],["to",{"_index":954,"name":{"2312":{}},"parent":{}}],["tohsl",{"_index":667,"name":{"1791":{},"1801":{}},"parent":{}}],["tohsla",{"_index":671,"name":{"1795":{}},"parent":{}}],["tools",{"_index":659,"name":{"1775":{}},"parent":{}}],["top",{"_index":77,"name":{"98":{}},"parent":{}}],["toprecision",{"_index":518,"name":{"1424":{}},"parent":{}}],["torgb",{"_index":672,"name":{"1796":{},"1800":{}},"parent":{}}],["torgba",{"_index":669,"name":{"1792":{},"1799":{}},"parent":{}}],["tostring",{"_index":517,"name":{"1423":{}},"parent":{}}],["tovector2like",{"_index":487,"name":{"1389":{}},"parent":{}}],["transform",{"_index":594,"name":{"1644":{},"1662":{}},"parent":{}}],["translate",{"_index":519,"name":{"1425":{},"1643":{},"1661":{}},"parent":{}}],["translatex",{"_index":520,"name":{"1426":{}},"parent":{}}],["translatey",{"_index":521,"name":{"1427":{}},"parent":{}}],["travel",{"_index":64,"name":{"84":{}},"parent":{}}],["triangle",{"_index":855,"name":{"2162":{}},"parent":{}}],["tripleproduct",{"_index":522,"name":{"1428":{}},"parent":{}}],["trycache",{"_index":436,"name":{"1305":{}},"parent":{}}],["type",{"_index":711,"name":{"1864":{},"1884":{},"1898":{},"1916":{},"2195":{},"2199":{},"2206":{},"2216":{},"2220":{},"2276":{},"2281":{},"2285":{},"2288":{},"2290":{}},"parent":{}}],["typeclasses",{"_index":759,"name":{"1994":{}},"parent":{}}],["types",{"_index":788,"name":{"2072":{}},"parent":{}}],["ui",{"_index":373,"name":{"1098":{},"1750":{},"1939":{},"2006":{},"2176":{}},"parent":{}}],["unfullscreen",{"_index":145,"name":{"172":{},"294":{},"302":{}},"parent":{}}],["unlock_pointer",{"_index":202,"name":{"283":{},"325":{}},"parent":{}}],["unlockpointer",{"_index":260,"name":{"390":{}},"parent":{}}],["unmute",{"_index":688,"name":{"1831":{}},"parent":{}}],["unregisterplugin",{"_index":532,"name":{"1441":{}},"parent":{}}],["up",{"_index":484,"name":{"1383":{}},"parent":{}}],["update",{"_index":122,"name":{"147":{}},"parent":{}}],["updatetime",{"_index":643,"name":{"1716":{}},"parent":{}}],["updatetimeinterval",{"_index":641,"name":{"1714":{}},"parent":{}}],["updateviewport",{"_index":92,"name":{"113":{}},"parent":{}}],["usedelta",{"_index":947,"name":{"2305":{}},"parent":{}}],["validatejson",{"_index":717,"name":{"1881":{}},"parent":{}}],["value",{"_index":930,"name":{"2277":{},"2282":{}},"parent":{}}],["values",{"_index":704,"name":{"1855":{}},"parent":{}}],["vector",{"_index":56,"name":{"73":{},"1809":{},"2316":{}},"parent":{}}],["vector2",{"_index":481,"name":{"1381":{},"1978":{},"2045":{}},"parent":{}}],["vector2like",{"_index":984,"name":{"2351":{}},"parent":{}}],["vector2likeoptional",{"_index":987,"name":{"2354":{}},"parent":{}}],["velocity",{"_index":273,"name":{"414":{},"474":{},"534":{},"599":{},"688":{},"748":{},"813":{},"877":{},"937":{},"997":{},"1060":{},"1120":{},"1257":{},"1491":{},"1582":{}},"parent":{}}],["viewport",{"_index":72,"name":{"94":{}},"parent":{}}],["visibilityfilter",{"_index":538,"name":{"1452":{}},"parent":{}}],["visible",{"_index":154,"name":{"182":{},"208":{},"232":{},"396":{},"455":{},"516":{},"581":{},"670":{},"730":{},"797":{},"860":{},"919":{},"979":{},"1042":{},"1101":{},"1239":{},"1324":{},"1343":{},"1355":{},"1547":{},"1721":{},"2078":{}},"parent":{}}],["volume",{"_index":693,"name":{"1839":{},"2134":{}},"parent":{}}],["w",{"_index":79,"name":{"100":{},"405":{},"465":{},"525":{},"590":{},"679":{},"739":{},"804":{},"868":{},"928":{},"988":{},"1051":{},"1111":{},"1248":{},"1333":{},"1482":{},"1541":{},"1573":{},"2269":{},"2345":{},"2358":{}},"parent":{}}],["warn",{"_index":133,"name":{"158":{}},"parent":{}}],["width",{"_index":819,"name":{"2122":{}},"parent":{}}],["wobble",{"_index":338,"name":{"661":{}},"parent":{}}],["worldtoscreen",{"_index":99,"name":{"120":{}},"parent":{}}],["x",{"_index":489,"name":{"1392":{},"2143":{},"2159":{},"2179":{},"2193":{},"2224":{},"2239":{},"2249":{},"2267":{},"2343":{},"2352":{},"2355":{},"2360":{}},"parent":{}}],["xboxmapping",{"_index":835,"name":{"2140":{}},"parent":{}}],["xmlstack",{"_index":433,"name":{"1302":{}},"parent":{}}],["xor",{"_index":621,"name":{"1692":{}},"parent":{}}],["y",{"_index":490,"name":{"1393":{},"2144":{},"2180":{},"2194":{},"2225":{},"2240":{},"2250":{},"2268":{},"2344":{},"2353":{},"2356":{},"2361":{}},"parent":{}}],["yoyo",{"_index":945,"name":{"2303":{}},"parent":{}}],["zero",{"_index":482,"name":{"1382":{}},"parent":{}}],["zindex",{"_index":155,"name":{"183":{},"209":{},"233":{},"397":{},"456":{},"517":{},"582":{},"671":{},"731":{},"798":{},"861":{},"920":{},"980":{},"1043":{},"1102":{},"1240":{},"1325":{},"1342":{},"1356":{},"1548":{},"2063":{},"2077":{}},"parent":{}}],["zoom",{"_index":911,"name":{"2246":{}},"parent":{}}]],"pipeline":[]}} \ No newline at end of file +window.searchData = {"kinds":{"2":"Module","4":"Namespace","8":"Enumeration","16":"Enumeration member","32":"Variable","64":"Function","128":"Class","256":"Interface","512":"Constructor","1024":"Property","2048":"Method","65536":"Type literal","262144":"Accessor","4194304":"Type alias"},"rows":[{"id":0,"kind":2,"name":"core/animation/animation","url":"modules/core_animation_animation.html","classes":"tsd-kind-module"},{"id":1,"kind":128,"name":"Animation","url":"classes/core_animation_animation.Animation.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animation"},{"id":2,"kind":512,"name":"constructor","url":"classes/core_animation_animation.Animation.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":3,"kind":1024,"name":"key","url":"classes/core_animation_animation.Animation.html#key","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":4,"kind":1024,"name":"config","url":"classes/core_animation_animation.Animation.html#config","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":5,"kind":1024,"name":"game","url":"classes/core_animation_animation.Animation.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":6,"kind":1024,"name":"scene","url":"classes/core_animation_animation.Animation.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":7,"kind":1024,"name":"sprite","url":"classes/core_animation_animation.Animation.html#sprite","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":8,"kind":1024,"name":"countBy","url":"classes/core_animation_animation.Animation.html#countBy","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":9,"kind":1024,"name":"repeat","url":"classes/core_animation_animation.Animation.html#repeat","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":10,"kind":1024,"name":"repeatCounter","url":"classes/core_animation_animation.Animation.html#repeatCounter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":11,"kind":1024,"name":"frames","url":"classes/core_animation_animation.Animation.html#frames","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":12,"kind":1024,"name":"reversedFrames","url":"classes/core_animation_animation.Animation.html#reversedFrames","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":13,"kind":1024,"name":"animationNormalTimer","url":"classes/core_animation_animation.Animation.html#animationNormalTimer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":14,"kind":1024,"name":"animationReverseTimer","url":"classes/core_animation_animation.Animation.html#animationReverseTimer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":15,"kind":1024,"name":"delayTimer","url":"classes/core_animation_animation.Animation.html#delayTimer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":16,"kind":1024,"name":"currentIndex","url":"classes/core_animation_animation.Animation.html#currentIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":17,"kind":1024,"name":"currentFrame","url":"classes/core_animation_animation.Animation.html#currentFrame","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":18,"kind":2048,"name":"createFrames","url":"classes/core_animation_animation.Animation.html#createFrames","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/animation/animation.Animation"},{"id":19,"kind":2048,"name":"normalStep","url":"classes/core_animation_animation.Animation.html#normalStep","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/animation/animation.Animation"},{"id":20,"kind":2048,"name":"reverseStep","url":"classes/core_animation_animation.Animation.html#reverseStep","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/animation/animation.Animation"},{"id":21,"kind":2048,"name":"setRepeat","url":"classes/core_animation_animation.Animation.html#setRepeat","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":22,"kind":2048,"name":"setRepeatReverse","url":"classes/core_animation_animation.Animation.html#setRepeatReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":23,"kind":2048,"name":"play","url":"classes/core_animation_animation.Animation.html#play","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":24,"kind":2048,"name":"playReverse","url":"classes/core_animation_animation.Animation.html#playReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":25,"kind":2048,"name":"pause","url":"classes/core_animation_animation.Animation.html#pause","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":26,"kind":2048,"name":"pauseReverse","url":"classes/core_animation_animation.Animation.html#pauseReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":27,"kind":2048,"name":"resume","url":"classes/core_animation_animation.Animation.html#resume","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":28,"kind":2048,"name":"resumeReverse","url":"classes/core_animation_animation.Animation.html#resumeReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":29,"kind":2048,"name":"stop","url":"classes/core_animation_animation.Animation.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":30,"kind":2048,"name":"stopReverse","url":"classes/core_animation_animation.Animation.html#stopReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":31,"kind":2048,"name":"restart","url":"classes/core_animation_animation.Animation.html#restart","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":32,"kind":2048,"name":"restartReverse","url":"classes/core_animation_animation.Animation.html#restartReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animation.Animation"},{"id":33,"kind":2,"name":"core/animation/animationFrame","url":"modules/core_animation_animationFrame.html","classes":"tsd-kind-module"},{"id":34,"kind":128,"name":"AnimationFrame","url":"classes/core_animation_animationFrame.AnimationFrame.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animationFrame"},{"id":35,"kind":512,"name":"constructor","url":"classes/core_animation_animationFrame.AnimationFrame.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":36,"kind":1024,"name":"col","url":"classes/core_animation_animationFrame.AnimationFrame.html#col","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":37,"kind":1024,"name":"row","url":"classes/core_animation_animationFrame.AnimationFrame.html#row","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":38,"kind":1024,"name":"sprite","url":"classes/core_animation_animationFrame.AnimationFrame.html#sprite","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":39,"kind":2048,"name":"set","url":"classes/core_animation_animationFrame.AnimationFrame.html#set","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationFrame.AnimationFrame"},{"id":40,"kind":2,"name":"core/animation/animationManager","url":"modules/core_animation_animationManager.html","classes":"tsd-kind-module"},{"id":41,"kind":128,"name":"AnimationManager","url":"classes/core_animation_animationManager.AnimationManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animationManager"},{"id":42,"kind":512,"name":"constructor","url":"classes/core_animation_animationManager.AnimationManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":43,"kind":1024,"name":"game","url":"classes/core_animation_animationManager.AnimationManager.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":44,"kind":1024,"name":"scene","url":"classes/core_animation_animationManager.AnimationManager.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":45,"kind":1024,"name":"sprite","url":"classes/core_animation_animationManager.AnimationManager.html#sprite","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":46,"kind":1024,"name":"animations","url":"classes/core_animation_animationManager.AnimationManager.html#animations","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":47,"kind":1024,"name":"currentAnimation","url":"classes/core_animation_animationManager.AnimationManager.html#currentAnimation","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":48,"kind":2048,"name":"createStateMachine","url":"classes/core_animation_animationManager.AnimationManager.html#createStateMachine","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":49,"kind":2048,"name":"setCurrentAnimation","url":"classes/core_animation_animationManager.AnimationManager.html#setCurrentAnimation","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":50,"kind":2048,"name":"add","url":"classes/core_animation_animationManager.AnimationManager.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":51,"kind":2048,"name":"remove","url":"classes/core_animation_animationManager.AnimationManager.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":52,"kind":2048,"name":"get","url":"classes/core_animation_animationManager.AnimationManager.html#get","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":53,"kind":2048,"name":"getIndex","url":"classes/core_animation_animationManager.AnimationManager.html#getIndex","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":54,"kind":2048,"name":"clear","url":"classes/core_animation_animationManager.AnimationManager.html#clear","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":55,"kind":2048,"name":"setRepeat","url":"classes/core_animation_animationManager.AnimationManager.html#setRepeat","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":56,"kind":2048,"name":"setRepeatReverse","url":"classes/core_animation_animationManager.AnimationManager.html#setRepeatReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":57,"kind":2048,"name":"play","url":"classes/core_animation_animationManager.AnimationManager.html#play","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":58,"kind":2048,"name":"playReverse","url":"classes/core_animation_animationManager.AnimationManager.html#playReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":59,"kind":2048,"name":"pause","url":"classes/core_animation_animationManager.AnimationManager.html#pause","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":60,"kind":2048,"name":"pauseReverse","url":"classes/core_animation_animationManager.AnimationManager.html#pauseReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":61,"kind":2048,"name":"resume","url":"classes/core_animation_animationManager.AnimationManager.html#resume","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":62,"kind":2048,"name":"resumeReverse","url":"classes/core_animation_animationManager.AnimationManager.html#resumeReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":63,"kind":2048,"name":"stop","url":"classes/core_animation_animationManager.AnimationManager.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":64,"kind":2048,"name":"stopReverse","url":"classes/core_animation_animationManager.AnimationManager.html#stopReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":65,"kind":2048,"name":"restart","url":"classes/core_animation_animationManager.AnimationManager.html#restart","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":66,"kind":2048,"name":"restartReverse","url":"classes/core_animation_animationManager.AnimationManager.html#restartReverse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/animationManager.AnimationManager"},{"id":67,"kind":2,"name":"core/animation/animationState","url":"modules/core_animation_animationState.html","classes":"tsd-kind-module"},{"id":68,"kind":128,"name":"AnimationState","url":"classes/core_animation_animationState.AnimationState.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/animationState"},{"id":69,"kind":512,"name":"constructor","url":"classes/core_animation_animationState.AnimationState.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":70,"kind":1024,"name":"key","url":"classes/core_animation_animationState.AnimationState.html#key","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":71,"kind":1024,"name":"animation","url":"classes/core_animation_animationState.AnimationState.html#animation","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":72,"kind":1024,"name":"autoAdvance","url":"classes/core_animation_animationState.AnimationState.html#autoAdvance","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":73,"kind":1024,"name":"vector","url":"classes/core_animation_animationState.AnimationState.html#vector","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":74,"kind":1024,"name":"connections","url":"classes/core_animation_animationState.AnimationState.html#connections","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/animationState.AnimationState"},{"id":75,"kind":2,"name":"core/animation/stateMachine","url":"modules/core_animation_stateMachine.html","classes":"tsd-kind-module"},{"id":76,"kind":128,"name":"StateMachine","url":"classes/core_animation_stateMachine.StateMachine.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/animation/stateMachine"},{"id":77,"kind":512,"name":"constructor","url":"classes/core_animation_stateMachine.StateMachine.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":78,"kind":1024,"name":"config","url":"classes/core_animation_stateMachine.StateMachine.html#config","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":79,"kind":1024,"name":"animations","url":"classes/core_animation_stateMachine.StateMachine.html#animations","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":80,"kind":1024,"name":"connections","url":"classes/core_animation_stateMachine.StateMachine.html#connections","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":81,"kind":1024,"name":"currentState","url":"classes/core_animation_stateMachine.StateMachine.html#currentState","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":82,"kind":2048,"name":"connectTo","url":"classes/core_animation_stateMachine.StateMachine.html#connectTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":83,"kind":2048,"name":"connectLoop","url":"classes/core_animation_stateMachine.StateMachine.html#connectLoop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":84,"kind":2048,"name":"travel","url":"classes/core_animation_stateMachine.StateMachine.html#travel","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":85,"kind":2048,"name":"canTravel","url":"classes/core_animation_stateMachine.StateMachine.html#canTravel","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/animation/stateMachine.StateMachine"},{"id":86,"kind":2,"name":"core/camera/camera","url":"modules/core_camera_camera.html","classes":"tsd-kind-module"},{"id":87,"kind":128,"name":"Camera","url":"classes/core_camera_camera.Camera.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/camera/camera"},{"id":88,"kind":512,"name":"constructor","url":"classes/core_camera_camera.Camera.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":89,"kind":1024,"name":"game","url":"classes/core_camera_camera.Camera.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":90,"kind":1024,"name":"scene","url":"classes/core_camera_camera.Camera.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":91,"kind":1024,"name":"position","url":"classes/core_camera_camera.Camera.html#position","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":92,"kind":1024,"name":"fieldOfView","url":"classes/core_camera_camera.Camera.html#fieldOfView","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":93,"kind":1024,"name":"zoom","url":"classes/core_camera_camera.Camera.html#zoom","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":94,"kind":1024,"name":"viewport","url":"classes/core_camera_camera.Camera.html#viewport","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":95,"kind":65536,"name":"__type","url":"classes/core_camera_camera.Camera.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":96,"kind":1024,"name":"left","url":"classes/core_camera_camera.Camera.html#__type.left","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":97,"kind":1024,"name":"right","url":"classes/core_camera_camera.Camera.html#__type.right","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":98,"kind":1024,"name":"top","url":"classes/core_camera_camera.Camera.html#__type.top","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":99,"kind":1024,"name":"bottom","url":"classes/core_camera_camera.Camera.html#__type.bottom","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":100,"kind":1024,"name":"w","url":"classes/core_camera_camera.Camera.html#__type.w","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":101,"kind":1024,"name":"h","url":"classes/core_camera_camera.Camera.html#__type.h","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":102,"kind":1024,"name":"scale","url":"classes/core_camera_camera.Camera.html#__type.scale","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/camera/camera.Camera.__type"},{"id":103,"kind":1024,"name":"aspectRatio","url":"classes/core_camera_camera.Camera.html#aspectRatio","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":104,"kind":1024,"name":"isMain","url":"classes/core_camera_camera.Camera.html#isMain","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":105,"kind":1024,"name":"bounds","url":"classes/core_camera_camera.Camera.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":106,"kind":1024,"name":"following","url":"classes/core_camera_camera.Camera.html#following","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":107,"kind":1024,"name":"lerpAmount","url":"classes/core_camera_camera.Camera.html#lerpAmount","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":108,"kind":2048,"name":"begin","url":"classes/core_camera_camera.Camera.html#begin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":109,"kind":2048,"name":"followRect","url":"classes/core_camera_camera.Camera.html#followRect","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":110,"kind":2048,"name":"followCircle","url":"classes/core_camera_camera.Camera.html#followCircle","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":111,"kind":2048,"name":"end","url":"classes/core_camera_camera.Camera.html#end","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":112,"kind":2048,"name":"applyScale","url":"classes/core_camera_camera.Camera.html#applyScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":113,"kind":2048,"name":"applyTranslation","url":"classes/core_camera_camera.Camera.html#applyTranslation","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":114,"kind":2048,"name":"updateViewport","url":"classes/core_camera_camera.Camera.html#updateViewport","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/camera/camera.Camera"},{"id":115,"kind":2048,"name":"setZoom","url":"classes/core_camera_camera.Camera.html#setZoom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":116,"kind":2048,"name":"setZoomSmooth","url":"classes/core_camera_camera.Camera.html#setZoomSmooth","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":117,"kind":2048,"name":"moveTo","url":"classes/core_camera_camera.Camera.html#moveTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":118,"kind":2048,"name":"startFollow","url":"classes/core_camera_camera.Camera.html#startFollow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":119,"kind":2048,"name":"stopFollow","url":"classes/core_camera_camera.Camera.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":120,"kind":2048,"name":"screenToWorld","url":"classes/core_camera_camera.Camera.html#screenToWorld","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":121,"kind":2048,"name":"worldToScreen","url":"classes/core_camera_camera.Camera.html#worldToScreen","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":122,"kind":2048,"name":"setFOV","url":"classes/core_camera_camera.Camera.html#setFOV","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":123,"kind":2048,"name":"setFOVSmooth","url":"classes/core_camera_camera.Camera.html#setFOVSmooth","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":124,"kind":2048,"name":"resetFOV","url":"classes/core_camera_camera.Camera.html#resetFOV","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":125,"kind":2048,"name":"resetZoom","url":"classes/core_camera_camera.Camera.html#resetZoom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":126,"kind":2048,"name":"setBounds","url":"classes/core_camera_camera.Camera.html#setBounds","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":127,"kind":2048,"name":"shake","url":"classes/core_camera_camera.Camera.html#shake","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":128,"kind":2048,"name":"shakeDir","url":"classes/core_camera_camera.Camera.html#shakeDir","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":129,"kind":2048,"name":"cull","url":"classes/core_camera_camera.Camera.html#cull","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":130,"kind":2048,"name":"autoCull","url":"classes/core_camera_camera.Camera.html#autoCull","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":131,"kind":262144,"name":"defaultZoom","url":"classes/core_camera_camera.Camera.html#defaultZoom","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":132,"kind":262144,"name":"defaultFOV","url":"classes/core_camera_camera.Camera.html#defaultFOV","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/camera/camera.Camera"},{"id":133,"kind":2,"name":"core/cutscene/cutscene","url":"modules/core_cutscene_cutscene.html","classes":"tsd-kind-module"},{"id":134,"kind":128,"name":"Cutscene","url":"classes/core_cutscene_cutscene.Cutscene.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/cutscene/cutscene"},{"id":135,"kind":512,"name":"constructor","url":"classes/core_cutscene_cutscene.Cutscene.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":136,"kind":1024,"name":"config","url":"classes/core_cutscene_cutscene.Cutscene.html#config","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":137,"kind":1024,"name":"instructions","url":"classes/core_cutscene_cutscene.Cutscene.html#instructions","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":138,"kind":1024,"name":"game","url":"classes/core_cutscene_cutscene.Cutscene.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":139,"kind":1024,"name":"steps","url":"classes/core_cutscene_cutscene.Cutscene.html#steps","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":140,"kind":1024,"name":"mainObject","url":"classes/core_cutscene_cutscene.Cutscene.html#mainObject","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":141,"kind":1024,"name":"otherObjects","url":"classes/core_cutscene_cutscene.Cutscene.html#otherObjects","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":142,"kind":1024,"name":"camera","url":"classes/core_cutscene_cutscene.Cutscene.html#camera","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":143,"kind":1024,"name":"otherCameras","url":"classes/core_cutscene_cutscene.Cutscene.html#otherCameras","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":144,"kind":1024,"name":"index","url":"classes/core_cutscene_cutscene.Cutscene.html#index","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":145,"kind":1024,"name":"running","url":"classes/core_cutscene_cutscene.Cutscene.html#running","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":146,"kind":2048,"name":"init","url":"classes/core_cutscene_cutscene.Cutscene.html#init","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/cutscene/cutscene.Cutscene"},{"id":147,"kind":2048,"name":"start","url":"classes/core_cutscene_cutscene.Cutscene.html#start","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":148,"kind":2048,"name":"stop","url":"classes/core_cutscene_cutscene.Cutscene.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":149,"kind":2048,"name":"update","url":"classes/core_cutscene_cutscene.Cutscene.html#update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":150,"kind":2048,"name":"next","url":"classes/core_cutscene_cutscene.Cutscene.html#next","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":151,"kind":2048,"name":"sleep","url":"classes/core_cutscene_cutscene.Cutscene.html#sleep","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":152,"kind":2048,"name":"on","url":"classes/core_cutscene_cutscene.Cutscene.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":153,"kind":2048,"name":"off","url":"classes/core_cutscene_cutscene.Cutscene.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/cutscene/cutscene.Cutscene"},{"id":154,"kind":2,"name":"core/debug/debug","url":"modules/core_debug_debug.html","classes":"tsd-kind-module"},{"id":155,"kind":32,"name":"Debug","url":"modules/core_debug_debug.html#Debug","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/debug/debug"},{"id":156,"kind":65536,"name":"__type","url":"modules/core_debug_debug.html#Debug.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/debug/debug.Debug"},{"id":157,"kind":1024,"name":"stack","url":"modules/core_debug_debug.html#Debug.__type.stack","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":158,"kind":65536,"name":"__type","url":"modules/core_debug_debug.html#Debug.__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":159,"kind":1024,"name":"Error","url":"modules/core_debug_debug.html#Debug.__type.Error","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":160,"kind":1024,"name":"Warn","url":"modules/core_debug_debug.html#Debug.__type.Warn","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":161,"kind":1024,"name":"Log","url":"modules/core_debug_debug.html#Debug.__type.Log","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/debug/debug.Debug.__type"},{"id":162,"kind":2,"name":"core/display/displayManager","url":"modules/core_display_displayManager.html","classes":"tsd-kind-module"},{"id":163,"kind":128,"name":"DisplayManager","url":"classes/core_display_displayManager.DisplayManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/display/displayManager"},{"id":164,"kind":512,"name":"constructor","url":"classes/core_display_displayManager.DisplayManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":165,"kind":1024,"name":"game","url":"classes/core_display_displayManager.DisplayManager.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":166,"kind":1024,"name":"eventEmitter","url":"classes/core_display_displayManager.DisplayManager.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":167,"kind":2048,"name":"scale","url":"classes/core_display_displayManager.DisplayManager.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":168,"kind":2048,"name":"dprScale","url":"classes/core_display_displayManager.DisplayManager.html#dprScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":169,"kind":2048,"name":"smallCorrectionScale","url":"classes/core_display_displayManager.DisplayManager.html#smallCorrectionScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":170,"kind":2048,"name":"scaleAspectRatio","url":"classes/core_display_displayManager.DisplayManager.html#scaleAspectRatio","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":171,"kind":2048,"name":"scaleToWindow","url":"classes/core_display_displayManager.DisplayManager.html#scaleToWindow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":172,"kind":2048,"name":"resetScale","url":"classes/core_display_displayManager.DisplayManager.html#resetScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":173,"kind":2048,"name":"fullscreen","url":"classes/core_display_displayManager.DisplayManager.html#fullscreen","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":174,"kind":2048,"name":"unfullscreen","url":"classes/core_display_displayManager.DisplayManager.html#unfullscreen","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/display/displayManager.DisplayManager"},{"id":175,"kind":2,"name":"core/effect/effect","url":"modules/core_effect_effect.html","classes":"tsd-kind-module"},{"id":176,"kind":128,"name":"Effect","url":"classes/core_effect_effect.Effect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/effect/effect"},{"id":177,"kind":512,"name":"constructor","url":"classes/core_effect_effect.Effect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":178,"kind":1024,"name":"id","url":"classes/core_effect_effect.Effect.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":179,"kind":1024,"name":"shape","url":"classes/core_effect_effect.Effect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":180,"kind":1024,"name":"rangeX","url":"classes/core_effect_effect.Effect.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":181,"kind":1024,"name":"rangeY","url":"classes/core_effect_effect.Effect.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":182,"kind":1024,"name":"particleEmitter","url":"classes/core_effect_effect.Effect.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":183,"kind":1024,"name":"game","url":"classes/core_effect_effect.Effect.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":184,"kind":1024,"name":"visible","url":"classes/core_effect_effect.Effect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":185,"kind":1024,"name":"zIndex","url":"classes/core_effect_effect.Effect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":186,"kind":1024,"name":"culled","url":"classes/core_effect_effect.Effect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":187,"kind":1024,"name":"following","url":"classes/core_effect_effect.Effect.html#following","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":188,"kind":1024,"name":"randomMaxOffset","url":"classes/core_effect_effect.Effect.html#randomMaxOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/effect.Effect"},{"id":189,"kind":2048,"name":"emit","url":"classes/core_effect_effect.Effect.html#emit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":190,"kind":2048,"name":"stopEmit","url":"classes/core_effect_effect.Effect.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":191,"kind":2048,"name":"emitFor","url":"classes/core_effect_effect.Effect.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":192,"kind":2048,"name":"_draw","url":"classes/core_effect_effect.Effect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":193,"kind":2048,"name":"follow","url":"classes/core_effect_effect.Effect.html#follow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":194,"kind":2048,"name":"stopFollow","url":"classes/core_effect_effect.Effect.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/effect/effect.Effect"},{"id":195,"kind":2,"name":"core/effect/preset/explosion","url":"modules/core_effect_preset_explosion.html","classes":"tsd-kind-module"},{"id":196,"kind":128,"name":"ExplosionEffect","url":"classes/core_effect_preset_explosion.ExplosionEffect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/effect/preset/explosion"},{"id":197,"kind":512,"name":"constructor","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":198,"kind":1024,"name":"maxAge","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#maxAge","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":199,"kind":1024,"name":"speedRange","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#speedRange","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":200,"kind":2048,"name":"emit","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#emit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":201,"kind":2048,"name":"stopEmit","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":202,"kind":2048,"name":"emitFor","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":203,"kind":2048,"name":"_draw","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":204,"kind":1024,"name":"id","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":205,"kind":1024,"name":"shape","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":206,"kind":1024,"name":"rangeX","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":207,"kind":1024,"name":"rangeY","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":208,"kind":1024,"name":"particleEmitter","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":209,"kind":1024,"name":"game","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":210,"kind":1024,"name":"visible","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":211,"kind":1024,"name":"zIndex","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":212,"kind":1024,"name":"culled","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":213,"kind":1024,"name":"following","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#following","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":214,"kind":1024,"name":"randomMaxOffset","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#randomMaxOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":215,"kind":2048,"name":"follow","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#follow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":216,"kind":2048,"name":"stopFollow","url":"classes/core_effect_preset_explosion.ExplosionEffect.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/explosion.ExplosionEffect"},{"id":217,"kind":2,"name":"core/effect/preset/smoke","url":"modules/core_effect_preset_smoke.html","classes":"tsd-kind-module"},{"id":218,"kind":128,"name":"SmokeEffect","url":"classes/core_effect_preset_smoke.SmokeEffect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/effect/preset/smoke"},{"id":219,"kind":512,"name":"constructor","url":"classes/core_effect_preset_smoke.SmokeEffect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":220,"kind":1024,"name":"maxAge","url":"classes/core_effect_preset_smoke.SmokeEffect.html#maxAge","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":221,"kind":1024,"name":"speedRangeX","url":"classes/core_effect_preset_smoke.SmokeEffect.html#speedRangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":222,"kind":1024,"name":"speedRangeY","url":"classes/core_effect_preset_smoke.SmokeEffect.html#speedRangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":223,"kind":1024,"name":"interval","url":"classes/core_effect_preset_smoke.SmokeEffect.html#interval","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":224,"kind":2048,"name":"emit","url":"classes/core_effect_preset_smoke.SmokeEffect.html#emit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":225,"kind":2048,"name":"stopEmit","url":"classes/core_effect_preset_smoke.SmokeEffect.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":226,"kind":2048,"name":"emitFor","url":"classes/core_effect_preset_smoke.SmokeEffect.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":227,"kind":2048,"name":"_draw","url":"classes/core_effect_preset_smoke.SmokeEffect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":228,"kind":1024,"name":"id","url":"classes/core_effect_preset_smoke.SmokeEffect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":229,"kind":1024,"name":"shape","url":"classes/core_effect_preset_smoke.SmokeEffect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":230,"kind":1024,"name":"rangeX","url":"classes/core_effect_preset_smoke.SmokeEffect.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":231,"kind":1024,"name":"rangeY","url":"classes/core_effect_preset_smoke.SmokeEffect.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":232,"kind":1024,"name":"particleEmitter","url":"classes/core_effect_preset_smoke.SmokeEffect.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":233,"kind":1024,"name":"game","url":"classes/core_effect_preset_smoke.SmokeEffect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":234,"kind":1024,"name":"visible","url":"classes/core_effect_preset_smoke.SmokeEffect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":235,"kind":1024,"name":"zIndex","url":"classes/core_effect_preset_smoke.SmokeEffect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":236,"kind":1024,"name":"culled","url":"classes/core_effect_preset_smoke.SmokeEffect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":237,"kind":1024,"name":"following","url":"classes/core_effect_preset_smoke.SmokeEffect.html#following","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":238,"kind":1024,"name":"randomMaxOffset","url":"classes/core_effect_preset_smoke.SmokeEffect.html#randomMaxOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":239,"kind":2048,"name":"follow","url":"classes/core_effect_preset_smoke.SmokeEffect.html#follow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":240,"kind":2048,"name":"stopFollow","url":"classes/core_effect_preset_smoke.SmokeEffect.html#stopFollow","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/effect/preset/smoke.SmokeEffect"},{"id":241,"kind":2,"name":"core/events/eventEmitter","url":"modules/core_events_eventEmitter.html","classes":"tsd-kind-module"},{"id":242,"kind":128,"name":"EventEmitter","url":"classes/core_events_eventEmitter.EventEmitter.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/events/eventEmitter"},{"id":243,"kind":512,"name":"constructor","url":"classes/core_events_eventEmitter.EventEmitter.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":244,"kind":1024,"name":"callbacks","url":"classes/core_events_eventEmitter.EventEmitter.html#callbacks","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":245,"kind":65536,"name":"__type","url":"classes/core_events_eventEmitter.EventEmitter.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":246,"kind":2048,"name":"on","url":"classes/core_events_eventEmitter.EventEmitter.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":247,"kind":2048,"name":"off","url":"classes/core_events_eventEmitter.EventEmitter.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":248,"kind":2048,"name":"emit","url":"classes/core_events_eventEmitter.EventEmitter.html#emit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/events/eventEmitter.EventEmitter"},{"id":249,"kind":2,"name":"core/events/events","url":"modules/core_events_events.html","classes":"tsd-kind-module"},{"id":250,"kind":32,"name":"EVENTS","url":"modules/core_events_events.html#EVENTS","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/events"},{"id":251,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/events.EVENTS"},{"id":252,"kind":1024,"name":"BUTTON","url":"modules/core_events_events.html#EVENTS.__type.BUTTON","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":253,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":254,"kind":1024,"name":"CLICK","url":"modules/core_events_events.html#EVENTS.__type.__type-1.CLICK","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":255,"kind":1024,"name":"HOVER","url":"modules/core_events_events.html#EVENTS.__type.__type-1.HOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":256,"kind":1024,"name":"NOTHOVER","url":"modules/core_events_events.html#EVENTS.__type.__type-1.NOTHOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":257,"kind":1024,"name":"GROUP","url":"modules/core_events_events.html#EVENTS.__type.GROUP","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":258,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-5","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":259,"kind":1024,"name":"ADD","url":"modules/core_events_events.html#EVENTS.__type.__type-5.ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":260,"kind":1024,"name":"REMOVE","url":"modules/core_events_events.html#EVENTS.__type.__type-5.REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":261,"kind":1024,"name":"CUTSCENE","url":"modules/core_events_events.html#EVENTS.__type.CUTSCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":262,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-2","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":263,"kind":1024,"name":"START","url":"modules/core_events_events.html#EVENTS.__type.__type-2.START","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":264,"kind":1024,"name":"END","url":"modules/core_events_events.html#EVENTS.__type.__type-2.END","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":265,"kind":1024,"name":"NEXT","url":"modules/core_events_events.html#EVENTS.__type.__type-2.NEXT","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":266,"kind":1024,"name":"GAME","url":"modules/core_events_events.html#EVENTS.__type.GAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":267,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-4","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":268,"kind":1024,"name":"FOCUS","url":"modules/core_events_events.html#EVENTS.__type.__type-4.FOCUS-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":269,"kind":1024,"name":"BLUR","url":"modules/core_events_events.html#EVENTS.__type.__type-4.BLUR-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":270,"kind":1024,"name":"START","url":"modules/core_events_events.html#EVENTS.__type.__type-4.START-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":271,"kind":1024,"name":"STOP","url":"modules/core_events_events.html#EVENTS.__type.__type-4.STOP","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":272,"kind":1024,"name":"LOAD_BEGIN","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOAD_BEGIN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":273,"kind":1024,"name":"LOAD_FINISH","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOAD_FINISH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":274,"kind":1024,"name":"SCENE_ADD","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SCENE_ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":275,"kind":1024,"name":"SCENE_REMOVE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SCENE_REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":276,"kind":1024,"name":"LOAD_SCENE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOAD_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":277,"kind":1024,"name":"SWITCH_SCENE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SWITCH_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":278,"kind":1024,"name":"SHOW_SCENE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SHOW_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":279,"kind":1024,"name":"DRAW_SPLASH","url":"modules/core_events_events.html#EVENTS.__type.__type-4.DRAW_SPLASH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":280,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_events.html#EVENTS.__type.__type-4.CLEAR_FRAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":281,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SET_SCALE-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":282,"kind":1024,"name":"SET_BACKGROUND","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SET_BACKGROUND","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":283,"kind":1024,"name":"SYNC_CACHE","url":"modules/core_events_events.html#EVENTS.__type.__type-4.SYNC_CACHE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":284,"kind":1024,"name":"LOCK_POINTER","url":"modules/core_events_events.html#EVENTS.__type.__type-4.LOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":285,"kind":1024,"name":"UNLOCK_POINTER","url":"modules/core_events_events.html#EVENTS.__type.__type-4.UNLOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":286,"kind":1024,"name":"CONTEXT_LOST","url":"modules/core_events_events.html#EVENTS.__type.__type-4.CONTEXT_LOST","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":287,"kind":1024,"name":"CONTEXT_RESTORED","url":"modules/core_events_events.html#EVENTS.__type.__type-4.CONTEXT_RESTORED","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":288,"kind":1024,"name":"RENDERER","url":"modules/core_events_events.html#EVENTS.__type.RENDERER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":289,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-6","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":290,"kind":1024,"name":"PIPELINE_POOL","url":"modules/core_events_events.html#EVENTS.__type.__type-6.PIPELINE_POOL","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":291,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_events.html#EVENTS.__type.__type-6.CLEAR_FRAME-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":292,"kind":1024,"name":"DISPLAY","url":"modules/core_events_events.html#EVENTS.__type.DISPLAY","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":293,"kind":65536,"name":"__type","url":"modules/core_events_events.html#EVENTS.__type.__type-3","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type"},{"id":294,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_events.html#EVENTS.__type.__type-3.SET_SCALE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":295,"kind":1024,"name":"FULLSCREEN","url":"modules/core_events_events.html#EVENTS.__type.__type-3.FULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":296,"kind":1024,"name":"UNFULLSCREEN","url":"modules/core_events_events.html#EVENTS.__type.__type-3.UNFULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":297,"kind":1024,"name":"FOCUS","url":"modules/core_events_events.html#EVENTS.__type.__type-3.FOCUS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":298,"kind":1024,"name":"BLUR","url":"modules/core_events_events.html#EVENTS.__type.__type-3.BLUR","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/events.EVENTS.__type.__type"},{"id":299,"kind":2,"name":"core/events/main/displayEvents","url":"modules/core_events_main_displayEvents.html","classes":"tsd-kind-module"},{"id":300,"kind":32,"name":"DisplayEvents","url":"modules/core_events_main_displayEvents.html#DisplayEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/main/displayEvents"},{"id":301,"kind":65536,"name":"__type","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/main/displayEvents.DisplayEvents"},{"id":302,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.SET_SCALE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":303,"kind":1024,"name":"FULLSCREEN","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.FULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":304,"kind":1024,"name":"UNFULLSCREEN","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.UNFULLSCREEN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":305,"kind":1024,"name":"FOCUS","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.FOCUS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":306,"kind":1024,"name":"BLUR","url":"modules/core_events_main_displayEvents.html#DisplayEvents.__type.BLUR","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/displayEvents.DisplayEvents.__type"},{"id":307,"kind":2,"name":"core/events/main/gameEvents","url":"modules/core_events_main_gameEvents.html","classes":"tsd-kind-module"},{"id":308,"kind":32,"name":"GameEvents","url":"modules/core_events_main_gameEvents.html#GameEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/main/gameEvents"},{"id":309,"kind":65536,"name":"__type","url":"modules/core_events_main_gameEvents.html#GameEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/main/gameEvents.GameEvents"},{"id":310,"kind":1024,"name":"FOCUS","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.FOCUS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":311,"kind":1024,"name":"BLUR","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.BLUR","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":312,"kind":1024,"name":"START","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.START","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":313,"kind":1024,"name":"STOP","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.STOP","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":314,"kind":1024,"name":"LOAD_BEGIN","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOAD_BEGIN","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":315,"kind":1024,"name":"LOAD_FINISH","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOAD_FINISH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":316,"kind":1024,"name":"SCENE_ADD","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SCENE_ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":317,"kind":1024,"name":"SCENE_REMOVE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SCENE_REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":318,"kind":1024,"name":"LOAD_SCENE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOAD_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":319,"kind":1024,"name":"SWITCH_SCENE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SWITCH_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":320,"kind":1024,"name":"SHOW_SCENE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SHOW_SCENE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":321,"kind":1024,"name":"DRAW_SPLASH","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.DRAW_SPLASH","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":322,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.CLEAR_FRAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":323,"kind":1024,"name":"SET_SCALE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SET_SCALE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":324,"kind":1024,"name":"SET_BACKGROUND","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SET_BACKGROUND","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":325,"kind":1024,"name":"SYNC_CACHE","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.SYNC_CACHE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":326,"kind":1024,"name":"LOCK_POINTER","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.LOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":327,"kind":1024,"name":"UNLOCK_POINTER","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.UNLOCK_POINTER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":328,"kind":1024,"name":"CONTEXT_LOST","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.CONTEXT_LOST","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":329,"kind":1024,"name":"CONTEXT_RESTORED","url":"modules/core_events_main_gameEvents.html#GameEvents.__type.CONTEXT_RESTORED","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/gameEvents.GameEvents.__type"},{"id":330,"kind":2,"name":"core/events/main/rendererEvents","url":"modules/core_events_main_rendererEvents.html","classes":"tsd-kind-module"},{"id":331,"kind":32,"name":"RendererEvents","url":"modules/core_events_main_rendererEvents.html#RendererEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/main/rendererEvents"},{"id":332,"kind":65536,"name":"__type","url":"modules/core_events_main_rendererEvents.html#RendererEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/main/rendererEvents.RendererEvents"},{"id":333,"kind":1024,"name":"PIPELINE_POOL","url":"modules/core_events_main_rendererEvents.html#RendererEvents.__type.PIPELINE_POOL","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/rendererEvents.RendererEvents.__type"},{"id":334,"kind":1024,"name":"CLEAR_FRAME","url":"modules/core_events_main_rendererEvents.html#RendererEvents.__type.CLEAR_FRAME","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/main/rendererEvents.RendererEvents.__type"},{"id":335,"kind":2,"name":"core/events/other/buttonEvents","url":"modules/core_events_other_buttonEvents.html","classes":"tsd-kind-module"},{"id":336,"kind":32,"name":"ButtonEvents","url":"modules/core_events_other_buttonEvents.html#ButtonEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/other/buttonEvents"},{"id":337,"kind":65536,"name":"__type","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/other/buttonEvents.ButtonEvents"},{"id":338,"kind":1024,"name":"CLICK","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type.CLICK","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/buttonEvents.ButtonEvents.__type"},{"id":339,"kind":1024,"name":"HOVER","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type.HOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/buttonEvents.ButtonEvents.__type"},{"id":340,"kind":1024,"name":"NOTHOVER","url":"modules/core_events_other_buttonEvents.html#ButtonEvents.__type.NOTHOVER","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/buttonEvents.ButtonEvents.__type"},{"id":341,"kind":2,"name":"core/events/other/cutsceneEvents","url":"modules/core_events_other_cutsceneEvents.html","classes":"tsd-kind-module"},{"id":342,"kind":32,"name":"CutsceneEvents","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/other/cutsceneEvents"},{"id":343,"kind":65536,"name":"__type","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/other/cutsceneEvents.CutsceneEvents"},{"id":344,"kind":1024,"name":"START","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type.START","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/cutsceneEvents.CutsceneEvents.__type"},{"id":345,"kind":1024,"name":"END","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type.END","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/cutsceneEvents.CutsceneEvents.__type"},{"id":346,"kind":1024,"name":"NEXT","url":"modules/core_events_other_cutsceneEvents.html#CutsceneEvents.__type.NEXT","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/cutsceneEvents.CutsceneEvents.__type"},{"id":347,"kind":2,"name":"core/events/other/groupEvents","url":"modules/core_events_other_groupEvents.html","classes":"tsd-kind-module"},{"id":348,"kind":32,"name":"GroupEvents","url":"modules/core_events_other_groupEvents.html#GroupEvents","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/events/other/groupEvents"},{"id":349,"kind":65536,"name":"__type","url":"modules/core_events_other_groupEvents.html#GroupEvents.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/events/other/groupEvents.GroupEvents"},{"id":350,"kind":1024,"name":"ADD","url":"modules/core_events_other_groupEvents.html#GroupEvents.__type.ADD","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/groupEvents.GroupEvents.__type"},{"id":351,"kind":1024,"name":"REMOVE","url":"modules/core_events_other_groupEvents.html#GroupEvents.__type.REMOVE","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/events/other/groupEvents.GroupEvents.__type"},{"id":352,"kind":2,"name":"core/game","url":"modules/core_game.html","classes":"tsd-kind-module"},{"id":353,"kind":128,"name":"Game","url":"classes/core_game.Game.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/game"},{"id":354,"kind":1024,"name":"versionInfo","url":"classes/core_game.Game.html#versionInfo","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-static","parent":"core/game.Game"},{"id":355,"kind":512,"name":"constructor","url":"classes/core_game.Game.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/game.Game"},{"id":356,"kind":1024,"name":"config","url":"classes/core_game.Game.html#config","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":357,"kind":1024,"name":"canvas","url":"classes/core_game.Game.html#canvas","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":358,"kind":1024,"name":"renderer","url":"classes/core_game.Game.html#renderer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":359,"kind":1024,"name":"stack","url":"classes/core_game.Game.html#stack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":360,"kind":1024,"name":"animationFrame","url":"classes/core_game.Game.html#animationFrame","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":361,"kind":1024,"name":"cacheManager","url":"classes/core_game.Game.html#cacheManager","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":362,"kind":1024,"name":"deltaTimeArray","url":"classes/core_game.Game.html#deltaTimeArray","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":363,"kind":1024,"name":"deltaTime","url":"classes/core_game.Game.html#deltaTime","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":364,"kind":1024,"name":"smoothDeltaTime","url":"classes/core_game.Game.html#smoothDeltaTime","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":365,"kind":1024,"name":"oldTime","url":"classes/core_game.Game.html#oldTime","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":366,"kind":1024,"name":"now","url":"classes/core_game.Game.html#now","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":367,"kind":1024,"name":"fps","url":"classes/core_game.Game.html#fps","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":368,"kind":1024,"name":"isInFullscreen","url":"classes/core_game.Game.html#isInFullscreen","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":369,"kind":1024,"name":"oldWidth","url":"classes/core_game.Game.html#oldWidth","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":370,"kind":1024,"name":"oldHeight","url":"classes/core_game.Game.html#oldHeight","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":371,"kind":1024,"name":"scenes","url":"classes/core_game.Game.html#scenes","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":372,"kind":65536,"name":"__type","url":"classes/core_game.Game.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/game.Game"},{"id":373,"kind":2048,"name":"add","url":"classes/core_game.Game.html#__type.add","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/game.Game.__type"},{"id":374,"kind":2048,"name":"remove","url":"classes/core_game.Game.html#__type.remove","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/game.Game.__type"},{"id":375,"kind":1024,"name":"isRendering","url":"classes/core_game.Game.html#isRendering","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":376,"kind":1024,"name":"isLoaded","url":"classes/core_game.Game.html#isLoaded","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":377,"kind":1024,"name":"splashScreen","url":"classes/core_game.Game.html#splashScreen","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":378,"kind":1024,"name":"eventEmitter","url":"classes/core_game.Game.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":379,"kind":1024,"name":"pluginManager","url":"classes/core_game.Game.html#pluginManager","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":380,"kind":1024,"name":"displayManager","url":"classes/core_game.Game.html#displayManager","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":381,"kind":1024,"name":"browser","url":"classes/core_game.Game.html#browser","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/game.Game"},{"id":382,"kind":2048,"name":"start","url":"classes/core_game.Game.html#start","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":383,"kind":2048,"name":"stop","url":"classes/core_game.Game.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":384,"kind":2048,"name":"loop","url":"classes/core_game.Game.html#loop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":385,"kind":2048,"name":"drawSplashScreen","url":"classes/core_game.Game.html#drawSplashScreen","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":386,"kind":2048,"name":"hideSplashScreen","url":"classes/core_game.Game.html#hideSplashScreen","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":387,"kind":2048,"name":"sleep","url":"classes/core_game.Game.html#sleep","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/game.Game"},{"id":388,"kind":2048,"name":"setScale","url":"classes/core_game.Game.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":389,"kind":2048,"name":"setBackground","url":"classes/core_game.Game.html#setBackground","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":390,"kind":2048,"name":"switchScene","url":"classes/core_game.Game.html#switchScene","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":391,"kind":2048,"name":"showScene","url":"classes/core_game.Game.html#showScene","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":392,"kind":2048,"name":"lockPointer","url":"classes/core_game.Game.html#lockPointer","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":393,"kind":2048,"name":"unlockPointer","url":"classes/core_game.Game.html#unlockPointer","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/game.Game"},{"id":394,"kind":2,"name":"core/gameobjects/circle","url":"modules/core_gameobjects_circle.html","classes":"tsd-kind-module"},{"id":395,"kind":128,"name":"Circle","url":"classes/core_gameobjects_circle.Circle.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/circle"},{"id":396,"kind":512,"name":"constructor","url":"classes/core_gameobjects_circle.Circle.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/circle.Circle"},{"id":397,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_circle.Circle.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/circle.Circle"},{"id":398,"kind":1024,"name":"texture","url":"classes/core_gameobjects_circle.Circle.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":399,"kind":1024,"name":"visible","url":"classes/core_gameobjects_circle.Circle.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":400,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_circle.Circle.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":401,"kind":1024,"name":"culled","url":"classes/core_gameobjects_circle.Circle.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":402,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_circle.Circle.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":403,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_circle.Circle.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":404,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_circle.Circle.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":405,"kind":1024,"name":"id","url":"classes/core_gameobjects_circle.Circle.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":406,"kind":1024,"name":"shape","url":"classes/core_gameobjects_circle.Circle.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":407,"kind":1024,"name":"position","url":"classes/core_gameobjects_circle.Circle.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":408,"kind":1024,"name":"w","url":"classes/core_gameobjects_circle.Circle.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":409,"kind":1024,"name":"h","url":"classes/core_gameobjects_circle.Circle.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":410,"kind":1024,"name":"r","url":"classes/core_gameobjects_circle.Circle.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":411,"kind":1024,"name":"options","url":"classes/core_gameobjects_circle.Circle.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":412,"kind":1024,"name":"game","url":"classes/core_gameobjects_circle.Circle.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":413,"kind":1024,"name":"scene","url":"classes/core_gameobjects_circle.Circle.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":414,"kind":1024,"name":"collider","url":"classes/core_gameobjects_circle.Circle.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":415,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_circle.Circle.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":416,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_circle.Circle.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":417,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_circle.Circle.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":418,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_circle.Circle.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":419,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_circle.Circle.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":420,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_circle.Circle.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":421,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_circle.Circle.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":422,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_circle.Circle.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":423,"kind":1024,"name":"physics","url":"classes/core_gameobjects_circle.Circle.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":424,"kind":65536,"name":"__type","url":"classes/core_gameobjects_circle.Circle.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/circle.Circle"},{"id":425,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_circle.Circle.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/circle.Circle.__type"},{"id":426,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_circle.Circle.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/circle.Circle.__type"},{"id":427,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_circle.Circle.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/circle.Circle.__type"},{"id":428,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_circle.Circle.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":429,"kind":2048,"name":"_update","url":"classes/core_gameobjects_circle.Circle.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":430,"kind":2048,"name":"setType","url":"classes/core_gameobjects_circle.Circle.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":431,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_circle.Circle.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":432,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_circle.Circle.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":433,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_circle.Circle.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":434,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_circle.Circle.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":435,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_circle.Circle.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":436,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_circle.Circle.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":437,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_circle.Circle.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":438,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_circle.Circle.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":439,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_circle.Circle.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":440,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_circle.Circle.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":441,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_circle.Circle.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":442,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_circle.Circle.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":443,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_circle.Circle.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":444,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_circle.Circle.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":445,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_circle.Circle.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":446,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_circle.Circle.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":447,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_circle.Circle.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":448,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_circle.Circle.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":449,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_circle.Circle.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":450,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_circle.Circle.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":451,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_circle.Circle.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":452,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_circle.Circle.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":453,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_circle.Circle.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/circle.Circle"},{"id":454,"kind":2,"name":"core/gameobjects/gameObject","url":"modules/core_gameobjects_gameObject.html","classes":"tsd-kind-module"},{"id":455,"kind":128,"name":"GameObject","url":"classes/core_gameobjects_gameObject.GameObject.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/gameobjects/gameObject"},{"id":456,"kind":512,"name":"constructor","url":"classes/core_gameobjects_gameObject.GameObject.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite","parent":"core/gameobjects/gameObject.GameObject"},{"id":457,"kind":1024,"name":"texture","url":"classes/core_gameobjects_gameObject.GameObject.html#texture","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":458,"kind":1024,"name":"visible","url":"classes/core_gameobjects_gameObject.GameObject.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":459,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_gameObject.GameObject.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":460,"kind":1024,"name":"culled","url":"classes/core_gameobjects_gameObject.GameObject.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":461,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_gameObject.GameObject.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":462,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_gameObject.GameObject.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":463,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_gameObject.GameObject.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":464,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_gameObject.GameObject.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":465,"kind":1024,"name":"id","url":"classes/core_gameobjects_gameObject.GameObject.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":466,"kind":1024,"name":"shape","url":"classes/core_gameobjects_gameObject.GameObject.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":467,"kind":1024,"name":"position","url":"classes/core_gameobjects_gameObject.GameObject.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":468,"kind":1024,"name":"w","url":"classes/core_gameobjects_gameObject.GameObject.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":469,"kind":1024,"name":"h","url":"classes/core_gameobjects_gameObject.GameObject.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":470,"kind":1024,"name":"r","url":"classes/core_gameobjects_gameObject.GameObject.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":471,"kind":1024,"name":"options","url":"classes/core_gameobjects_gameObject.GameObject.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":472,"kind":1024,"name":"game","url":"classes/core_gameobjects_gameObject.GameObject.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":473,"kind":1024,"name":"scene","url":"classes/core_gameobjects_gameObject.GameObject.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":474,"kind":1024,"name":"collider","url":"classes/core_gameobjects_gameObject.GameObject.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":475,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_gameObject.GameObject.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":476,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":477,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_gameObject.GameObject.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":478,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_gameObject.GameObject.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":479,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_gameObject.GameObject.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":480,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_gameObject.GameObject.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":481,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_gameObject.GameObject.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":482,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_gameObject.GameObject.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":483,"kind":1024,"name":"physics","url":"classes/core_gameobjects_gameObject.GameObject.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":484,"kind":65536,"name":"__type","url":"classes/core_gameobjects_gameObject.GameObject.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/gameObject.GameObject"},{"id":485,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_gameObject.GameObject.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/gameObject.GameObject.__type"},{"id":486,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/gameObject.GameObject.__type"},{"id":487,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_gameObject.GameObject.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/gameObject.GameObject.__type"},{"id":488,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_gameObject.GameObject.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":489,"kind":2048,"name":"_update","url":"classes/core_gameobjects_gameObject.GameObject.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":490,"kind":2048,"name":"setType","url":"classes/core_gameobjects_gameObject.GameObject.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":491,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_gameObject.GameObject.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":492,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_gameObject.GameObject.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":493,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_gameObject.GameObject.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":494,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_gameObject.GameObject.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":495,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_gameObject.GameObject.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":496,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_gameObject.GameObject.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":497,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_gameObject.GameObject.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":498,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_gameObject.GameObject.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":499,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_gameObject.GameObject.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":500,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_gameObject.GameObject.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":501,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_gameObject.GameObject.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":502,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_gameObject.GameObject.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":503,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":504,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_gameObject.GameObject.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":505,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_gameObject.GameObject.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":506,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_gameObject.GameObject.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":507,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_gameObject.GameObject.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":508,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_gameObject.GameObject.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":509,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_gameObject.GameObject.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":510,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_gameObject.GameObject.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":511,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_gameObject.GameObject.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":512,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_gameObject.GameObject.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":513,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_gameObject.GameObject.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/gameObject.GameObject"},{"id":514,"kind":2,"name":"core/gameobjects/misc/canvasModulate","url":"modules/core_gameobjects_misc_canvasModulate.html","classes":"tsd-kind-module"},{"id":515,"kind":128,"name":"CanvasModulate","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/misc/canvasModulate"},{"id":516,"kind":512,"name":"constructor","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":517,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":518,"kind":1024,"name":"texture","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":519,"kind":1024,"name":"visible","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":520,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":521,"kind":1024,"name":"culled","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":522,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":523,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":524,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":525,"kind":1024,"name":"id","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":526,"kind":1024,"name":"shape","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":527,"kind":1024,"name":"position","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":528,"kind":1024,"name":"w","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":529,"kind":1024,"name":"h","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":530,"kind":1024,"name":"r","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":531,"kind":1024,"name":"options","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":532,"kind":1024,"name":"game","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":533,"kind":1024,"name":"scene","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":534,"kind":1024,"name":"collider","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":535,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":536,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":537,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":538,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":539,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":540,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":541,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":542,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":543,"kind":1024,"name":"physics","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":544,"kind":65536,"name":"__type","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":545,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate.__type"},{"id":546,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate.__type"},{"id":547,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate.__type"},{"id":548,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":549,"kind":2048,"name":"_update","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":550,"kind":2048,"name":"setType","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":551,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":552,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":553,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":554,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":555,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":556,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":557,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":558,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":559,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":560,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":561,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":562,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":563,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":564,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":565,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":566,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":567,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":568,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":569,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":570,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":571,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":572,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":573,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/misc/canvasModulate.CanvasModulate"},{"id":574,"kind":2,"name":"core/gameobjects/particles/components/containedParticleComponent","url":"modules/core_gameobjects_particles_components_containedParticleComponent.html","classes":"tsd-kind-module"},{"id":575,"kind":128,"name":"ContainedParticleComponent","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/particles/components/containedParticleComponent"},{"id":576,"kind":512,"name":"constructor","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/components/containedParticleComponent.ContainedParticleComponent"},{"id":577,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/components/containedParticleComponent.ContainedParticleComponent"},{"id":578,"kind":1024,"name":"restitution","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html#restitution","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/components/containedParticleComponent.ContainedParticleComponent"},{"id":579,"kind":2048,"name":"update","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html#update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/components/containedParticleComponent.ContainedParticleComponent"},{"id":580,"kind":1024,"name":"game","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/components/containedParticleComponent.ContainedParticleComponent"},{"id":581,"kind":1024,"name":"scene","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/components/containedParticleComponent.ContainedParticleComponent"},{"id":582,"kind":1024,"name":"particleEmitter","url":"classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/components/containedParticleComponent.ContainedParticleComponent"},{"id":583,"kind":2,"name":"core/gameobjects/particles/components/gravityParticleComponent","url":"modules/core_gameobjects_particles_components_gravityParticleComponent.html","classes":"tsd-kind-module"},{"id":584,"kind":128,"name":"GravityParticleComponent","url":"classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/particles/components/gravityParticleComponent"},{"id":585,"kind":512,"name":"constructor","url":"classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/components/gravityParticleComponent.GravityParticleComponent"},{"id":586,"kind":1024,"name":"gravity","url":"classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html#gravity","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/components/gravityParticleComponent.GravityParticleComponent"},{"id":587,"kind":2048,"name":"update","url":"classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html#update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/components/gravityParticleComponent.GravityParticleComponent"},{"id":588,"kind":1024,"name":"game","url":"classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/components/gravityParticleComponent.GravityParticleComponent"},{"id":589,"kind":1024,"name":"scene","url":"classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/components/gravityParticleComponent.GravityParticleComponent"},{"id":590,"kind":1024,"name":"particleEmitter","url":"classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/components/gravityParticleComponent.GravityParticleComponent"},{"id":591,"kind":2,"name":"core/gameobjects/particles/particle","url":"modules/core_gameobjects_particles_particle.html","classes":"tsd-kind-module"},{"id":592,"kind":128,"name":"Particle","url":"classes/core_gameobjects_particles_particle.Particle.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/particles/particle"},{"id":593,"kind":512,"name":"constructor","url":"classes/core_gameobjects_particles_particle.Particle.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/particle.Particle"},{"id":594,"kind":1024,"name":"floatVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#floatVelocity","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":595,"kind":1024,"name":"originalFillColorOrIMGPath","url":"classes/core_gameobjects_particles_particle.Particle.html#originalFillColorOrIMGPath","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":596,"kind":1024,"name":"age","url":"classes/core_gameobjects_particles_particle.Particle.html#age","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":597,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_particles_particle.Particle.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/particle.Particle"},{"id":598,"kind":2048,"name":"_update","url":"classes/core_gameobjects_particles_particle.Particle.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/particles/particle.Particle"},{"id":599,"kind":2048,"name":"setImagePath","url":"classes/core_gameobjects_particles_particle.Particle.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":600,"kind":1024,"name":"texture","url":"classes/core_gameobjects_particles_particle.Particle.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":601,"kind":1024,"name":"visible","url":"classes/core_gameobjects_particles_particle.Particle.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":602,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_particles_particle.Particle.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":603,"kind":1024,"name":"culled","url":"classes/core_gameobjects_particles_particle.Particle.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":604,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_particles_particle.Particle.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":605,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_particles_particle.Particle.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":606,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_particles_particle.Particle.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":607,"kind":1024,"name":"id","url":"classes/core_gameobjects_particles_particle.Particle.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":608,"kind":1024,"name":"shape","url":"classes/core_gameobjects_particles_particle.Particle.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":609,"kind":1024,"name":"position","url":"classes/core_gameobjects_particles_particle.Particle.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":610,"kind":1024,"name":"w","url":"classes/core_gameobjects_particles_particle.Particle.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":611,"kind":1024,"name":"h","url":"classes/core_gameobjects_particles_particle.Particle.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":612,"kind":1024,"name":"r","url":"classes/core_gameobjects_particles_particle.Particle.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":613,"kind":1024,"name":"options","url":"classes/core_gameobjects_particles_particle.Particle.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":614,"kind":1024,"name":"game","url":"classes/core_gameobjects_particles_particle.Particle.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":615,"kind":1024,"name":"scene","url":"classes/core_gameobjects_particles_particle.Particle.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":616,"kind":1024,"name":"collider","url":"classes/core_gameobjects_particles_particle.Particle.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":617,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_particles_particle.Particle.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":618,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":619,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_particles_particle.Particle.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":620,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_particles_particle.Particle.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":621,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_particles_particle.Particle.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":622,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_particles_particle.Particle.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":623,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_particles_particle.Particle.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":624,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_particles_particle.Particle.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":625,"kind":1024,"name":"physics","url":"classes/core_gameobjects_particles_particle.Particle.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":626,"kind":65536,"name":"__type","url":"classes/core_gameobjects_particles_particle.Particle.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/particles/particle.Particle"},{"id":627,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_particles_particle.Particle.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/particles/particle.Particle.__type"},{"id":628,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/particles/particle.Particle.__type"},{"id":629,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_particles_particle.Particle.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/particles/particle.Particle.__type"},{"id":630,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_particles_particle.Particle.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":631,"kind":2048,"name":"setType","url":"classes/core_gameobjects_particles_particle.Particle.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":632,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_particles_particle.Particle.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":633,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_particles_particle.Particle.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":634,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_particles_particle.Particle.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":635,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_particles_particle.Particle.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":636,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":637,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_particles_particle.Particle.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":638,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_particles_particle.Particle.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":639,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":640,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_particles_particle.Particle.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":641,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_particles_particle.Particle.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":642,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_particles_particle.Particle.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":643,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_particles_particle.Particle.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":644,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":645,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_particles_particle.Particle.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":646,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_particles_particle.Particle.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":647,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_particles_particle.Particle.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":648,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_particles_particle.Particle.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":649,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_particles_particle.Particle.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":650,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_particles_particle.Particle.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":651,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_particles_particle.Particle.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":652,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_particles_particle.Particle.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":653,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_particles_particle.Particle.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":654,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_particles_particle.Particle.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/particles/particle.Particle"},{"id":655,"kind":2,"name":"core/gameobjects/particles/particleComponent","url":"modules/core_gameobjects_particles_particleComponent.html","classes":"tsd-kind-module"},{"id":656,"kind":128,"name":"ParticleComponent","url":"classes/core_gameobjects_particles_particleComponent.ParticleComponent.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/particles/particleComponent"},{"id":657,"kind":512,"name":"constructor","url":"classes/core_gameobjects_particles_particleComponent.ParticleComponent.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/gameobjects/particles/particleComponent.ParticleComponent"},{"id":658,"kind":1024,"name":"game","url":"classes/core_gameobjects_particles_particleComponent.ParticleComponent.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleComponent.ParticleComponent"},{"id":659,"kind":1024,"name":"scene","url":"classes/core_gameobjects_particles_particleComponent.ParticleComponent.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleComponent.ParticleComponent"},{"id":660,"kind":1024,"name":"particleEmitter","url":"classes/core_gameobjects_particles_particleComponent.ParticleComponent.html#particleEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleComponent.ParticleComponent"},{"id":661,"kind":2048,"name":"update","url":"classes/core_gameobjects_particles_particleComponent.ParticleComponent.html#update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleComponent.ParticleComponent"},{"id":662,"kind":2,"name":"core/gameobjects/particles/particleEmitter","url":"modules/core_gameobjects_particles_particleEmitter.html","classes":"tsd-kind-module"},{"id":663,"kind":128,"name":"ParticleEmitter","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/particles/particleEmitter"},{"id":664,"kind":512,"name":"constructor","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":665,"kind":1024,"name":"id","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":666,"kind":1024,"name":"particle","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#particle","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":667,"kind":1024,"name":"rangeX","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#rangeX","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":668,"kind":1024,"name":"rangeY","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#rangeY","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":669,"kind":1024,"name":"amount","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#amount","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":670,"kind":1024,"name":"list","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#list","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":671,"kind":1024,"name":"game","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":672,"kind":1024,"name":"scene","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":673,"kind":1024,"name":"emitting","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#emitting","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":674,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":675,"kind":1024,"name":"floatRangeX","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#floatRangeX","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":676,"kind":1024,"name":"floatRangeY","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#floatRangeY","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":677,"kind":2048,"name":"create","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#create","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":678,"kind":2048,"name":"createOne","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#createOne","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":679,"kind":2048,"name":"emit","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#emit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":680,"kind":2048,"name":"stopEmit","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#stopEmit","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":681,"kind":2048,"name":"emitFor","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#emitFor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":682,"kind":2048,"name":"setRange","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setRange","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":683,"kind":2048,"name":"keepEmitting","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#keepEmitting","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":684,"kind":2048,"name":"offloadMaxAmount","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#offloadMaxAmount","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":685,"kind":2048,"name":"offloadBounds","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#offloadBounds","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":686,"kind":2048,"name":"offloadMaxAge","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#offloadMaxAge","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":687,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":688,"kind":2048,"name":"wobble","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#wobble","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":689,"kind":2048,"name":"float","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#float","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":690,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":691,"kind":2048,"name":"setImagePath","url":"classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/particles/particleEmitter.ParticleEmitter"},{"id":692,"kind":2,"name":"core/gameobjects/rect","url":"modules/core_gameobjects_rect.html","classes":"tsd-kind-module"},{"id":693,"kind":128,"name":"Rect","url":"classes/core_gameobjects_rect.Rect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/rect"},{"id":694,"kind":512,"name":"constructor","url":"classes/core_gameobjects_rect.Rect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/rect.Rect"},{"id":695,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_rect.Rect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/rect.Rect"},{"id":696,"kind":1024,"name":"texture","url":"classes/core_gameobjects_rect.Rect.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":697,"kind":1024,"name":"visible","url":"classes/core_gameobjects_rect.Rect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":698,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_rect.Rect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":699,"kind":1024,"name":"culled","url":"classes/core_gameobjects_rect.Rect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":700,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_rect.Rect.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":701,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_rect.Rect.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":702,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_rect.Rect.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":703,"kind":1024,"name":"id","url":"classes/core_gameobjects_rect.Rect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":704,"kind":1024,"name":"shape","url":"classes/core_gameobjects_rect.Rect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":705,"kind":1024,"name":"position","url":"classes/core_gameobjects_rect.Rect.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":706,"kind":1024,"name":"w","url":"classes/core_gameobjects_rect.Rect.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":707,"kind":1024,"name":"h","url":"classes/core_gameobjects_rect.Rect.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":708,"kind":1024,"name":"r","url":"classes/core_gameobjects_rect.Rect.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":709,"kind":1024,"name":"options","url":"classes/core_gameobjects_rect.Rect.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":710,"kind":1024,"name":"game","url":"classes/core_gameobjects_rect.Rect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":711,"kind":1024,"name":"scene","url":"classes/core_gameobjects_rect.Rect.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":712,"kind":1024,"name":"collider","url":"classes/core_gameobjects_rect.Rect.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":713,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_rect.Rect.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":714,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_rect.Rect.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":715,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_rect.Rect.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":716,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_rect.Rect.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":717,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_rect.Rect.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":718,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_rect.Rect.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":719,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_rect.Rect.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":720,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_rect.Rect.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":721,"kind":1024,"name":"physics","url":"classes/core_gameobjects_rect.Rect.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":722,"kind":65536,"name":"__type","url":"classes/core_gameobjects_rect.Rect.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/rect.Rect"},{"id":723,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_rect.Rect.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/rect.Rect.__type"},{"id":724,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_rect.Rect.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/rect.Rect.__type"},{"id":725,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_rect.Rect.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/rect.Rect.__type"},{"id":726,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_rect.Rect.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":727,"kind":2048,"name":"_update","url":"classes/core_gameobjects_rect.Rect.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":728,"kind":2048,"name":"setType","url":"classes/core_gameobjects_rect.Rect.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":729,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_rect.Rect.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":730,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_rect.Rect.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":731,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_rect.Rect.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":732,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_rect.Rect.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":733,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_rect.Rect.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":734,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_rect.Rect.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":735,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_rect.Rect.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":736,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_rect.Rect.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":737,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_rect.Rect.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":738,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_rect.Rect.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":739,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_rect.Rect.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":740,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_rect.Rect.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":741,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_rect.Rect.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":742,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_rect.Rect.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":743,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_rect.Rect.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":744,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_rect.Rect.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":745,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_rect.Rect.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":746,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_rect.Rect.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":747,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_rect.Rect.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":748,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_rect.Rect.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":749,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_rect.Rect.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":750,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_rect.Rect.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":751,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_rect.Rect.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/rect.Rect"},{"id":752,"kind":2,"name":"core/gameobjects/roundrect","url":"modules/core_gameobjects_roundrect.html","classes":"tsd-kind-module"},{"id":753,"kind":128,"name":"RoundRect","url":"classes/core_gameobjects_roundrect.RoundRect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/roundrect"},{"id":754,"kind":512,"name":"constructor","url":"classes/core_gameobjects_roundrect.RoundRect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/roundrect.RoundRect"},{"id":755,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_roundrect.RoundRect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/roundrect.RoundRect"},{"id":756,"kind":1024,"name":"texture","url":"classes/core_gameobjects_roundrect.RoundRect.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":757,"kind":1024,"name":"visible","url":"classes/core_gameobjects_roundrect.RoundRect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":758,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_roundrect.RoundRect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":759,"kind":1024,"name":"culled","url":"classes/core_gameobjects_roundrect.RoundRect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":760,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":761,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_roundrect.RoundRect.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":762,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_roundrect.RoundRect.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":763,"kind":1024,"name":"id","url":"classes/core_gameobjects_roundrect.RoundRect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":764,"kind":1024,"name":"shape","url":"classes/core_gameobjects_roundrect.RoundRect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":765,"kind":1024,"name":"position","url":"classes/core_gameobjects_roundrect.RoundRect.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":766,"kind":1024,"name":"w","url":"classes/core_gameobjects_roundrect.RoundRect.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":767,"kind":1024,"name":"h","url":"classes/core_gameobjects_roundrect.RoundRect.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":768,"kind":1024,"name":"r","url":"classes/core_gameobjects_roundrect.RoundRect.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":769,"kind":1024,"name":"options","url":"classes/core_gameobjects_roundrect.RoundRect.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":770,"kind":1024,"name":"game","url":"classes/core_gameobjects_roundrect.RoundRect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":771,"kind":1024,"name":"scene","url":"classes/core_gameobjects_roundrect.RoundRect.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":772,"kind":1024,"name":"collider","url":"classes/core_gameobjects_roundrect.RoundRect.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":773,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_roundrect.RoundRect.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":774,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":775,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":776,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_roundrect.RoundRect.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":777,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_roundrect.RoundRect.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":778,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_roundrect.RoundRect.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":779,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":780,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":781,"kind":1024,"name":"physics","url":"classes/core_gameobjects_roundrect.RoundRect.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":782,"kind":65536,"name":"__type","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/roundrect.RoundRect"},{"id":783,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/roundrect.RoundRect.__type"},{"id":784,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/roundrect.RoundRect.__type"},{"id":785,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_roundrect.RoundRect.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/roundrect.RoundRect.__type"},{"id":786,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_roundrect.RoundRect.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":787,"kind":2048,"name":"_update","url":"classes/core_gameobjects_roundrect.RoundRect.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":788,"kind":2048,"name":"setType","url":"classes/core_gameobjects_roundrect.RoundRect.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":789,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":790,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_roundrect.RoundRect.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":791,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_roundrect.RoundRect.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":792,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_roundrect.RoundRect.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":793,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":794,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":795,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_roundrect.RoundRect.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":796,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":797,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_roundrect.RoundRect.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":798,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_roundrect.RoundRect.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":799,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_roundrect.RoundRect.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":800,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_roundrect.RoundRect.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":801,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":802,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_roundrect.RoundRect.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":803,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_roundrect.RoundRect.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":804,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_roundrect.RoundRect.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":805,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_roundrect.RoundRect.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":806,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_roundrect.RoundRect.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":807,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_roundrect.RoundRect.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":808,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_roundrect.RoundRect.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":809,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_roundrect.RoundRect.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":810,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_roundrect.RoundRect.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":811,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_roundrect.RoundRect.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/roundrect.RoundRect"},{"id":812,"kind":2,"name":"core/gameobjects/sprite","url":"modules/core_gameobjects_sprite.html","classes":"tsd-kind-module"},{"id":813,"kind":128,"name":"Sprite","url":"classes/core_gameobjects_sprite.Sprite.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/sprite"},{"id":814,"kind":512,"name":"constructor","url":"classes/core_gameobjects_sprite.Sprite.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":815,"kind":1024,"name":"currentRow","url":"classes/core_gameobjects_sprite.Sprite.html#currentRow","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":816,"kind":1024,"name":"currentCol","url":"classes/core_gameobjects_sprite.Sprite.html#currentCol","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":817,"kind":1024,"name":"anims","url":"classes/core_gameobjects_sprite.Sprite.html#anims","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":818,"kind":1024,"name":"defaultAnim","url":"classes/core_gameobjects_sprite.Sprite.html#defaultAnim","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":819,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_sprite.Sprite.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":820,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_sprite.Sprite.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":821,"kind":2048,"name":"setImagePath","url":"classes/core_gameobjects_sprite.Sprite.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":822,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_sprite.Sprite.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/sprite.Sprite"},{"id":823,"kind":1024,"name":"texture","url":"classes/core_gameobjects_sprite.Sprite.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":824,"kind":1024,"name":"visible","url":"classes/core_gameobjects_sprite.Sprite.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":825,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_sprite.Sprite.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":826,"kind":1024,"name":"culled","url":"classes/core_gameobjects_sprite.Sprite.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":827,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_sprite.Sprite.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":828,"kind":1024,"name":"id","url":"classes/core_gameobjects_sprite.Sprite.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":829,"kind":1024,"name":"shape","url":"classes/core_gameobjects_sprite.Sprite.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":830,"kind":1024,"name":"position","url":"classes/core_gameobjects_sprite.Sprite.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":831,"kind":1024,"name":"w","url":"classes/core_gameobjects_sprite.Sprite.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":832,"kind":1024,"name":"h","url":"classes/core_gameobjects_sprite.Sprite.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":833,"kind":1024,"name":"r","url":"classes/core_gameobjects_sprite.Sprite.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":834,"kind":1024,"name":"options","url":"classes/core_gameobjects_sprite.Sprite.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":835,"kind":1024,"name":"game","url":"classes/core_gameobjects_sprite.Sprite.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":836,"kind":1024,"name":"scene","url":"classes/core_gameobjects_sprite.Sprite.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":837,"kind":1024,"name":"collider","url":"classes/core_gameobjects_sprite.Sprite.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":838,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_sprite.Sprite.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":839,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_sprite.Sprite.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":840,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_sprite.Sprite.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":841,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_sprite.Sprite.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":842,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_sprite.Sprite.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":843,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_sprite.Sprite.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":844,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_sprite.Sprite.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":845,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_sprite.Sprite.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":846,"kind":1024,"name":"physics","url":"classes/core_gameobjects_sprite.Sprite.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":847,"kind":65536,"name":"__type","url":"classes/core_gameobjects_sprite.Sprite.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/sprite.Sprite"},{"id":848,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_sprite.Sprite.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/sprite.Sprite.__type"},{"id":849,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_sprite.Sprite.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/sprite.Sprite.__type"},{"id":850,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_sprite.Sprite.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/sprite.Sprite.__type"},{"id":851,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_sprite.Sprite.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":852,"kind":2048,"name":"_update","url":"classes/core_gameobjects_sprite.Sprite.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":853,"kind":2048,"name":"setType","url":"classes/core_gameobjects_sprite.Sprite.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":854,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_sprite.Sprite.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":855,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_sprite.Sprite.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":856,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_sprite.Sprite.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":857,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_sprite.Sprite.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":858,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_sprite.Sprite.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":859,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_sprite.Sprite.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":860,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_sprite.Sprite.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":861,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_sprite.Sprite.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":862,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_sprite.Sprite.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":863,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_sprite.Sprite.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":864,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_sprite.Sprite.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":865,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_sprite.Sprite.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":866,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_sprite.Sprite.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":867,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_sprite.Sprite.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":868,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_sprite.Sprite.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":869,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_sprite.Sprite.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":870,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_sprite.Sprite.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":871,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_sprite.Sprite.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":872,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_sprite.Sprite.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":873,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_sprite.Sprite.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":874,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_sprite.Sprite.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":875,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_sprite.Sprite.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":876,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_sprite.Sprite.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/sprite.Sprite"},{"id":877,"kind":2,"name":"core/gameobjects/ui/button","url":"modules/core_gameobjects_ui_button.html","classes":"tsd-kind-module"},{"id":878,"kind":128,"name":"Button","url":"classes/core_gameobjects_ui_button.Button.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/button"},{"id":879,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_button.Button.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/button.Button"},{"id":880,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_button.Button.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/button.Button"},{"id":881,"kind":1024,"name":"text","url":"classes/core_gameobjects_ui_button.Button.html#text","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":882,"kind":1024,"name":"hovering","url":"classes/core_gameobjects_ui_button.Button.html#hovering","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":883,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_button.Button.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/button.Button"},{"id":884,"kind":2048,"name":"on","url":"classes/core_gameobjects_ui_button.Button.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":885,"kind":2048,"name":"off","url":"classes/core_gameobjects_ui_button.Button.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":886,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_button.Button.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":887,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_button.Button.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":888,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_button.Button.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":889,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_button.Button.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":890,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_button.Button.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":891,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_button.Button.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":892,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_button.Button.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":893,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_button.Button.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":894,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_button.Button.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":895,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_button.Button.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":896,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_button.Button.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":897,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_button.Button.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":898,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_button.Button.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":899,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_button.Button.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":900,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_button.Button.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":901,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_button.Button.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":902,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_button.Button.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":903,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_button.Button.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":904,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_button.Button.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":905,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_button.Button.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":906,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_button.Button.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":907,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_button.Button.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":908,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_button.Button.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":909,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_button.Button.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":910,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_button.Button.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":911,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_button.Button.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/button.Button"},{"id":912,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_button.Button.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/button.Button.__type"},{"id":913,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_button.Button.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/button.Button.__type"},{"id":914,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_button.Button.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/button.Button.__type"},{"id":915,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_button.Button.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":916,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_button.Button.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":917,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_button.Button.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":918,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_button.Button.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":919,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_button.Button.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":920,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_button.Button.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":921,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_button.Button.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":922,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_button.Button.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":923,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_button.Button.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":924,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_button.Button.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":925,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_button.Button.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":926,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_button.Button.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":927,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_button.Button.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":928,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_button.Button.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":929,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_button.Button.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":930,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_button.Button.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":931,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_button.Button.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":932,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_button.Button.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":933,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_button.Button.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":934,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_button.Button.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":935,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_button.Button.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":936,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_button.Button.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":937,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_button.Button.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":938,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_button.Button.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":939,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_button.Button.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":940,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_button.Button.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/button.Button"},{"id":941,"kind":2,"name":"core/gameobjects/ui/container","url":"modules/core_gameobjects_ui_container.html","classes":"tsd-kind-module"},{"id":942,"kind":128,"name":"Container","url":"classes/core_gameobjects_ui_container.Container.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/container"},{"id":943,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_container.Container.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/container.Container"},{"id":944,"kind":1024,"name":"elements","url":"classes/core_gameobjects_ui_container.Container.html#elements","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/container.Container"},{"id":945,"kind":2048,"name":"includes","url":"classes/core_gameobjects_ui_container.Container.html#includes","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/container.Container"},{"id":946,"kind":2048,"name":"get","url":"classes/core_gameobjects_ui_container.Container.html#get","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/container.Container"},{"id":947,"kind":2048,"name":"getByID","url":"classes/core_gameobjects_ui_container.Container.html#getByID","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/container.Container"},{"id":948,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_container.Container.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":949,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_container.Container.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":950,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_container.Container.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":951,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_container.Container.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":952,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_container.Container.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":953,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_container.Container.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":954,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_container.Container.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":955,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_container.Container.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":956,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_container.Container.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":957,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_container.Container.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":958,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_container.Container.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":959,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_container.Container.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":960,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_container.Container.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":961,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_container.Container.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":962,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_container.Container.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":963,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_container.Container.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":964,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_container.Container.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":965,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_container.Container.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":966,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_container.Container.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":967,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_container.Container.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":968,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_container.Container.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":969,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_container.Container.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":970,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_container.Container.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":971,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_container.Container.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":972,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_container.Container.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":973,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_container.Container.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":974,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_container.Container.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":975,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_container.Container.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/container.Container"},{"id":976,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_container.Container.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/container.Container.__type"},{"id":977,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_container.Container.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/container.Container.__type"},{"id":978,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_container.Container.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/container.Container.__type"},{"id":979,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_container.Container.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":980,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_container.Container.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":981,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_container.Container.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":982,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_container.Container.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":983,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_container.Container.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":984,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_container.Container.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":985,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_container.Container.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":986,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_container.Container.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":987,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_container.Container.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":988,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_container.Container.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":989,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_container.Container.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":990,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_container.Container.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":991,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_container.Container.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":992,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_container.Container.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":993,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_container.Container.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":994,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_container.Container.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":995,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_container.Container.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":996,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_container.Container.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":997,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_container.Container.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":998,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_container.Container.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":999,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_container.Container.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":1000,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_container.Container.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":1001,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_container.Container.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":1002,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_container.Container.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":1003,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_container.Container.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":1004,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_container.Container.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/container.Container"},{"id":1005,"kind":2,"name":"core/gameobjects/ui/imageRect","url":"modules/core_gameobjects_ui_imageRect.html","classes":"tsd-kind-module"},{"id":1006,"kind":128,"name":"ImageRect","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/imageRect"},{"id":1007,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1008,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1009,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1010,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1011,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1012,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1013,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1014,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1015,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1016,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1017,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1018,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1019,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1020,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1021,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1022,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1023,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1024,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1025,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1026,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1027,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1028,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1029,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1030,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1031,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1032,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1033,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1034,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1035,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1036,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/imageRect.ImageRect.__type"},{"id":1037,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/imageRect.ImageRect.__type"},{"id":1038,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/imageRect.ImageRect.__type"},{"id":1039,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1040,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1041,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1042,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1043,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1044,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1045,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1046,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1047,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1048,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1049,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1050,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1051,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1052,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1053,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1054,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1055,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1056,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1057,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1058,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1059,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1060,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1061,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1062,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1063,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1064,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_imageRect.ImageRect.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/imageRect.ImageRect"},{"id":1065,"kind":2,"name":"core/gameobjects/ui/panel","url":"modules/core_gameobjects_ui_panel.html","classes":"tsd-kind-module"},{"id":1066,"kind":128,"name":"Panel","url":"classes/core_gameobjects_ui_panel.Panel.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/panel"},{"id":1067,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_panel.Panel.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/panel.Panel"},{"id":1068,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_panel.Panel.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/panel.Panel"},{"id":1069,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_panel.Panel.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1070,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_panel.Panel.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1071,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_panel.Panel.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1072,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_panel.Panel.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1073,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_panel.Panel.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1074,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_panel.Panel.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1075,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_panel.Panel.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1076,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_panel.Panel.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1077,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_panel.Panel.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1078,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_panel.Panel.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1079,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_panel.Panel.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1080,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_panel.Panel.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1081,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_panel.Panel.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1082,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_panel.Panel.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1083,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_panel.Panel.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1084,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_panel.Panel.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1085,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_panel.Panel.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1086,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_panel.Panel.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1087,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1088,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_panel.Panel.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1089,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_panel.Panel.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1090,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_panel.Panel.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1091,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_panel.Panel.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1092,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_panel.Panel.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1093,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_panel.Panel.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1094,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_panel.Panel.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1095,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_panel.Panel.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/panel.Panel"},{"id":1096,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_panel.Panel.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/panel.Panel.__type"},{"id":1097,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/panel.Panel.__type"},{"id":1098,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_panel.Panel.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/panel.Panel.__type"},{"id":1099,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_panel.Panel.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1100,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_panel.Panel.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1101,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_panel.Panel.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1102,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_panel.Panel.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1103,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_panel.Panel.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1104,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_panel.Panel.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1105,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_panel.Panel.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1106,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_panel.Panel.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1107,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_panel.Panel.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1108,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_panel.Panel.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1109,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_panel.Panel.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1110,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_panel.Panel.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1111,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_panel.Panel.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1112,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_panel.Panel.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1113,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_panel.Panel.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1114,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1115,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_panel.Panel.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1116,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_panel.Panel.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1117,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_panel.Panel.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1118,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_panel.Panel.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1119,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_panel.Panel.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1120,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_panel.Panel.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1121,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_panel.Panel.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1122,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_panel.Panel.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1123,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_panel.Panel.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1124,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_panel.Panel.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/panel.Panel"},{"id":1125,"kind":2,"name":"core/gameobjects/ui/text","url":"modules/core_gameobjects_ui_text.html","classes":"tsd-kind-module"},{"id":1126,"kind":128,"name":"Text","url":"classes/core_gameobjects_ui_text.Text.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/gameobjects/ui/text"},{"id":1127,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_text.Text.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/text.Text"},{"id":1128,"kind":1024,"name":"text","url":"classes/core_gameobjects_ui_text.Text.html#text","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1129,"kind":1024,"name":"config","url":"classes/core_gameobjects_ui_text.Text.html#config","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/gameobjects/ui/text.Text"},{"id":1130,"kind":1024,"name":"color","url":"classes/core_gameobjects_ui_text.Text.html#color","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1131,"kind":1024,"name":"strokeColor","url":"classes/core_gameobjects_ui_text.Text.html#strokeColor","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1132,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_text.Text.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/gameobjects/ui/text.Text"},{"id":1133,"kind":2048,"name":"setText","url":"classes/core_gameobjects_ui_text.Text.html#setText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1134,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_text.Text.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1135,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_text.Text.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1136,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_text.Text.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1137,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_text.Text.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1138,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_text.Text.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1139,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_text.Text.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1140,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_text.Text.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1141,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_text.Text.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1142,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_text.Text.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1143,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_text.Text.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1144,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_text.Text.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1145,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_text.Text.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1146,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_text.Text.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1147,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_text.Text.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1148,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_text.Text.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1149,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_text.Text.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1150,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_text.Text.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1151,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_text.Text.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1152,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_text.Text.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1153,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_text.Text.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1154,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_text.Text.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1155,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_text.Text.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1156,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_text.Text.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1157,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_text.Text.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1158,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_text.Text.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1159,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_text.Text.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1160,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_text.Text.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/text.Text"},{"id":1161,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_text.Text.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/text.Text.__type"},{"id":1162,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_text.Text.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/text.Text.__type"},{"id":1163,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_text.Text.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/text.Text.__type"},{"id":1164,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_text.Text.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1165,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_text.Text.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1166,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_text.Text.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1167,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_text.Text.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1168,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_text.Text.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1169,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_text.Text.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1170,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_text.Text.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1171,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_text.Text.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1172,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_text.Text.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1173,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_text.Text.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1174,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_text.Text.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1175,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_text.Text.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1176,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_text.Text.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1177,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_text.Text.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1178,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_text.Text.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1179,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_text.Text.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1180,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_text.Text.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1181,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_text.Text.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1182,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_text.Text.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1183,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_text.Text.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1184,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_text.Text.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1185,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_text.Text.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1186,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_text.Text.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1187,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_text.Text.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1188,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_text.Text.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1189,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_text.Text.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/text.Text"},{"id":1190,"kind":2,"name":"core/gameobjects/ui/ui","url":"modules/core_gameobjects_ui_ui.html","classes":"tsd-kind-module"},{"id":1191,"kind":128,"name":"UI","url":"classes/core_gameobjects_ui_ui.UI.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/gameobjects/ui/ui"},{"id":1192,"kind":512,"name":"constructor","url":"classes/core_gameobjects_ui_ui.UI.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite","parent":"core/gameobjects/ui/ui.UI"},{"id":1193,"kind":1024,"name":"texture","url":"classes/core_gameobjects_ui_ui.UI.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1194,"kind":1024,"name":"visible","url":"classes/core_gameobjects_ui_ui.UI.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1195,"kind":1024,"name":"zIndex","url":"classes/core_gameobjects_ui_ui.UI.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1196,"kind":1024,"name":"culled","url":"classes/core_gameobjects_ui_ui.UI.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1197,"kind":2048,"name":"_draw","url":"classes/core_gameobjects_ui_ui.UI.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1198,"kind":2048,"name":"setVisible","url":"classes/core_gameobjects_ui_ui.UI.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1199,"kind":2048,"name":"setScale","url":"classes/core_gameobjects_ui_ui.UI.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1200,"kind":2048,"name":"setFillColor","url":"classes/core_gameobjects_ui_ui.UI.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1201,"kind":1024,"name":"id","url":"classes/core_gameobjects_ui_ui.UI.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1202,"kind":1024,"name":"shape","url":"classes/core_gameobjects_ui_ui.UI.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1203,"kind":1024,"name":"position","url":"classes/core_gameobjects_ui_ui.UI.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1204,"kind":1024,"name":"w","url":"classes/core_gameobjects_ui_ui.UI.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1205,"kind":1024,"name":"h","url":"classes/core_gameobjects_ui_ui.UI.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1206,"kind":1024,"name":"r","url":"classes/core_gameobjects_ui_ui.UI.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1207,"kind":1024,"name":"options","url":"classes/core_gameobjects_ui_ui.UI.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1208,"kind":1024,"name":"game","url":"classes/core_gameobjects_ui_ui.UI.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1209,"kind":1024,"name":"scene","url":"classes/core_gameobjects_ui_ui.UI.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1210,"kind":1024,"name":"collider","url":"classes/core_gameobjects_ui_ui.UI.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1211,"kind":1024,"name":"collidesWith","url":"classes/core_gameobjects_ui_ui.UI.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1212,"kind":1024,"name":"hitbox","url":"classes/core_gameobjects_ui_ui.UI.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1213,"kind":1024,"name":"velocity","url":"classes/core_gameobjects_ui_ui.UI.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1214,"kind":1024,"name":"bounds","url":"classes/core_gameobjects_ui_ui.UI.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1215,"kind":1024,"name":"enabled","url":"classes/core_gameobjects_ui_ui.UI.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1216,"kind":1024,"name":"isAttached","url":"classes/core_gameobjects_ui_ui.UI.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1217,"kind":1024,"name":"attachedChildren","url":"classes/core_gameobjects_ui_ui.UI.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1218,"kind":1024,"name":"attachOffset","url":"classes/core_gameobjects_ui_ui.UI.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1219,"kind":1024,"name":"physics","url":"classes/core_gameobjects_ui_ui.UI.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1220,"kind":65536,"name":"__type","url":"classes/core_gameobjects_ui_ui.UI.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/gameobjects/ui/ui.UI"},{"id":1221,"kind":2048,"name":"addCollider","url":"classes/core_gameobjects_ui_ui.UI.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/ui.UI.__type"},{"id":1222,"kind":2048,"name":"addHitbox","url":"classes/core_gameobjects_ui_ui.UI.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/ui.UI.__type"},{"id":1223,"kind":2048,"name":"setBounds","url":"classes/core_gameobjects_ui_ui.UI.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/gameobjects/ui/ui.UI.__type"},{"id":1224,"kind":2048,"name":"setEnabled","url":"classes/core_gameobjects_ui_ui.UI.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1225,"kind":2048,"name":"_update","url":"classes/core_gameobjects_ui_ui.UI.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1226,"kind":2048,"name":"setType","url":"classes/core_gameobjects_ui_ui.UI.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1227,"kind":2048,"name":"attachTo","url":"classes/core_gameobjects_ui_ui.UI.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1228,"kind":2048,"name":"attachChild","url":"classes/core_gameobjects_ui_ui.UI.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1229,"kind":2048,"name":"detachFrom","url":"classes/core_gameobjects_ui_ui.UI.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1230,"kind":2048,"name":"detachChild","url":"classes/core_gameobjects_ui_ui.UI.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1231,"kind":2048,"name":"setVelocity","url":"classes/core_gameobjects_ui_ui.UI.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1232,"kind":2048,"name":"setVelocityX","url":"classes/core_gameobjects_ui_ui.UI.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1233,"kind":2048,"name":"setVelocityY","url":"classes/core_gameobjects_ui_ui.UI.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1234,"kind":2048,"name":"accelerateVelocity","url":"classes/core_gameobjects_ui_ui.UI.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1235,"kind":2048,"name":"applyFriction","url":"classes/core_gameobjects_ui_ui.UI.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1236,"kind":2048,"name":"applyGravity","url":"classes/core_gameobjects_ui_ui.UI.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1237,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_gameobjects_ui_ui.UI.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1238,"kind":2048,"name":"reflectVelocity","url":"classes/core_gameobjects_ui_ui.UI.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1239,"kind":2048,"name":"autoFitHitbox","url":"classes/core_gameobjects_ui_ui.UI.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1240,"kind":2048,"name":"scaleHitbox","url":"classes/core_gameobjects_ui_ui.UI.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1241,"kind":2048,"name":"getTop","url":"classes/core_gameobjects_ui_ui.UI.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1242,"kind":2048,"name":"getBottom","url":"classes/core_gameobjects_ui_ui.UI.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1243,"kind":2048,"name":"getLeft","url":"classes/core_gameobjects_ui_ui.UI.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1244,"kind":2048,"name":"getRight","url":"classes/core_gameobjects_ui_ui.UI.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1245,"kind":2048,"name":"getCenter","url":"classes/core_gameobjects_ui_ui.UI.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1246,"kind":2048,"name":"getCenterY","url":"classes/core_gameobjects_ui_ui.UI.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1247,"kind":2048,"name":"getCenterX","url":"classes/core_gameobjects_ui_ui.UI.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1248,"kind":2048,"name":"isColliding","url":"classes/core_gameobjects_ui_ui.UI.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1249,"kind":2048,"name":"isCollidingGroup","url":"classes/core_gameobjects_ui_ui.UI.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/gameobjects/ui/ui.UI"},{"id":1250,"kind":2,"name":"core/group/group","url":"modules/core_group_group.html","classes":"tsd-kind-module"},{"id":1251,"kind":128,"name":"Group","url":"classes/core_group_group.Group.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/group/group"},{"id":1252,"kind":512,"name":"constructor","url":"classes/core_group_group.Group.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter","parent":"core/group/group.Group"},{"id":1253,"kind":1024,"name":"stack","url":"classes/core_group_group.Group.html#stack","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/group/group.Group"},{"id":1254,"kind":1024,"name":"game","url":"classes/core_group_group.Group.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1255,"kind":1024,"name":"name","url":"classes/core_group_group.Group.html#name","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1256,"kind":2048,"name":"add","url":"classes/core_group_group.Group.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1257,"kind":2048,"name":"remove","url":"classes/core_group_group.Group.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1258,"kind":2048,"name":"find","url":"classes/core_group_group.Group.html#find","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1259,"kind":2048,"name":"indexOf","url":"classes/core_group_group.Group.html#indexOf","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1260,"kind":2048,"name":"each","url":"classes/core_group_group.Group.html#each","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1261,"kind":2048,"name":"pop","url":"classes/core_group_group.Group.html#pop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1262,"kind":2048,"name":"shift","url":"classes/core_group_group.Group.html#shift","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1263,"kind":2048,"name":"splice","url":"classes/core_group_group.Group.html#splice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1264,"kind":2048,"name":"filter","url":"classes/core_group_group.Group.html#filter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1265,"kind":2048,"name":"on","url":"classes/core_group_group.Group.html#on","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1266,"kind":2048,"name":"off","url":"classes/core_group_group.Group.html#off","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1267,"kind":2048,"name":"at","url":"classes/core_group_group.Group.html#at","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1268,"kind":262144,"name":"group","url":"classes/core_group_group.Group.html#group","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1269,"kind":262144,"name":"length","url":"classes/core_group_group.Group.html#length","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/group/group.Group"},{"id":1270,"kind":2,"name":"core/input/input","url":"modules/core_input_input.html","classes":"tsd-kind-module"},{"id":1271,"kind":128,"name":"Input","url":"classes/core_input_input.Input.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/input"},{"id":1272,"kind":512,"name":"constructor","url":"classes/core_input_input.Input.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1273,"kind":1024,"name":"game","url":"classes/core_input_input.Input.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1274,"kind":1024,"name":"scene","url":"classes/core_input_input.Input.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1275,"kind":2048,"name":"createKeyboardInput","url":"classes/core_input_input.Input.html#createKeyboardInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1276,"kind":2048,"name":"createMouseInput","url":"classes/core_input_input.Input.html#createMouseInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/input.Input"},{"id":1277,"kind":2,"name":"core/input/keyboardInput","url":"modules/core_input_keyboardInput.html","classes":"tsd-kind-module"},{"id":1278,"kind":128,"name":"KeyboardInput","url":"classes/core_input_keyboardInput.KeyboardInput.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/keyboardInput"},{"id":1279,"kind":512,"name":"constructor","url":"classes/core_input_keyboardInput.KeyboardInput.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1280,"kind":1024,"name":"game","url":"classes/core_input_keyboardInput.KeyboardInput.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1281,"kind":1024,"name":"scene","url":"classes/core_input_keyboardInput.KeyboardInput.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1282,"kind":1024,"name":"eventEmitter","url":"classes/core_input_keyboardInput.KeyboardInput.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1283,"kind":1024,"name":"keys","url":"classes/core_input_keyboardInput.KeyboardInput.html#keys","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1284,"kind":65536,"name":"__type","url":"classes/core_input_keyboardInput.KeyboardInput.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1285,"kind":2048,"name":"addKey","url":"classes/core_input_keyboardInput.KeyboardInput.html#addKey","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1286,"kind":2048,"name":"addKeys","url":"classes/core_input_keyboardInput.KeyboardInput.html#addKeys","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1287,"kind":2048,"name":"removeKey","url":"classes/core_input_keyboardInput.KeyboardInput.html#removeKey","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1288,"kind":2048,"name":"onInput","url":"classes/core_input_keyboardInput.KeyboardInput.html#onInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1289,"kind":262144,"name":"inputs","url":"classes/core_input_keyboardInput.KeyboardInput.html#inputs","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/input/keyboardInput.KeyboardInput"},{"id":1290,"kind":2,"name":"core/input/models/key","url":"modules/core_input_models_key.html","classes":"tsd-kind-module"},{"id":1291,"kind":128,"name":"Key","url":"classes/core_input_models_key.Key.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/models/key"},{"id":1292,"kind":512,"name":"constructor","url":"classes/core_input_models_key.Key.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1293,"kind":1024,"name":"keyCode","url":"classes/core_input_models_key.Key.html#keyCode","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1294,"kind":1024,"name":"descriptor","url":"classes/core_input_models_key.Key.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1295,"kind":1024,"name":"game","url":"classes/core_input_models_key.Key.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1296,"kind":1024,"name":"scene","url":"classes/core_input_models_key.Key.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1297,"kind":1024,"name":"keyboardInput","url":"classes/core_input_models_key.Key.html#keyboardInput","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1298,"kind":1024,"name":"isDown","url":"classes/core_input_models_key.Key.html#isDown","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1299,"kind":1024,"name":"isUp","url":"classes/core_input_models_key.Key.html#isUp","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1300,"kind":1024,"name":"isJustPressed","url":"classes/core_input_models_key.Key.html#isJustPressed","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1301,"kind":1024,"name":"state","url":"classes/core_input_models_key.Key.html#state","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1302,"kind":2048,"name":"registerListeners","url":"classes/core_input_models_key.Key.html#registerListeners","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/input/models/key.Key"},{"id":1303,"kind":2048,"name":"onInput","url":"classes/core_input_models_key.Key.html#onInput","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/models/key.Key"},{"id":1304,"kind":2,"name":"core/input/models/mouse","url":"modules/core_input_models_mouse.html","classes":"tsd-kind-module"},{"id":1305,"kind":128,"name":"Mouse","url":"classes/core_input_models_mouse.Mouse.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/models/mouse"},{"id":1306,"kind":512,"name":"constructor","url":"classes/core_input_models_mouse.Mouse.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1307,"kind":1024,"name":"button","url":"classes/core_input_models_mouse.Mouse.html#button","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1308,"kind":1024,"name":"descriptor","url":"classes/core_input_models_mouse.Mouse.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1309,"kind":1024,"name":"game","url":"classes/core_input_models_mouse.Mouse.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1310,"kind":1024,"name":"scene","url":"classes/core_input_models_mouse.Mouse.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1311,"kind":1024,"name":"mouseInput","url":"classes/core_input_models_mouse.Mouse.html#mouseInput","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/models/mouse.Mouse"},{"id":1312,"kind":2048,"name":"registerListeners","url":"classes/core_input_models_mouse.Mouse.html#registerListeners","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/input/models/mouse.Mouse"},{"id":1313,"kind":2,"name":"core/input/mouseInput","url":"modules/core_input_mouseInput.html","classes":"tsd-kind-module"},{"id":1314,"kind":128,"name":"MouseInput","url":"classes/core_input_mouseInput.MouseInput.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/mouseInput"},{"id":1315,"kind":512,"name":"constructor","url":"classes/core_input_mouseInput.MouseInput.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1316,"kind":1024,"name":"game","url":"classes/core_input_mouseInput.MouseInput.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1317,"kind":1024,"name":"scene","url":"classes/core_input_mouseInput.MouseInput.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1318,"kind":1024,"name":"eventEmitter","url":"classes/core_input_mouseInput.MouseInput.html#eventEmitter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1319,"kind":1024,"name":"mice","url":"classes/core_input_mouseInput.MouseInput.html#mice","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1320,"kind":65536,"name":"__type","url":"classes/core_input_mouseInput.MouseInput.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1321,"kind":2048,"name":"addMouse","url":"classes/core_input_mouseInput.MouseInput.html#addMouse","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1322,"kind":2048,"name":"addMice","url":"classes/core_input_mouseInput.MouseInput.html#addMice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1323,"kind":262144,"name":"inputs","url":"classes/core_input_mouseInput.MouseInput.html#inputs","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/input/mouseInput.MouseInput"},{"id":1324,"kind":2,"name":"core/input/server/inputServer","url":"modules/core_input_server_inputServer.html","classes":"tsd-kind-module"},{"id":1325,"kind":128,"name":"InputServer","url":"classes/core_input_server_inputServer.InputServer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/input/server/inputServer"},{"id":1326,"kind":512,"name":"constructor","url":"classes/core_input_server_inputServer.InputServer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/input/server/inputServer.InputServer"},{"id":1327,"kind":1024,"name":"game","url":"classes/core_input_server_inputServer.InputServer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/server/inputServer.InputServer"},{"id":1328,"kind":1024,"name":"scene","url":"classes/core_input_server_inputServer.InputServer.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/input/server/inputServer.InputServer"},{"id":1329,"kind":2048,"name":"__tick","url":"classes/core_input_server_inputServer.InputServer.html#__tick","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/input/server/inputServer.InputServer"},{"id":1330,"kind":2,"name":"core/lights/staticLight","url":"modules/core_lights_staticLight.html","classes":"tsd-kind-module"},{"id":1331,"kind":128,"name":"StaticLight","url":"classes/core_lights_staticLight.StaticLight.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/lights/staticLight"},{"id":1332,"kind":512,"name":"constructor","url":"classes/core_lights_staticLight.StaticLight.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/lights/staticLight.StaticLight"},{"id":1333,"kind":1024,"name":"color","url":"classes/core_lights_staticLight.StaticLight.html#color","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/lights/staticLight.StaticLight"},{"id":1334,"kind":1024,"name":"alpha","url":"classes/core_lights_staticLight.StaticLight.html#alpha","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/lights/staticLight.StaticLight"},{"id":1335,"kind":2048,"name":"_draw","url":"classes/core_lights_staticLight.StaticLight.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/lights/staticLight.StaticLight"},{"id":1336,"kind":2048,"name":"setFillColorAlpha","url":"classes/core_lights_staticLight.StaticLight.html#setFillColorAlpha","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/lights/staticLight.StaticLight"},{"id":1337,"kind":1024,"name":"texture","url":"classes/core_lights_staticLight.StaticLight.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1338,"kind":1024,"name":"visible","url":"classes/core_lights_staticLight.StaticLight.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1339,"kind":1024,"name":"zIndex","url":"classes/core_lights_staticLight.StaticLight.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1340,"kind":1024,"name":"culled","url":"classes/core_lights_staticLight.StaticLight.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1341,"kind":2048,"name":"setVisible","url":"classes/core_lights_staticLight.StaticLight.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1342,"kind":2048,"name":"setScale","url":"classes/core_lights_staticLight.StaticLight.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1343,"kind":2048,"name":"setFillColor","url":"classes/core_lights_staticLight.StaticLight.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1344,"kind":1024,"name":"id","url":"classes/core_lights_staticLight.StaticLight.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1345,"kind":1024,"name":"shape","url":"classes/core_lights_staticLight.StaticLight.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1346,"kind":1024,"name":"position","url":"classes/core_lights_staticLight.StaticLight.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1347,"kind":1024,"name":"w","url":"classes/core_lights_staticLight.StaticLight.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1348,"kind":1024,"name":"h","url":"classes/core_lights_staticLight.StaticLight.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1349,"kind":1024,"name":"r","url":"classes/core_lights_staticLight.StaticLight.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1350,"kind":1024,"name":"options","url":"classes/core_lights_staticLight.StaticLight.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1351,"kind":1024,"name":"game","url":"classes/core_lights_staticLight.StaticLight.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1352,"kind":1024,"name":"scene","url":"classes/core_lights_staticLight.StaticLight.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1353,"kind":1024,"name":"collider","url":"classes/core_lights_staticLight.StaticLight.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1354,"kind":1024,"name":"collidesWith","url":"classes/core_lights_staticLight.StaticLight.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1355,"kind":1024,"name":"hitbox","url":"classes/core_lights_staticLight.StaticLight.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1356,"kind":1024,"name":"velocity","url":"classes/core_lights_staticLight.StaticLight.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1357,"kind":1024,"name":"bounds","url":"classes/core_lights_staticLight.StaticLight.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1358,"kind":1024,"name":"enabled","url":"classes/core_lights_staticLight.StaticLight.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1359,"kind":1024,"name":"isAttached","url":"classes/core_lights_staticLight.StaticLight.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1360,"kind":1024,"name":"attachedChildren","url":"classes/core_lights_staticLight.StaticLight.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1361,"kind":1024,"name":"attachOffset","url":"classes/core_lights_staticLight.StaticLight.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1362,"kind":1024,"name":"physics","url":"classes/core_lights_staticLight.StaticLight.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1363,"kind":65536,"name":"__type","url":"classes/core_lights_staticLight.StaticLight.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/lights/staticLight.StaticLight"},{"id":1364,"kind":2048,"name":"addCollider","url":"classes/core_lights_staticLight.StaticLight.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/lights/staticLight.StaticLight.__type"},{"id":1365,"kind":2048,"name":"addHitbox","url":"classes/core_lights_staticLight.StaticLight.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/lights/staticLight.StaticLight.__type"},{"id":1366,"kind":2048,"name":"setBounds","url":"classes/core_lights_staticLight.StaticLight.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/lights/staticLight.StaticLight.__type"},{"id":1367,"kind":2048,"name":"setEnabled","url":"classes/core_lights_staticLight.StaticLight.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1368,"kind":2048,"name":"_update","url":"classes/core_lights_staticLight.StaticLight.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1369,"kind":2048,"name":"setType","url":"classes/core_lights_staticLight.StaticLight.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1370,"kind":2048,"name":"attachTo","url":"classes/core_lights_staticLight.StaticLight.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1371,"kind":2048,"name":"attachChild","url":"classes/core_lights_staticLight.StaticLight.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1372,"kind":2048,"name":"detachFrom","url":"classes/core_lights_staticLight.StaticLight.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1373,"kind":2048,"name":"detachChild","url":"classes/core_lights_staticLight.StaticLight.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1374,"kind":2048,"name":"setVelocity","url":"classes/core_lights_staticLight.StaticLight.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1375,"kind":2048,"name":"setVelocityX","url":"classes/core_lights_staticLight.StaticLight.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1376,"kind":2048,"name":"setVelocityY","url":"classes/core_lights_staticLight.StaticLight.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1377,"kind":2048,"name":"accelerateVelocity","url":"classes/core_lights_staticLight.StaticLight.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1378,"kind":2048,"name":"applyFriction","url":"classes/core_lights_staticLight.StaticLight.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1379,"kind":2048,"name":"applyGravity","url":"classes/core_lights_staticLight.StaticLight.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1380,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_lights_staticLight.StaticLight.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1381,"kind":2048,"name":"reflectVelocity","url":"classes/core_lights_staticLight.StaticLight.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1382,"kind":2048,"name":"autoFitHitbox","url":"classes/core_lights_staticLight.StaticLight.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1383,"kind":2048,"name":"scaleHitbox","url":"classes/core_lights_staticLight.StaticLight.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1384,"kind":2048,"name":"getTop","url":"classes/core_lights_staticLight.StaticLight.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1385,"kind":2048,"name":"getBottom","url":"classes/core_lights_staticLight.StaticLight.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1386,"kind":2048,"name":"getLeft","url":"classes/core_lights_staticLight.StaticLight.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1387,"kind":2048,"name":"getRight","url":"classes/core_lights_staticLight.StaticLight.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1388,"kind":2048,"name":"getCenter","url":"classes/core_lights_staticLight.StaticLight.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1389,"kind":2048,"name":"getCenterY","url":"classes/core_lights_staticLight.StaticLight.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1390,"kind":2048,"name":"getCenterX","url":"classes/core_lights_staticLight.StaticLight.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1391,"kind":2048,"name":"isColliding","url":"classes/core_lights_staticLight.StaticLight.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1392,"kind":2048,"name":"isCollidingGroup","url":"classes/core_lights_staticLight.StaticLight.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/lights/staticLight.StaticLight"},{"id":1393,"kind":2,"name":"core/loader/loader","url":"modules/core_loader_loader.html","classes":"tsd-kind-module"},{"id":1394,"kind":128,"name":"Loader","url":"classes/core_loader_loader.Loader.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/loader/loader"},{"id":1395,"kind":512,"name":"constructor","url":"classes/core_loader_loader.Loader.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1396,"kind":1024,"name":"game","url":"classes/core_loader_loader.Loader.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1397,"kind":1024,"name":"scene","url":"classes/core_loader_loader.Loader.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1398,"kind":1024,"name":"textureStack","url":"classes/core_loader_loader.Loader.html#textureStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1399,"kind":1024,"name":"jsonStack","url":"classes/core_loader_loader.Loader.html#jsonStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1400,"kind":1024,"name":"htmlStack","url":"classes/core_loader_loader.Loader.html#htmlStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1401,"kind":1024,"name":"xmlStack","url":"classes/core_loader_loader.Loader.html#xmlStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1402,"kind":1024,"name":"fontStack","url":"classes/core_loader_loader.Loader.html#fontStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1403,"kind":1024,"name":"audioStack","url":"classes/core_loader_loader.Loader.html#audioStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1404,"kind":1024,"name":"audioBufferStack","url":"classes/core_loader_loader.Loader.html#audioBufferStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1405,"kind":2048,"name":"tryCache","url":"classes/core_loader_loader.Loader.html#tryCache","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/loader/loader.Loader"},{"id":1406,"kind":2048,"name":"saveCache","url":"classes/core_loader_loader.Loader.html#saveCache","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/loader/loader.Loader"},{"id":1407,"kind":2048,"name":"loadTexture","url":"classes/core_loader_loader.Loader.html#loadTexture","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1408,"kind":2048,"name":"loadTextureSheet","url":"classes/core_loader_loader.Loader.html#loadTextureSheet","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1409,"kind":2048,"name":"loadTextureAtlas","url":"classes/core_loader_loader.Loader.html#loadTextureAtlas","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1410,"kind":2048,"name":"loadJSON","url":"classes/core_loader_loader.Loader.html#loadJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1411,"kind":2048,"name":"loadHTML","url":"classes/core_loader_loader.Loader.html#loadHTML","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1412,"kind":2048,"name":"loadXML","url":"classes/core_loader_loader.Loader.html#loadXML","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1413,"kind":2048,"name":"loadFont","url":"classes/core_loader_loader.Loader.html#loadFont","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1414,"kind":2048,"name":"loadAudio","url":"classes/core_loader_loader.Loader.html#loadAudio","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1415,"kind":2048,"name":"loadAudioBuffer","url":"classes/core_loader_loader.Loader.html#loadAudioBuffer","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/loader/loader.Loader"},{"id":1416,"kind":2,"name":"core/map/map","url":"modules/core_map_map.html","classes":"tsd-kind-module"},{"id":1417,"kind":128,"name":"Map","url":"classes/core_map_map.Map.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/map"},{"id":1418,"kind":512,"name":"constructor","url":"classes/core_map_map.Map.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1419,"kind":1024,"name":"id","url":"classes/core_map_map.Map.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1420,"kind":1024,"name":"shape","url":"classes/core_map_map.Map.html#shape","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1421,"kind":1024,"name":"origin","url":"classes/core_map_map.Map.html#origin","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1422,"kind":1024,"name":"tileLayers","url":"classes/core_map_map.Map.html#tileLayers","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1423,"kind":1024,"name":"game","url":"classes/core_map_map.Map.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1424,"kind":1024,"name":"scene","url":"classes/core_map_map.Map.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1425,"kind":1024,"name":"visible","url":"classes/core_map_map.Map.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1426,"kind":1024,"name":"zIndex","url":"classes/core_map_map.Map.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1427,"kind":1024,"name":"culled","url":"classes/core_map_map.Map.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1428,"kind":2048,"name":"_draw","url":"classes/core_map_map.Map.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/map/map.Map"},{"id":1429,"kind":2,"name":"core/map/tile","url":"modules/core_map_tile.html","classes":"tsd-kind-module"},{"id":1430,"kind":128,"name":"Tile","url":"classes/core_map_tile.Tile.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tile"},{"id":1431,"kind":512,"name":"constructor","url":"classes/core_map_tile.Tile.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1432,"kind":1024,"name":"id","url":"classes/core_map_tile.Tile.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1433,"kind":1024,"name":"position","url":"classes/core_map_tile.Tile.html#position","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1434,"kind":1024,"name":"w","url":"classes/core_map_tile.Tile.html#w","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1435,"kind":1024,"name":"h","url":"classes/core_map_tile.Tile.html#h","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tile.Tile"},{"id":1436,"kind":2,"name":"core/map/tilelayer","url":"modules/core_map_tilelayer.html","classes":"tsd-kind-module"},{"id":1437,"kind":128,"name":"TileLayer","url":"classes/core_map_tilelayer.TileLayer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tilelayer"},{"id":1438,"kind":512,"name":"constructor","url":"classes/core_map_tilelayer.TileLayer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1439,"kind":1024,"name":"tileset","url":"classes/core_map_tilelayer.TileLayer.html#tileset","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1440,"kind":1024,"name":"map","url":"classes/core_map_tilelayer.TileLayer.html#map","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1441,"kind":1024,"name":"game","url":"classes/core_map_tilelayer.TileLayer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1442,"kind":1024,"name":"scene","url":"classes/core_map_tilelayer.TileLayer.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1443,"kind":1024,"name":"zIndex","url":"classes/core_map_tilelayer.TileLayer.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1444,"kind":1024,"name":"visible","url":"classes/core_map_tilelayer.TileLayer.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tilelayer.TileLayer"},{"id":1445,"kind":2,"name":"core/map/tilemap","url":"modules/core_map_tilemap.html","classes":"tsd-kind-module"},{"id":1446,"kind":128,"name":"TileMap","url":"classes/core_map_tilemap.TileMap.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tilemap"},{"id":1447,"kind":512,"name":"constructor","url":"classes/core_map_tilemap.TileMap.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/map/tilemap.TileMap"},{"id":1448,"kind":2048,"name":"_draw","url":"classes/core_map_tilemap.TileMap.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/map/tilemap.TileMap"},{"id":1449,"kind":2048,"name":"sortTileLayers","url":"classes/core_map_tilemap.TileMap.html#sortTileLayers","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/map/tilemap.TileMap"},{"id":1450,"kind":1024,"name":"id","url":"classes/core_map_tilemap.TileMap.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1451,"kind":1024,"name":"shape","url":"classes/core_map_tilemap.TileMap.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1452,"kind":1024,"name":"origin","url":"classes/core_map_tilemap.TileMap.html#origin","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1453,"kind":1024,"name":"tileLayers","url":"classes/core_map_tilemap.TileMap.html#tileLayers","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1454,"kind":1024,"name":"game","url":"classes/core_map_tilemap.TileMap.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1455,"kind":1024,"name":"scene","url":"classes/core_map_tilemap.TileMap.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1456,"kind":1024,"name":"visible","url":"classes/core_map_tilemap.TileMap.html#visible","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1457,"kind":1024,"name":"zIndex","url":"classes/core_map_tilemap.TileMap.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1458,"kind":1024,"name":"culled","url":"classes/core_map_tilemap.TileMap.html#culled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/map/tilemap.TileMap"},{"id":1459,"kind":2,"name":"core/map/tileset","url":"modules/core_map_tileset.html","classes":"tsd-kind-module"},{"id":1460,"kind":128,"name":"Tileset","url":"classes/core_map_tileset.Tileset.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/map/tileset"},{"id":1461,"kind":512,"name":"constructor","url":"classes/core_map_tileset.Tileset.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1462,"kind":1024,"name":"texture","url":"classes/core_map_tileset.Tileset.html#texture","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1463,"kind":1024,"name":"tileW","url":"classes/core_map_tileset.Tileset.html#tileW","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1464,"kind":1024,"name":"tileH","url":"classes/core_map_tileset.Tileset.html#tileH","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1465,"kind":1024,"name":"rows","url":"classes/core_map_tileset.Tileset.html#rows","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1466,"kind":1024,"name":"cols","url":"classes/core_map_tileset.Tileset.html#cols","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1467,"kind":1024,"name":"game","url":"classes/core_map_tileset.Tileset.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1468,"kind":1024,"name":"scene","url":"classes/core_map_tileset.Tileset.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1469,"kind":1024,"name":"tiles","url":"classes/core_map_tileset.Tileset.html#tiles","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1470,"kind":2048,"name":"generateTiles","url":"classes/core_map_tileset.Tileset.html#generateTiles","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/map/tileset.Tileset"},{"id":1471,"kind":2048,"name":"createTile","url":"classes/core_map_tileset.Tileset.html#createTile","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/map/tileset.Tileset"},{"id":1472,"kind":2048,"name":"getTile","url":"classes/core_map_tileset.Tileset.html#getTile","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/map/tileset.Tileset"},{"id":1473,"kind":2,"name":"core/math/clamp","url":"modules/core_math_clamp.html","classes":"tsd-kind-module"},{"id":1474,"kind":64,"name":"clamp","url":"modules/core_math_clamp.html#clamp","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/clamp"},{"id":1475,"kind":2,"name":"core/math/lerp","url":"modules/core_math_lerp.html","classes":"tsd-kind-module"},{"id":1476,"kind":64,"name":"lerp","url":"modules/core_math_lerp.html#lerp","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/lerp"},{"id":1477,"kind":2,"name":"core/math/randomFloat","url":"modules/core_math_randomFloat.html","classes":"tsd-kind-module"},{"id":1478,"kind":64,"name":"randomFloat","url":"modules/core_math_randomFloat.html#randomFloat","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/randomFloat"},{"id":1479,"kind":2,"name":"core/math/randomInt","url":"modules/core_math_randomInt.html","classes":"tsd-kind-module"},{"id":1480,"kind":64,"name":"randomInt","url":"modules/core_math_randomInt.html#randomInt","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/math/randomInt"},{"id":1481,"kind":2,"name":"core/math/vector2","url":"modules/core_math_vector2.html","classes":"tsd-kind-module"},{"id":1482,"kind":128,"name":"Vector2","url":"classes/core_math_vector2.Vector2.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/math/vector2"},{"id":1483,"kind":262144,"name":"ZERO","url":"classes/core_math_vector2.Vector2.html#ZERO","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1484,"kind":262144,"name":"UP","url":"classes/core_math_vector2.Vector2.html#UP","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1485,"kind":262144,"name":"DOWN","url":"classes/core_math_vector2.Vector2.html#DOWN","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1486,"kind":262144,"name":"LEFT","url":"classes/core_math_vector2.Vector2.html#LEFT","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1487,"kind":262144,"name":"RIGHT","url":"classes/core_math_vector2.Vector2.html#RIGHT","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1488,"kind":2048,"name":"CREATE","url":"classes/core_math_vector2.Vector2.html#CREATE","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1489,"kind":2048,"name":"fromVector2Like","url":"classes/core_math_vector2.Vector2.html#fromVector2Like","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1490,"kind":2048,"name":"toVector2Like","url":"classes/core_math_vector2.Vector2.html#toVector2Like","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1491,"kind":2048,"name":"fromVec","url":"classes/core_math_vector2.Vector2.html#fromVec","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/math/vector2.Vector2"},{"id":1492,"kind":512,"name":"constructor","url":"classes/core_math_vector2.Vector2.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1493,"kind":1024,"name":"x","url":"classes/core_math_vector2.Vector2.html#x","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1494,"kind":1024,"name":"y","url":"classes/core_math_vector2.Vector2.html#y","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1495,"kind":2048,"name":"setValues","url":"classes/core_math_vector2.Vector2.html#setValues","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1496,"kind":2048,"name":"setValuesVec","url":"classes/core_math_vector2.Vector2.html#setValuesVec","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1497,"kind":2048,"name":"add","url":"classes/core_math_vector2.Vector2.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1498,"kind":2048,"name":"addNumber","url":"classes/core_math_vector2.Vector2.html#addNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1499,"kind":2048,"name":"subtract","url":"classes/core_math_vector2.Vector2.html#subtract","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1500,"kind":2048,"name":"subtractNumber","url":"classes/core_math_vector2.Vector2.html#subtractNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1501,"kind":2048,"name":"multiply","url":"classes/core_math_vector2.Vector2.html#multiply","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1502,"kind":2048,"name":"multiplyNumber","url":"classes/core_math_vector2.Vector2.html#multiplyNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1503,"kind":2048,"name":"divide","url":"classes/core_math_vector2.Vector2.html#divide","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1504,"kind":2048,"name":"divideNumber","url":"classes/core_math_vector2.Vector2.html#divideNumber","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1505,"kind":2048,"name":"round","url":"classes/core_math_vector2.Vector2.html#round","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1506,"kind":2048,"name":"angleBetween","url":"classes/core_math_vector2.Vector2.html#angleBetween","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1507,"kind":2048,"name":"angleTo","url":"classes/core_math_vector2.Vector2.html#angleTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1508,"kind":2048,"name":"clone","url":"classes/core_math_vector2.Vector2.html#clone","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1509,"kind":2048,"name":"distance","url":"classes/core_math_vector2.Vector2.html#distance","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1510,"kind":2048,"name":"distanceSqr","url":"classes/core_math_vector2.Vector2.html#distanceSqr","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1511,"kind":2048,"name":"dot","url":"classes/core_math_vector2.Vector2.html#dot","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1512,"kind":2048,"name":"crossProduct","url":"classes/core_math_vector2.Vector2.html#crossProduct","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1513,"kind":2048,"name":"equals","url":"classes/core_math_vector2.Vector2.html#equals","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1514,"kind":2048,"name":"perpendicular","url":"classes/core_math_vector2.Vector2.html#perpendicular","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1515,"kind":2048,"name":"moveTowards","url":"classes/core_math_vector2.Vector2.html#moveTowards","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1516,"kind":2048,"name":"normalize","url":"classes/core_math_vector2.Vector2.html#normalize","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1517,"kind":2048,"name":"getNormal","url":"classes/core_math_vector2.Vector2.html#getNormal","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1518,"kind":2048,"name":"isZero","url":"classes/core_math_vector2.Vector2.html#isZero","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1519,"kind":2048,"name":"scale","url":"classes/core_math_vector2.Vector2.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1520,"kind":2048,"name":"negate","url":"classes/core_math_vector2.Vector2.html#negate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1521,"kind":2048,"name":"magnitude","url":"classes/core_math_vector2.Vector2.html#magnitude","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1522,"kind":2048,"name":"magnitudeSqr","url":"classes/core_math_vector2.Vector2.html#magnitudeSqr","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1523,"kind":2048,"name":"scaleToMagnitude","url":"classes/core_math_vector2.Vector2.html#scaleToMagnitude","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1524,"kind":2048,"name":"toString","url":"classes/core_math_vector2.Vector2.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1525,"kind":2048,"name":"toPrecision","url":"classes/core_math_vector2.Vector2.html#toPrecision","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1526,"kind":2048,"name":"translate","url":"classes/core_math_vector2.Vector2.html#translate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1527,"kind":2048,"name":"translateX","url":"classes/core_math_vector2.Vector2.html#translateX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1528,"kind":2048,"name":"translateY","url":"classes/core_math_vector2.Vector2.html#translateY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1529,"kind":2048,"name":"tripleProduct","url":"classes/core_math_vector2.Vector2.html#tripleProduct","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1530,"kind":2048,"name":"clamp","url":"classes/core_math_vector2.Vector2.html#clamp","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1531,"kind":2048,"name":"clampMin","url":"classes/core_math_vector2.Vector2.html#clampMin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1532,"kind":2048,"name":"clampMax","url":"classes/core_math_vector2.Vector2.html#clampMax","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1533,"kind":2048,"name":"rotate","url":"classes/core_math_vector2.Vector2.html#rotate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1534,"kind":2048,"name":"reflect","url":"classes/core_math_vector2.Vector2.html#reflect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1535,"kind":2048,"name":"abs","url":"classes/core_math_vector2.Vector2.html#abs","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/math/vector2.Vector2"},{"id":1536,"kind":2,"name":"core/misc/pluginManager","url":"modules/core_misc_pluginManager.html","classes":"tsd-kind-module"},{"id":1537,"kind":128,"name":"PluginManager","url":"classes/core_misc_pluginManager.PluginManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/misc/pluginManager"},{"id":1538,"kind":512,"name":"constructor","url":"classes/core_misc_pluginManager.PluginManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1539,"kind":1024,"name":"plugins","url":"classes/core_misc_pluginManager.PluginManager.html#plugins","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1540,"kind":65536,"name":"__type","url":"classes/core_misc_pluginManager.PluginManager.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1541,"kind":2048,"name":"registerPlugin","url":"classes/core_misc_pluginManager.PluginManager.html#registerPlugin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1542,"kind":2048,"name":"unregisterPlugin","url":"classes/core_misc_pluginManager.PluginManager.html#unregisterPlugin","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1543,"kind":2048,"name":"call","url":"classes/core_misc_pluginManager.PluginManager.html#call","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1544,"kind":2048,"name":"find","url":"classes/core_misc_pluginManager.PluginManager.html#find","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/misc/pluginManager.PluginManager"},{"id":1545,"kind":2,"name":"core/models/displayList","url":"modules/core_models_displayList.html","classes":"tsd-kind-module"},{"id":1546,"kind":128,"name":"DisplayList","url":"classes/core_models_displayList.DisplayList.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/models/displayList"},{"id":1547,"kind":512,"name":"constructor","url":"classes/core_models_displayList.DisplayList.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1548,"kind":1024,"name":"game","url":"classes/core_models_displayList.DisplayList.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1549,"kind":1024,"name":"list","url":"classes/core_models_displayList.DisplayList.html#list","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1550,"kind":2048,"name":"add","url":"classes/core_models_displayList.DisplayList.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1551,"kind":2048,"name":"remove","url":"classes/core_models_displayList.DisplayList.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1552,"kind":2048,"name":"depthSort","url":"classes/core_models_displayList.DisplayList.html#depthSort","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1553,"kind":2048,"name":"visibilityFilter","url":"classes/core_models_displayList.DisplayList.html#visibilityFilter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1554,"kind":2048,"name":"each","url":"classes/core_models_displayList.DisplayList.html#each","classes":"tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter","parent":"core/models/displayList.DisplayList"},{"id":1555,"kind":2048,"name":"splice","url":"classes/core_models_displayList.DisplayList.html#splice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1556,"kind":262144,"name":"length","url":"classes/core_models_displayList.DisplayList.html#length","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1557,"kind":262144,"name":"listItems","url":"classes/core_models_displayList.DisplayList.html#listItems","classes":"tsd-kind-set-signature tsd-parent-kind-class","parent":"core/models/displayList.DisplayList"},{"id":1558,"kind":2,"name":"core/models/physicsList","url":"modules/core_models_physicsList.html","classes":"tsd-kind-module"},{"id":1559,"kind":128,"name":"PhysicsList","url":"classes/core_models_physicsList.PhysicsList.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/models/physicsList"},{"id":1560,"kind":512,"name":"constructor","url":"classes/core_models_physicsList.PhysicsList.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1561,"kind":1024,"name":"list","url":"classes/core_models_physicsList.PhysicsList.html#list","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1562,"kind":2048,"name":"add","url":"classes/core_models_physicsList.PhysicsList.html#add","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1563,"kind":2048,"name":"remove","url":"classes/core_models_physicsList.PhysicsList.html#remove","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1564,"kind":2048,"name":"each","url":"classes/core_models_physicsList.PhysicsList.html#each","classes":"tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter","parent":"core/models/physicsList.PhysicsList"},{"id":1565,"kind":2048,"name":"enabledFilter","url":"classes/core_models_physicsList.PhysicsList.html#enabledFilter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1566,"kind":2048,"name":"splice","url":"classes/core_models_physicsList.PhysicsList.html#splice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1567,"kind":262144,"name":"length","url":"classes/core_models_physicsList.PhysicsList.html#length","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1568,"kind":262144,"name":"listItems","url":"classes/core_models_physicsList.PhysicsList.html#listItems","classes":"tsd-kind-set-signature tsd-parent-kind-class","parent":"core/models/physicsList.PhysicsList"},{"id":1569,"kind":2,"name":"core/physics/models/area","url":"modules/core_physics_models_area.html","classes":"tsd-kind-module"},{"id":1570,"kind":128,"name":"Area","url":"classes/core_physics_models_area.Area.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/models/area"},{"id":1571,"kind":512,"name":"constructor","url":"classes/core_physics_models_area.Area.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/physics/models/area.Area"},{"id":1572,"kind":1024,"name":"collisionFilter","url":"classes/core_physics_models_area.Area.html#collisionFilter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1573,"kind":1024,"name":"bodies","url":"classes/core_physics_models_area.Area.html#bodies","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1574,"kind":1024,"name":"onBodyEnter","url":"classes/core_physics_models_area.Area.html#onBodyEnter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1575,"kind":1024,"name":"onBodyLeave","url":"classes/core_physics_models_area.Area.html#onBodyLeave","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1576,"kind":2048,"name":"_update","url":"classes/core_physics_models_area.Area.html#_update","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/physics/models/area.Area"},{"id":1577,"kind":2048,"name":"addBody","url":"classes/core_physics_models_area.Area.html#addBody","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/physics/models/area.Area"},{"id":1578,"kind":2048,"name":"removeBody","url":"classes/core_physics_models_area.Area.html#removeBody","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/physics/models/area.Area"},{"id":1579,"kind":2048,"name":"bodyIsInArea","url":"classes/core_physics_models_area.Area.html#bodyIsInArea","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1580,"kind":1024,"name":"id","url":"classes/core_physics_models_area.Area.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1581,"kind":1024,"name":"shape","url":"classes/core_physics_models_area.Area.html#shape","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1582,"kind":1024,"name":"position","url":"classes/core_physics_models_area.Area.html#position","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1583,"kind":1024,"name":"w","url":"classes/core_physics_models_area.Area.html#w","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1584,"kind":1024,"name":"h","url":"classes/core_physics_models_area.Area.html#h","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1585,"kind":1024,"name":"r","url":"classes/core_physics_models_area.Area.html#r","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1586,"kind":1024,"name":"options","url":"classes/core_physics_models_area.Area.html#options","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1587,"kind":1024,"name":"game","url":"classes/core_physics_models_area.Area.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1588,"kind":1024,"name":"scene","url":"classes/core_physics_models_area.Area.html#scene","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1589,"kind":1024,"name":"collider","url":"classes/core_physics_models_area.Area.html#collider","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1590,"kind":1024,"name":"collidesWith","url":"classes/core_physics_models_area.Area.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1591,"kind":1024,"name":"hitbox","url":"classes/core_physics_models_area.Area.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1592,"kind":1024,"name":"velocity","url":"classes/core_physics_models_area.Area.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1593,"kind":1024,"name":"bounds","url":"classes/core_physics_models_area.Area.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1594,"kind":1024,"name":"enabled","url":"classes/core_physics_models_area.Area.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1595,"kind":1024,"name":"isAttached","url":"classes/core_physics_models_area.Area.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1596,"kind":1024,"name":"attachedChildren","url":"classes/core_physics_models_area.Area.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1597,"kind":1024,"name":"attachOffset","url":"classes/core_physics_models_area.Area.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1598,"kind":1024,"name":"physics","url":"classes/core_physics_models_area.Area.html#physics","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1599,"kind":65536,"name":"__type","url":"classes/core_physics_models_area.Area.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/physics/models/area.Area"},{"id":1600,"kind":2048,"name":"addCollider","url":"classes/core_physics_models_area.Area.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/models/area.Area.__type"},{"id":1601,"kind":2048,"name":"addHitbox","url":"classes/core_physics_models_area.Area.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/models/area.Area.__type"},{"id":1602,"kind":2048,"name":"setBounds","url":"classes/core_physics_models_area.Area.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/models/area.Area.__type"},{"id":1603,"kind":2048,"name":"setEnabled","url":"classes/core_physics_models_area.Area.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1604,"kind":2048,"name":"setType","url":"classes/core_physics_models_area.Area.html#setType","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1605,"kind":2048,"name":"attachTo","url":"classes/core_physics_models_area.Area.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1606,"kind":2048,"name":"attachChild","url":"classes/core_physics_models_area.Area.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1607,"kind":2048,"name":"detachFrom","url":"classes/core_physics_models_area.Area.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1608,"kind":2048,"name":"detachChild","url":"classes/core_physics_models_area.Area.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1609,"kind":2048,"name":"setVelocity","url":"classes/core_physics_models_area.Area.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1610,"kind":2048,"name":"setVelocityX","url":"classes/core_physics_models_area.Area.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1611,"kind":2048,"name":"setVelocityY","url":"classes/core_physics_models_area.Area.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1612,"kind":2048,"name":"accelerateVelocity","url":"classes/core_physics_models_area.Area.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1613,"kind":2048,"name":"applyFriction","url":"classes/core_physics_models_area.Area.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1614,"kind":2048,"name":"applyGravity","url":"classes/core_physics_models_area.Area.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1615,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_physics_models_area.Area.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1616,"kind":2048,"name":"reflectVelocity","url":"classes/core_physics_models_area.Area.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1617,"kind":2048,"name":"autoFitHitbox","url":"classes/core_physics_models_area.Area.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1618,"kind":2048,"name":"scaleHitbox","url":"classes/core_physics_models_area.Area.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1619,"kind":2048,"name":"getTop","url":"classes/core_physics_models_area.Area.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1620,"kind":2048,"name":"getBottom","url":"classes/core_physics_models_area.Area.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1621,"kind":2048,"name":"getLeft","url":"classes/core_physics_models_area.Area.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1622,"kind":2048,"name":"getRight","url":"classes/core_physics_models_area.Area.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1623,"kind":2048,"name":"getCenter","url":"classes/core_physics_models_area.Area.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1624,"kind":2048,"name":"getCenterY","url":"classes/core_physics_models_area.Area.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1625,"kind":2048,"name":"getCenterX","url":"classes/core_physics_models_area.Area.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1626,"kind":2048,"name":"isColliding","url":"classes/core_physics_models_area.Area.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1627,"kind":2048,"name":"isCollidingGroup","url":"classes/core_physics_models_area.Area.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/physics/models/area.Area"},{"id":1628,"kind":2,"name":"core/physics/models/collider","url":"modules/core_physics_models_collider.html","classes":"tsd-kind-module"},{"id":1629,"kind":128,"name":"Collider","url":"classes/core_physics_models_collider.Collider.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/models/collider"},{"id":1630,"kind":512,"name":"constructor","url":"classes/core_physics_models_collider.Collider.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1631,"kind":1024,"name":"hitbox","url":"classes/core_physics_models_collider.Collider.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1632,"kind":1024,"name":"collidesWith","url":"classes/core_physics_models_collider.Collider.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1633,"kind":1024,"name":"game","url":"classes/core_physics_models_collider.Collider.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1634,"kind":2048,"name":"_update","url":"classes/core_physics_models_collider.Collider.html#_update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/collider.Collider"},{"id":1635,"kind":2048,"name":"collideHitboxes","url":"classes/core_physics_models_collider.Collider.html#collideHitboxes","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/physics/models/collider.Collider"},{"id":1636,"kind":2,"name":"core/physics/models/hitbox","url":"modules/core_physics_models_hitbox.html","classes":"tsd-kind-module"},{"id":1637,"kind":128,"name":"Hitbox","url":"classes/core_physics_models_hitbox.Hitbox.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/models/hitbox"},{"id":1638,"kind":512,"name":"constructor","url":"classes/core_physics_models_hitbox.Hitbox.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1639,"kind":1024,"name":"id","url":"classes/core_physics_models_hitbox.Hitbox.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1640,"kind":1024,"name":"position","url":"classes/core_physics_models_hitbox.Hitbox.html#position","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1641,"kind":1024,"name":"offset","url":"classes/core_physics_models_hitbox.Hitbox.html#offset","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1642,"kind":1024,"name":"w","url":"classes/core_physics_models_hitbox.Hitbox.html#w","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1643,"kind":1024,"name":"h","url":"classes/core_physics_models_hitbox.Hitbox.html#h","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1644,"kind":1024,"name":"game","url":"classes/core_physics_models_hitbox.Hitbox.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1645,"kind":1024,"name":"scene","url":"classes/core_physics_models_hitbox.Hitbox.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1646,"kind":1024,"name":"physicsObject","url":"classes/core_physics_models_hitbox.Hitbox.html#physicsObject","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1647,"kind":1024,"name":"debugColor","url":"classes/core_physics_models_hitbox.Hitbox.html#debugColor","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1648,"kind":1024,"name":"visible","url":"classes/core_physics_models_hitbox.Hitbox.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1649,"kind":1024,"name":"zIndex","url":"classes/core_physics_models_hitbox.Hitbox.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1650,"kind":1024,"name":"culled","url":"classes/core_physics_models_hitbox.Hitbox.html#culled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1651,"kind":1024,"name":"collisionState","url":"classes/core_physics_models_hitbox.Hitbox.html#collisionState","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1652,"kind":2048,"name":"_draw","url":"classes/core_physics_models_hitbox.Hitbox.html#_draw","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1653,"kind":2048,"name":"_update","url":"classes/core_physics_models_hitbox.Hitbox.html#_update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1654,"kind":2048,"name":"setDebugColor","url":"classes/core_physics_models_hitbox.Hitbox.html#setDebugColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1655,"kind":2048,"name":"scale","url":"classes/core_physics_models_hitbox.Hitbox.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1656,"kind":2048,"name":"setPosition","url":"classes/core_physics_models_hitbox.Hitbox.html#setPosition","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1657,"kind":2048,"name":"auto","url":"classes/core_physics_models_hitbox.Hitbox.html#auto","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1658,"kind":2048,"name":"intersectsWith","url":"classes/core_physics_models_hitbox.Hitbox.html#intersectsWith","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1659,"kind":2048,"name":"intersectsFaceWith","url":"classes/core_physics_models_hitbox.Hitbox.html#intersectsFaceWith","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1660,"kind":2048,"name":"groupIntersectsFaceWith","url":"classes/core_physics_models_hitbox.Hitbox.html#groupIntersectsFaceWith","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1661,"kind":2048,"name":"getTop","url":"classes/core_physics_models_hitbox.Hitbox.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1662,"kind":2048,"name":"getBottom","url":"classes/core_physics_models_hitbox.Hitbox.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1663,"kind":2048,"name":"getLeft","url":"classes/core_physics_models_hitbox.Hitbox.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1664,"kind":2048,"name":"getRight","url":"classes/core_physics_models_hitbox.Hitbox.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1665,"kind":2048,"name":"getCenter","url":"classes/core_physics_models_hitbox.Hitbox.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1666,"kind":2048,"name":"getCenterY","url":"classes/core_physics_models_hitbox.Hitbox.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1667,"kind":2048,"name":"getCenterX","url":"classes/core_physics_models_hitbox.Hitbox.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/models/hitbox.Hitbox"},{"id":1668,"kind":2,"name":"core/physics/physicsBody","url":"modules/core_physics_physicsBody.html","classes":"tsd-kind-module"},{"id":1669,"kind":128,"name":"PhysicsBody","url":"classes/core_physics_physicsBody.PhysicsBody.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/physics/physicsBody"},{"id":1670,"kind":512,"name":"constructor","url":"classes/core_physics_physicsBody.PhysicsBody.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1671,"kind":1024,"name":"id","url":"classes/core_physics_physicsBody.PhysicsBody.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1672,"kind":1024,"name":"shape","url":"classes/core_physics_physicsBody.PhysicsBody.html#shape","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1673,"kind":1024,"name":"position","url":"classes/core_physics_physicsBody.PhysicsBody.html#position","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1674,"kind":1024,"name":"w","url":"classes/core_physics_physicsBody.PhysicsBody.html#w","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1675,"kind":1024,"name":"h","url":"classes/core_physics_physicsBody.PhysicsBody.html#h","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1676,"kind":1024,"name":"r","url":"classes/core_physics_physicsBody.PhysicsBody.html#r","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1677,"kind":1024,"name":"options","url":"classes/core_physics_physicsBody.PhysicsBody.html#options","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1678,"kind":1024,"name":"game","url":"classes/core_physics_physicsBody.PhysicsBody.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1679,"kind":1024,"name":"scene","url":"classes/core_physics_physicsBody.PhysicsBody.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1680,"kind":1024,"name":"collider","url":"classes/core_physics_physicsBody.PhysicsBody.html#collider","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1681,"kind":1024,"name":"collidesWith","url":"classes/core_physics_physicsBody.PhysicsBody.html#collidesWith","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1682,"kind":1024,"name":"hitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#hitbox","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1683,"kind":1024,"name":"velocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#velocity","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1684,"kind":1024,"name":"bounds","url":"classes/core_physics_physicsBody.PhysicsBody.html#bounds","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1685,"kind":1024,"name":"enabled","url":"classes/core_physics_physicsBody.PhysicsBody.html#enabled","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1686,"kind":1024,"name":"isAttached","url":"classes/core_physics_physicsBody.PhysicsBody.html#isAttached","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1687,"kind":1024,"name":"attachedChildren","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachedChildren","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1688,"kind":1024,"name":"attachOffset","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachOffset","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1689,"kind":1024,"name":"physics","url":"classes/core_physics_physicsBody.PhysicsBody.html#physics","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1690,"kind":65536,"name":"__type","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1691,"kind":2048,"name":"addCollider","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type.addCollider","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/physicsBody.PhysicsBody.__type"},{"id":1692,"kind":2048,"name":"addHitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type.addHitbox","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/physicsBody.PhysicsBody.__type"},{"id":1693,"kind":2048,"name":"setBounds","url":"classes/core_physics_physicsBody.PhysicsBody.html#__type.setBounds","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/physics/physicsBody.PhysicsBody.__type"},{"id":1694,"kind":2048,"name":"setEnabled","url":"classes/core_physics_physicsBody.PhysicsBody.html#setEnabled","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1695,"kind":2048,"name":"_update","url":"classes/core_physics_physicsBody.PhysicsBody.html#_update","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1696,"kind":2048,"name":"setType","url":"classes/core_physics_physicsBody.PhysicsBody.html#setType","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1697,"kind":2048,"name":"attachTo","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachTo","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1698,"kind":2048,"name":"attachChild","url":"classes/core_physics_physicsBody.PhysicsBody.html#attachChild","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1699,"kind":2048,"name":"detachFrom","url":"classes/core_physics_physicsBody.PhysicsBody.html#detachFrom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1700,"kind":2048,"name":"detachChild","url":"classes/core_physics_physicsBody.PhysicsBody.html#detachChild","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1701,"kind":2048,"name":"setVelocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#setVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1702,"kind":2048,"name":"setVelocityX","url":"classes/core_physics_physicsBody.PhysicsBody.html#setVelocityX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1703,"kind":2048,"name":"setVelocityY","url":"classes/core_physics_physicsBody.PhysicsBody.html#setVelocityY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1704,"kind":2048,"name":"accelerateVelocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#accelerateVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1705,"kind":2048,"name":"applyFriction","url":"classes/core_physics_physicsBody.PhysicsBody.html#applyFriction","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1706,"kind":2048,"name":"applyGravity","url":"classes/core_physics_physicsBody.PhysicsBody.html#applyGravity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1707,"kind":2048,"name":"bounceVelocityBounds","url":"classes/core_physics_physicsBody.PhysicsBody.html#bounceVelocityBounds","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1708,"kind":2048,"name":"reflectVelocity","url":"classes/core_physics_physicsBody.PhysicsBody.html#reflectVelocity","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1709,"kind":2048,"name":"autoFitHitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#autoFitHitbox","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1710,"kind":2048,"name":"scaleHitbox","url":"classes/core_physics_physicsBody.PhysicsBody.html#scaleHitbox","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1711,"kind":2048,"name":"getTop","url":"classes/core_physics_physicsBody.PhysicsBody.html#getTop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1712,"kind":2048,"name":"getBottom","url":"classes/core_physics_physicsBody.PhysicsBody.html#getBottom","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1713,"kind":2048,"name":"getLeft","url":"classes/core_physics_physicsBody.PhysicsBody.html#getLeft","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1714,"kind":2048,"name":"getRight","url":"classes/core_physics_physicsBody.PhysicsBody.html#getRight","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1715,"kind":2048,"name":"getCenter","url":"classes/core_physics_physicsBody.PhysicsBody.html#getCenter","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1716,"kind":2048,"name":"getCenterY","url":"classes/core_physics_physicsBody.PhysicsBody.html#getCenterY","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1717,"kind":2048,"name":"getCenterX","url":"classes/core_physics_physicsBody.PhysicsBody.html#getCenterX","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1718,"kind":2048,"name":"isColliding","url":"classes/core_physics_physicsBody.PhysicsBody.html#isColliding","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1719,"kind":2048,"name":"isCollidingGroup","url":"classes/core_physics_physicsBody.PhysicsBody.html#isCollidingGroup","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/physicsBody.PhysicsBody"},{"id":1720,"kind":2,"name":"core/physics/server/physicsServer","url":"modules/core_physics_server_physicsServer.html","classes":"tsd-kind-module"},{"id":1721,"kind":128,"name":"PhysicsServer","url":"classes/core_physics_server_physicsServer.PhysicsServer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/physics/server/physicsServer"},{"id":1722,"kind":512,"name":"constructor","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1723,"kind":1024,"name":"game","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1724,"kind":1024,"name":"scene","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1725,"kind":2048,"name":"__tick","url":"classes/core_physics_server_physicsServer.PhysicsServer.html#__tick","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/physics/server/physicsServer.PhysicsServer"},{"id":1726,"kind":2,"name":"core/physics/utils/circleToRectIntersect","url":"modules/core_physics_utils_circleToRectIntersect.html","classes":"tsd-kind-module"},{"id":1727,"kind":64,"name":"circleRectCollision","url":"modules/core_physics_utils_circleToRectIntersect.html#circleRectCollision","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/physics/utils/circleToRectIntersect"},{"id":1728,"kind":2,"name":"core/physics/utils/hitboxFaceIntersect","url":"modules/core_physics_utils_hitboxFaceIntersect.html","classes":"tsd-kind-module"},{"id":1729,"kind":64,"name":"hitboxFaceIntersect","url":"modules/core_physics_utils_hitboxFaceIntersect.html#hitboxFaceIntersect","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/physics/utils/hitboxFaceIntersect"},{"id":1730,"kind":2,"name":"core/physics/utils/rectToRectIntersect","url":"modules/core_physics_utils_rectToRectIntersect.html","classes":"tsd-kind-module"},{"id":1731,"kind":64,"name":"rectToRectIntersect","url":"modules/core_physics_utils_rectToRectIntersect.html#rectToRectIntersect","classes":"tsd-kind-function tsd-parent-kind-module","parent":"core/physics/utils/rectToRectIntersect"},{"id":1732,"kind":2,"name":"core/renderer/baseRenderer","url":"modules/core_renderer_baseRenderer.html","classes":"tsd-kind-module"},{"id":1733,"kind":128,"name":"BaseRenderer","url":"classes/core_renderer_baseRenderer.BaseRenderer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/renderer/baseRenderer"},{"id":1734,"kind":512,"name":"constructor","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1735,"kind":1024,"name":"game","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1736,"kind":2048,"name":"clearFrame","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#clearFrame","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1737,"kind":2048,"name":"drawRect","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawRect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1738,"kind":2048,"name":"drawCircle","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawCircle","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1739,"kind":2048,"name":"drawRoundRect","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawRoundRect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1740,"kind":2048,"name":"drawSprite","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawSprite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1741,"kind":2048,"name":"save","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#save","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1742,"kind":2048,"name":"restore","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#restore","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1743,"kind":2048,"name":"scale","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#scale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1744,"kind":2048,"name":"translate","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#translate","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1745,"kind":2048,"name":"transform","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#transform","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1746,"kind":2048,"name":"setFont","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setFont","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1747,"kind":2048,"name":"measureText","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#measureText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1748,"kind":2048,"name":"drawText","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#drawText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1749,"kind":2048,"name":"strokeText","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#strokeText","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1750,"kind":2048,"name":"setFillColor","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1751,"kind":2048,"name":"setStrokeColor","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setStrokeColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1752,"kind":2048,"name":"setLineWidth","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setLineWidth","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1753,"kind":2048,"name":"setBlendMode","url":"classes/core_renderer_baseRenderer.BaseRenderer.html#setBlendMode","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/baseRenderer.BaseRenderer"},{"id":1754,"kind":2,"name":"core/renderer/canvas/canvasRenderer","url":"modules/core_renderer_canvas_canvasRenderer.html","classes":"tsd-kind-module"},{"id":1755,"kind":128,"name":"CanvasRenderer","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/renderer/canvas/canvasRenderer"},{"id":1756,"kind":512,"name":"constructor","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1757,"kind":1024,"name":"ctx","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#ctx","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1758,"kind":1024,"name":"pipeline","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#pipeline","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1759,"kind":2048,"name":"render","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#render","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1760,"kind":2048,"name":"save","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#save","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1761,"kind":2048,"name":"restore","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#restore","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1762,"kind":2048,"name":"translate","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#translate","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1763,"kind":2048,"name":"transform","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#transform","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1764,"kind":2048,"name":"scale","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#scale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1765,"kind":2048,"name":"setFont","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setFont","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1766,"kind":2048,"name":"measureText","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#measureText","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1767,"kind":2048,"name":"setFillColor","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1768,"kind":2048,"name":"setStrokeColor","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setStrokeColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1769,"kind":2048,"name":"setLineWidth","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setLineWidth","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1770,"kind":2048,"name":"drawText","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawText","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1771,"kind":2048,"name":"strokeText","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#strokeText","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1772,"kind":2048,"name":"clearFrame","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#clearFrame","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1773,"kind":2048,"name":"clearRect","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#clearRect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1774,"kind":2048,"name":"drawRect","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawRect","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1775,"kind":2048,"name":"drawCircle","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawCircle","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1776,"kind":2048,"name":"drawRoundRect","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawRoundRect","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1777,"kind":2048,"name":"drawSprite","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#drawSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1778,"kind":2048,"name":"setBlendMode","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#setBlendMode","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1779,"kind":1024,"name":"game","url":"classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/renderer/canvas/canvasRenderer.CanvasRenderer"},{"id":1780,"kind":2,"name":"core/renderer/canvas/const/blendModes","url":"modules/core_renderer_canvas_const_blendModes.html","classes":"tsd-kind-module"},{"id":1781,"kind":32,"name":"BlendModes","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"core/renderer/canvas/const/blendModes"},{"id":1782,"kind":65536,"name":"__type","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"core/renderer/canvas/const/blendModes.BlendModes"},{"id":1783,"kind":1024,"name":"source-over","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_over","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1784,"kind":1024,"name":"source-in","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_in","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1785,"kind":1024,"name":"source-out","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_out","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1786,"kind":1024,"name":"source-atop","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.source_atop","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1787,"kind":1024,"name":"destination-over","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_over","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1788,"kind":1024,"name":"destination-in","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_in","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1789,"kind":1024,"name":"destination-out","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_out","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1790,"kind":1024,"name":"destination-atop","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.destination_atop","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1791,"kind":1024,"name":"lighter","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.lighter","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1792,"kind":1024,"name":"copy","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.copy","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1793,"kind":1024,"name":"xor","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.xor","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1794,"kind":1024,"name":"multiply","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.multiply","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1795,"kind":1024,"name":"screen","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.screen","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1796,"kind":1024,"name":"overlay","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.overlay","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1797,"kind":1024,"name":"darken","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.darken","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1798,"kind":1024,"name":"lighten","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.lighten","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1799,"kind":1024,"name":"color-dodge","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.color_dodge","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1800,"kind":1024,"name":"color-burn","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.color_burn","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1801,"kind":1024,"name":"hard-light","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.hard_light","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1802,"kind":1024,"name":"soft-light","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.soft_light","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1803,"kind":1024,"name":"difference","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.difference","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1804,"kind":1024,"name":"exclusion","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.exclusion","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1805,"kind":1024,"name":"hue","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.hue","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1806,"kind":1024,"name":"saturation","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.saturation","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1807,"kind":1024,"name":"color","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.color","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1808,"kind":1024,"name":"luminosity","url":"modules/core_renderer_canvas_const_blendModes.html#BlendModes.__type.luminosity","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/renderer/canvas/const/blendModes.BlendModes.__type"},{"id":1809,"kind":2,"name":"core/renderer/canvas/pipeline/rendererPipeline","url":"modules/core_renderer_canvas_pipeline_rendererPipeline.html","classes":"tsd-kind-module"},{"id":1810,"kind":128,"name":"RendererPipeline","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/renderer/canvas/pipeline/rendererPipeline"},{"id":1811,"kind":512,"name":"constructor","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1812,"kind":1024,"name":"game","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1813,"kind":1024,"name":"poolInterval","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#poolInterval","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1814,"kind":1024,"name":"poolingInterval","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#poolingInterval","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1815,"kind":1024,"name":"poolStack","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#poolStack","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1816,"kind":1024,"name":"updateTimeInterval","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#updateTimeInterval","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1817,"kind":2048,"name":"pool","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#pool","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1818,"kind":2048,"name":"updateTime","url":"classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html#updateTime","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/renderer/canvas/pipeline/rendererPipeline.RendererPipeline"},{"id":1819,"kind":2,"name":"core/renderer/models/color","url":"modules/core_renderer_models_color.html","classes":"tsd-kind-module"},{"id":1820,"kind":128,"name":"Color","url":"classes/core_renderer_models_color.Color.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/renderer/models/color"},{"id":1821,"kind":262144,"name":"lightRed","url":"classes/core_renderer_models_color.Color.html#lightRed","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1822,"kind":262144,"name":"red","url":"classes/core_renderer_models_color.Color.html#red","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1823,"kind":262144,"name":"darkRed","url":"classes/core_renderer_models_color.Color.html#darkRed","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1824,"kind":262144,"name":"lightOrange","url":"classes/core_renderer_models_color.Color.html#lightOrange","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1825,"kind":262144,"name":"orange","url":"classes/core_renderer_models_color.Color.html#orange","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1826,"kind":262144,"name":"darkOrange","url":"classes/core_renderer_models_color.Color.html#darkOrange","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1827,"kind":262144,"name":"lightYellow","url":"classes/core_renderer_models_color.Color.html#lightYellow","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1828,"kind":262144,"name":"yellow","url":"classes/core_renderer_models_color.Color.html#yellow","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1829,"kind":262144,"name":"darkYellow","url":"classes/core_renderer_models_color.Color.html#darkYellow","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1830,"kind":262144,"name":"lightGreen","url":"classes/core_renderer_models_color.Color.html#lightGreen","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1831,"kind":262144,"name":"green","url":"classes/core_renderer_models_color.Color.html#green","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1832,"kind":262144,"name":"darkGreen","url":"classes/core_renderer_models_color.Color.html#darkGreen","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1833,"kind":262144,"name":"lightBlue","url":"classes/core_renderer_models_color.Color.html#lightBlue","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1834,"kind":262144,"name":"blue","url":"classes/core_renderer_models_color.Color.html#blue","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1835,"kind":262144,"name":"darkBlue","url":"classes/core_renderer_models_color.Color.html#darkBlue","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1836,"kind":262144,"name":"lightPurple","url":"classes/core_renderer_models_color.Color.html#lightPurple","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1837,"kind":262144,"name":"purple","url":"classes/core_renderer_models_color.Color.html#purple","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1838,"kind":262144,"name":"darkPurple","url":"classes/core_renderer_models_color.Color.html#darkPurple","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1839,"kind":262144,"name":"white","url":"classes/core_renderer_models_color.Color.html#white","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1840,"kind":262144,"name":"gray","url":"classes/core_renderer_models_color.Color.html#gray","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1841,"kind":262144,"name":"black","url":"classes/core_renderer_models_color.Color.html#black","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1842,"kind":262144,"name":"pink","url":"classes/core_renderer_models_color.Color.html#pink","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-static","parent":"core/renderer/models/color.Color"},{"id":1843,"kind":512,"name":"constructor","url":"classes/core_renderer_models_color.Color.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/renderer/models/color.Color"},{"id":1844,"kind":1024,"name":"value","url":"classes/core_renderer_models_color.Color.html#value","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/models/color.Color"},{"id":1845,"kind":1024,"name":"stroke","url":"classes/core_renderer_models_color.Color.html#stroke","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/models/color.Color"},{"id":1846,"kind":1024,"name":"strokeWidth","url":"classes/core_renderer_models_color.Color.html#strokeWidth","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/renderer/models/color.Color"},{"id":1847,"kind":2,"name":"core/scene","url":"modules/core_scene.html","classes":"tsd-kind-module"},{"id":1848,"kind":128,"name":"Scene","url":"classes/core_scene.Scene.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/scene"},{"id":1849,"kind":512,"name":"constructor","url":"classes/core_scene.Scene.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/scene.Scene"},{"id":1850,"kind":1024,"name":"key","url":"classes/core_scene.Scene.html#key","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1851,"kind":1024,"name":"visible","url":"classes/core_scene.Scene.html#visible","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1852,"kind":1024,"name":"default","url":"classes/core_scene.Scene.html#default","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1853,"kind":1024,"name":"game","url":"classes/core_scene.Scene.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/scene.Scene"},{"id":1854,"kind":1024,"name":"currentCamera","url":"classes/core_scene.Scene.html#currentCamera","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1855,"kind":1024,"name":"mainCamera","url":"classes/core_scene.Scene.html#mainCamera-1","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1856,"kind":1024,"name":"cameras","url":"classes/core_scene.Scene.html#cameras","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1857,"kind":1024,"name":"displayList","url":"classes/core_scene.Scene.html#displayList","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1858,"kind":1024,"name":"physicsList","url":"classes/core_scene.Scene.html#physicsList","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1859,"kind":1024,"name":"loader","url":"classes/core_scene.Scene.html#loader","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1860,"kind":1024,"name":"physicsServer","url":"classes/core_scene.Scene.html#physicsServer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1861,"kind":1024,"name":"onActive","url":"classes/core_scene.Scene.html#onActive","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1862,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-8","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1863,"kind":1024,"name":"onInactive","url":"classes/core_scene.Scene.html#onInactive","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1864,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-9","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1865,"kind":1024,"name":"add","url":"classes/core_scene.Scene.html#add","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1866,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1867,"kind":2048,"name":"color","url":"classes/core_scene.Scene.html#__type.color","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1868,"kind":1024,"name":"gameobject","url":"classes/core_scene.Scene.html#__type.gameobject","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1869,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1870,"kind":1024,"name":"misc","url":"classes/core_scene.Scene.html#__type.__type-1.misc","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1871,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-1.__type-2","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1872,"kind":2048,"name":"canvasModulate","url":"classes/core_scene.Scene.html#__type.__type-1.__type-2.canvasModulate","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1873,"kind":2048,"name":"existing","url":"classes/core_scene.Scene.html#__type.__type-1.existing","classes":"tsd-kind-method tsd-parent-kind-type-literal tsd-has-type-parameter","parent":"core/scene.Scene.__type.__type"},{"id":1874,"kind":2048,"name":"sprite","url":"classes/core_scene.Scene.html#__type.__type-1.sprite","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1875,"kind":2048,"name":"rect","url":"classes/core_scene.Scene.html#__type.__type-1.rect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1876,"kind":2048,"name":"circle","url":"classes/core_scene.Scene.html#__type.__type-1.circle","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1877,"kind":2048,"name":"roundRect","url":"classes/core_scene.Scene.html#__type.__type-1.roundRect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1878,"kind":1024,"name":"misc","url":"classes/core_scene.Scene.html#__type.misc-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1879,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-5","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1880,"kind":2048,"name":"area","url":"classes/core_scene.Scene.html#__type.__type-5.area","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1881,"kind":1024,"name":"ui","url":"classes/core_scene.Scene.html#__type.ui","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1882,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-7","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1883,"kind":2048,"name":"text","url":"classes/core_scene.Scene.html#__type.__type-7.text","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1884,"kind":2048,"name":"button","url":"classes/core_scene.Scene.html#__type.__type-7.button","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1885,"kind":2048,"name":"sound","url":"classes/core_scene.Scene.html#__type.sound","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1886,"kind":2048,"name":"input","url":"classes/core_scene.Scene.html#__type.input","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1887,"kind":2048,"name":"camera","url":"classes/core_scene.Scene.html#__type.camera","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1888,"kind":2048,"name":"mainCamera","url":"classes/core_scene.Scene.html#__type.mainCamera","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1889,"kind":1024,"name":"light","url":"classes/core_scene.Scene.html#__type.light","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1890,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-3","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1891,"kind":2048,"name":"staticLight","url":"classes/core_scene.Scene.html#__type.__type-3.staticLight","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1892,"kind":2048,"name":"group","url":"classes/core_scene.Scene.html#__type.group","classes":"tsd-kind-method tsd-parent-kind-type-literal tsd-has-type-parameter","parent":"core/scene.Scene.__type"},{"id":1893,"kind":2048,"name":"particle","url":"classes/core_scene.Scene.html#__type.particle","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1894,"kind":2048,"name":"particleEmitter","url":"classes/core_scene.Scene.html#__type.particleEmitter","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1895,"kind":2048,"name":"cutscene","url":"classes/core_scene.Scene.html#__type.cutscene","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1896,"kind":1024,"name":"map","url":"classes/core_scene.Scene.html#__type.map","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1897,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-4","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1898,"kind":2048,"name":"tilemap","url":"classes/core_scene.Scene.html#__type.__type-4.tilemap","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1899,"kind":2048,"name":"tileset","url":"classes/core_scene.Scene.html#__type.__type-4.tileset","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1900,"kind":2048,"name":"tileLayer","url":"classes/core_scene.Scene.html#__type.__type-4.tileLayer","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1901,"kind":2048,"name":"effect","url":"classes/core_scene.Scene.html#__type.effect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1902,"kind":1024,"name":"presetEffect","url":"classes/core_scene.Scene.html#__type.presetEffect","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1903,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type.__type-6","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1904,"kind":2048,"name":"explosionEffect","url":"classes/core_scene.Scene.html#__type.__type-6.explosionEffect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1905,"kind":2048,"name":"smokeEffect","url":"classes/core_scene.Scene.html#__type.__type-6.smokeEffect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1906,"kind":1024,"name":"tools","url":"classes/core_scene.Scene.html#tools","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1907,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1908,"kind":1024,"name":"loader","url":"classes/core_scene.Scene.html#__type-10.loader-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1909,"kind":1024,"name":"staticColor","url":"classes/core_scene.Scene.html#__type-10.staticColor","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1910,"kind":1024,"name":"color","url":"classes/core_scene.Scene.html#__type-10.color-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1911,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1912,"kind":2048,"name":"random","url":"classes/core_scene.Scene.html#__type-10.__type-11.random","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1913,"kind":2048,"name":"randomWithAlpha","url":"classes/core_scene.Scene.html#__type-10.__type-11.randomWithAlpha","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1914,"kind":1024,"name":"is","url":"classes/core_scene.Scene.html#__type-10.__type-11.is","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1915,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1916,"kind":2048,"name":"hex","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16.hex-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1917,"kind":2048,"name":"hsl","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16.hsl","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1918,"kind":2048,"name":"rgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-16.rgb-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1919,"kind":1024,"name":"convert","url":"classes/core_scene.Scene.html#__type-10.__type-11.convert","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1920,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1921,"kind":1024,"name":"rgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.rgb","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1922,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-14","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1923,"kind":2048,"name":"toHsl","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-14.toHsl-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1924,"kind":2048,"name":"toRgba","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-14.toRgba-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1925,"kind":1024,"name":"rgba","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.rgba","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1926,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-15","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1927,"kind":2048,"name":"toHsla","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-15.toHsla","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1928,"kind":2048,"name":"toRgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-15.toRgb-1","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1929,"kind":1024,"name":"hex","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.hex","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1930,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type"},{"id":1931,"kind":2048,"name":"toRgba","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13.toRgba","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1932,"kind":2048,"name":"toRgb","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13.toRgb","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1933,"kind":2048,"name":"toHsl","url":"classes/core_scene.Scene.html#__type-10.__type-11.__type-12.__type-13.toHsl","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type.__type.__type"},{"id":1934,"kind":1024,"name":"physics","url":"classes/core_scene.Scene.html#__type-10.physics","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1935,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-18","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1936,"kind":2048,"name":"rectToRectIntersect","url":"classes/core_scene.Scene.html#__type-10.__type-18.rectToRectIntersect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1937,"kind":2048,"name":"circleToRectIntersect","url":"classes/core_scene.Scene.html#__type-10.__type-18.circleToRectIntersect","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1938,"kind":1024,"name":"math","url":"classes/core_scene.Scene.html#__type-10.math","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1939,"kind":65536,"name":"__type","url":"classes/core_scene.Scene.html#__type-10.__type-17","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type"},{"id":1940,"kind":2048,"name":"createVector","url":"classes/core_scene.Scene.html#__type-10.__type-17.createVector","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1941,"kind":1024,"name":"vector","url":"classes/core_scene.Scene.html#__type-10.__type-17.vector","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1942,"kind":2048,"name":"clamp","url":"classes/core_scene.Scene.html#__type-10.__type-17.clamp","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1943,"kind":2048,"name":"lerp","url":"classes/core_scene.Scene.html#__type-10.__type-17.lerp","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1944,"kind":2048,"name":"randomInt","url":"classes/core_scene.Scene.html#__type-10.__type-17.randomInt","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1945,"kind":2048,"name":"randomFloat","url":"classes/core_scene.Scene.html#__type-10.__type-17.randomFloat","classes":"tsd-kind-method tsd-parent-kind-type-literal","parent":"core/scene.Scene.__type.__type"},{"id":1946,"kind":2048,"name":"__tick","url":"classes/core_scene.Scene.html#__tick","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1947,"kind":2048,"name":"setVisible","url":"classes/core_scene.Scene.html#setVisible","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1948,"kind":2048,"name":"switchCamera","url":"classes/core_scene.Scene.html#switchCamera","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1949,"kind":2048,"name":"switchToMainCamera","url":"classes/core_scene.Scene.html#switchToMainCamera","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1950,"kind":2048,"name":"setMainCamera","url":"classes/core_scene.Scene.html#setMainCamera","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1951,"kind":2048,"name":"once","url":"classes/core_scene.Scene.html#once","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1952,"kind":2048,"name":"runAmount","url":"classes/core_scene.Scene.html#runAmount","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1953,"kind":2048,"name":"createTimer","url":"classes/core_scene.Scene.html#createTimer","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/scene.Scene"},{"id":1954,"kind":2,"name":"core/sound/models/baseSoundPlayer","url":"modules/core_sound_models_baseSoundPlayer.html","classes":"tsd-kind-module"},{"id":1955,"kind":128,"name":"BaseSoundPlayer","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/sound/models/baseSoundPlayer"},{"id":1956,"kind":512,"name":"constructor","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1957,"kind":1024,"name":"path","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#path","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1958,"kind":1024,"name":"game","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1959,"kind":1024,"name":"soundSprites","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#soundSprites","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1960,"kind":2048,"name":"play","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#play","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1961,"kind":2048,"name":"pause","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#pause","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1962,"kind":2048,"name":"stop","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#stop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1963,"kind":2048,"name":"mute","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#mute","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1964,"kind":2048,"name":"unmute","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#unmute","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1965,"kind":2048,"name":"loop","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#loop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1966,"kind":2048,"name":"seek","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#seek","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1967,"kind":2048,"name":"restart","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#restart","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1968,"kind":2048,"name":"setVolume","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#setVolume","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1969,"kind":2048,"name":"fadeVolume","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#fadeVolume","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1970,"kind":2048,"name":"fadeVolumeAndPlay","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#fadeVolumeAndPlay","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1971,"kind":2048,"name":"fadeVolumeAndPause","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#fadeVolumeAndPause","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1972,"kind":2048,"name":"fadeVolumeAndStop","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#fadeVolumeAndStop","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1973,"kind":2048,"name":"playSoundSprite","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#playSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1974,"kind":2048,"name":"createSoundSprite","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#createSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1975,"kind":2048,"name":"removeSoundSprite","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#removeSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1976,"kind":262144,"name":"duration","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#duration","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1977,"kind":262144,"name":"isPlaying","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#isPlaying","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1978,"kind":262144,"name":"isPaused","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#isPaused","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1979,"kind":262144,"name":"currentVolume","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#currentVolume","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1980,"kind":262144,"name":"isMuted","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#isMuted","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1981,"kind":262144,"name":"isLooping","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#isLooping","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1982,"kind":262144,"name":"currentTime","url":"classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html#currentTime","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/sound/models/baseSoundPlayer.BaseSoundPlayer"},{"id":1983,"kind":2,"name":"core/sound/models/htmlSoundPlayer","url":"modules/core_sound_models_htmlSoundPlayer.html","classes":"tsd-kind-module"},{"id":1984,"kind":128,"name":"HTMLSoundPlayer","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/sound/models/htmlSoundPlayer"},{"id":1985,"kind":512,"name":"constructor","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1986,"kind":1024,"name":"element","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#element","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1987,"kind":2048,"name":"play","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#play","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1988,"kind":2048,"name":"pause","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#pause","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1989,"kind":2048,"name":"mute","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#mute","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1990,"kind":2048,"name":"unmute","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#unmute","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1991,"kind":2048,"name":"stop","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#stop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1992,"kind":2048,"name":"loop","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#loop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1993,"kind":2048,"name":"seek","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#seek","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1994,"kind":2048,"name":"restart","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#restart","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1995,"kind":2048,"name":"playSoundSprite","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#playSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1996,"kind":2048,"name":"createSoundSprite","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#createSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1997,"kind":2048,"name":"removeSoundSprite","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#removeSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1998,"kind":2048,"name":"setVolume","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#setVolume","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":1999,"kind":2048,"name":"fadeVolume","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#fadeVolume","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2000,"kind":2048,"name":"fadeVolumeAndPlay","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#fadeVolumeAndPlay","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2001,"kind":2048,"name":"fadeVolumeAndPause","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#fadeVolumeAndPause","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2002,"kind":2048,"name":"fadeVolumeAndStop","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#fadeVolumeAndStop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2003,"kind":262144,"name":"duration","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#duration","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2004,"kind":262144,"name":"isPlaying","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#isPlaying","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2005,"kind":262144,"name":"isPaused","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#isPaused","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2006,"kind":262144,"name":"currentVolume","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#currentVolume","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2007,"kind":262144,"name":"isMuted","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#isMuted","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2008,"kind":262144,"name":"isLooping","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#isLooping","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2009,"kind":262144,"name":"currentTime","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#currentTime","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2010,"kind":1024,"name":"path","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#path","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2011,"kind":1024,"name":"game","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2012,"kind":1024,"name":"soundSprites","url":"classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html#soundSprites","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected","parent":"core/sound/models/htmlSoundPlayer.HTMLSoundPlayer"},{"id":2013,"kind":2,"name":"core/sound/models/misc/soundSprite","url":"modules/core_sound_models_misc_soundSprite.html","classes":"tsd-kind-module"},{"id":2014,"kind":128,"name":"SoundSprite","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/sound/models/misc/soundSprite"},{"id":2015,"kind":512,"name":"constructor","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/sound/models/misc/soundSprite.SoundSprite"},{"id":2016,"kind":1024,"name":"key","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html#key","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/misc/soundSprite.SoundSprite"},{"id":2017,"kind":1024,"name":"start","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html#start","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/misc/soundSprite.SoundSprite"},{"id":2018,"kind":1024,"name":"end","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html#end","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/misc/soundSprite.SoundSprite"},{"id":2019,"kind":1024,"name":"soundPlayer","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html#soundPlayer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/misc/soundSprite.SoundSprite"},{"id":2020,"kind":1024,"name":"game","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/misc/soundSprite.SoundSprite"},{"id":2021,"kind":2048,"name":"play","url":"classes/core_sound_models_misc_soundSprite.SoundSprite.html#play","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/misc/soundSprite.SoundSprite"},{"id":2022,"kind":2,"name":"core/sound/models/webSoundPlayer","url":"modules/core_sound_models_webSoundPlayer.html","classes":"tsd-kind-module"},{"id":2023,"kind":128,"name":"WebSoundPlayer","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/sound/models/webSoundPlayer"},{"id":2024,"kind":512,"name":"constructor","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2025,"kind":1024,"name":"context","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#context","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2026,"kind":1024,"name":"sourceNode","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#sourceNode","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2027,"kind":1024,"name":"audioBuffer","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#audioBuffer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2028,"kind":1024,"name":"gainNode","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#gainNode","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2029,"kind":1024,"name":"seekTo","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#seekTo","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2030,"kind":1024,"name":"paused","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#paused","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2031,"kind":1024,"name":"muted","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#muted","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2032,"kind":1024,"name":"volume","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#volume","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2033,"kind":1024,"name":"looping","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#looping","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2034,"kind":2048,"name":"recreateNodes","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#recreateNodes","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2035,"kind":2048,"name":"play","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#play","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2036,"kind":2048,"name":"pause","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#pause","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2037,"kind":2048,"name":"stop","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#stop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2038,"kind":2048,"name":"mute","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#mute","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2039,"kind":2048,"name":"unmute","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#unmute","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2040,"kind":2048,"name":"loop","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#loop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2041,"kind":2048,"name":"seek","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#seek","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2042,"kind":2048,"name":"restart","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#restart","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2043,"kind":2048,"name":"setVolume","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#setVolume","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2044,"kind":2048,"name":"fadeVolume","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#fadeVolume","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2045,"kind":2048,"name":"fadeVolumeAndPlay","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#fadeVolumeAndPlay","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2046,"kind":2048,"name":"fadeVolumeAndPause","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#fadeVolumeAndPause","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2047,"kind":2048,"name":"fadeVolumeAndStop","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#fadeVolumeAndStop","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2048,"kind":2048,"name":"playSoundSprite","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#playSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2049,"kind":2048,"name":"createSoundSprite","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#createSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2050,"kind":2048,"name":"removeSoundSprite","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#removeSoundSprite","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2051,"kind":262144,"name":"duration","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#duration","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2052,"kind":262144,"name":"isPlaying","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#isPlaying","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2053,"kind":262144,"name":"isPaused","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#isPaused","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2054,"kind":262144,"name":"currentVolume","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#currentVolume","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2055,"kind":262144,"name":"isMuted","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#isMuted","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2056,"kind":262144,"name":"isLooping","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#isLooping","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2057,"kind":262144,"name":"currentTime","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#currentTime","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-overwrite","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2058,"kind":1024,"name":"path","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#path","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2059,"kind":1024,"name":"game","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#game","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2060,"kind":1024,"name":"soundSprites","url":"classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html#soundSprites","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited tsd-is-protected","parent":"core/sound/models/webSoundPlayer.WebSoundPlayer"},{"id":2061,"kind":2,"name":"core/sound/sound","url":"modules/core_sound_sound.html","classes":"tsd-kind-module"},{"id":2062,"kind":128,"name":"Sound","url":"classes/core_sound_sound.Sound.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/sound/sound"},{"id":2063,"kind":512,"name":"constructor","url":"classes/core_sound_sound.Sound.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/sound/sound.Sound"},{"id":2064,"kind":1024,"name":"pathOrKey","url":"classes/core_sound_sound.Sound.html#pathOrKey","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/sound.Sound"},{"id":2065,"kind":1024,"name":"game","url":"classes/core_sound_sound.Sound.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/sound.Sound"},{"id":2066,"kind":1024,"name":"scene","url":"classes/core_sound_sound.Sound.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/sound.Sound"},{"id":2067,"kind":1024,"name":"soundPlayer","url":"classes/core_sound_sound.Sound.html#soundPlayer","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/sound/sound.Sound"},{"id":2068,"kind":2,"name":"core/storage/cacheManager","url":"modules/core_storage_cacheManager.html","classes":"tsd-kind-module"},{"id":2069,"kind":128,"name":"CacheManager","url":"classes/core_storage_cacheManager.CacheManager.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/storage/cacheManager"},{"id":2070,"kind":512,"name":"constructor","url":"classes/core_storage_cacheManager.CacheManager.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2071,"kind":1024,"name":"cache","url":"classes/core_storage_cacheManager.CacheManager.html#cache","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-protected","parent":"core/storage/cacheManager.CacheManager"},{"id":2072,"kind":65536,"name":"__type","url":"classes/core_storage_cacheManager.CacheManager.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2073,"kind":1024,"name":"storageIdentifier","url":"classes/core_storage_cacheManager.CacheManager.html#storageIdentifier","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2074,"kind":2048,"name":"sync","url":"classes/core_storage_cacheManager.CacheManager.html#sync","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2075,"kind":2048,"name":"set","url":"classes/core_storage_cacheManager.CacheManager.html#set","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2076,"kind":2048,"name":"get","url":"classes/core_storage_cacheManager.CacheManager.html#get","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2077,"kind":2048,"name":"delete","url":"classes/core_storage_cacheManager.CacheManager.html#delete","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2078,"kind":2048,"name":"has","url":"classes/core_storage_cacheManager.CacheManager.html#has","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2079,"kind":2048,"name":"keys","url":"classes/core_storage_cacheManager.CacheManager.html#keys","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2080,"kind":2048,"name":"values","url":"classes/core_storage_cacheManager.CacheManager.html#values","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2081,"kind":2048,"name":"each","url":"classes/core_storage_cacheManager.CacheManager.html#each","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2082,"kind":262144,"name":"entries","url":"classes/core_storage_cacheManager.CacheManager.html#entries","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"core/storage/cacheManager.CacheManager"},{"id":2083,"kind":2,"name":"core/texture/texture","url":"modules/core_texture_texture.html","classes":"tsd-kind-module"},{"id":2084,"kind":128,"name":"Texture","url":"classes/core_texture_texture.Texture.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/texture/texture"},{"id":2085,"kind":2048,"name":"fromColor","url":"classes/core_texture_texture.Texture.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/texture.Texture"},{"id":2086,"kind":2048,"name":"fromTexture","url":"classes/core_texture_texture.Texture.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/texture.Texture"},{"id":2087,"kind":2048,"name":"fromEither","url":"classes/core_texture_texture.Texture.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/texture.Texture"},{"id":2088,"kind":512,"name":"constructor","url":"classes/core_texture_texture.Texture.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter tsd-is-overwrite","parent":"core/texture/texture.Texture"},{"id":2089,"kind":1024,"name":"type","url":"classes/core_texture_texture.Texture.html#type","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2090,"kind":1024,"name":"id","url":"classes/core_texture_texture.Texture.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2091,"kind":1024,"name":"dataType","url":"classes/core_texture_texture.Texture.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2092,"kind":1024,"name":"texture","url":"classes/core_texture_texture.Texture.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2093,"kind":1024,"name":"scale","url":"classes/core_texture_texture.Texture.html#scale","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2094,"kind":2048,"name":"setScale","url":"classes/core_texture_texture.Texture.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2095,"kind":2048,"name":"setImagePath","url":"classes/core_texture_texture.Texture.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2096,"kind":2048,"name":"setFillColor","url":"classes/core_texture_texture.Texture.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/texture.Texture"},{"id":2097,"kind":2,"name":"core/texture/textureAtlas","url":"modules/core_texture_textureAtlas.html","classes":"tsd-kind-module"},{"id":2098,"kind":128,"name":"TextureAtlas","url":"classes/core_texture_textureAtlas.TextureAtlas.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/texture/textureAtlas"},{"id":2099,"kind":2048,"name":"fromColor","url":"classes/core_texture_textureAtlas.TextureAtlas.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2100,"kind":2048,"name":"fromTexture","url":"classes/core_texture_textureAtlas.TextureAtlas.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2101,"kind":2048,"name":"fromEither","url":"classes/core_texture_textureAtlas.TextureAtlas.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2102,"kind":512,"name":"constructor","url":"classes/core_texture_textureAtlas.TextureAtlas.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2103,"kind":1024,"name":"game","url":"classes/core_texture_textureAtlas.TextureAtlas.html#game","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2104,"kind":1024,"name":"scene","url":"classes/core_texture_textureAtlas.TextureAtlas.html#scene","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2105,"kind":1024,"name":"json","url":"classes/core_texture_textureAtlas.TextureAtlas.html#json","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2106,"kind":2048,"name":"validateJSON","url":"classes/core_texture_textureAtlas.TextureAtlas.html#validateJSON","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2107,"kind":2048,"name":"parseJSON","url":"classes/core_texture_textureAtlas.TextureAtlas.html#parseJSON","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-protected","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2108,"kind":2048,"name":"get","url":"classes/core_texture_textureAtlas.TextureAtlas.html#get","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2109,"kind":1024,"name":"type","url":"classes/core_texture_textureAtlas.TextureAtlas.html#type","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2110,"kind":1024,"name":"id","url":"classes/core_texture_textureAtlas.TextureAtlas.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2111,"kind":1024,"name":"dataType","url":"classes/core_texture_textureAtlas.TextureAtlas.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2112,"kind":1024,"name":"texture","url":"classes/core_texture_textureAtlas.TextureAtlas.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2113,"kind":1024,"name":"scale","url":"classes/core_texture_textureAtlas.TextureAtlas.html#scale","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2114,"kind":2048,"name":"setScale","url":"classes/core_texture_textureAtlas.TextureAtlas.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2115,"kind":2048,"name":"setImagePath","url":"classes/core_texture_textureAtlas.TextureAtlas.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2116,"kind":2048,"name":"setFillColor","url":"classes/core_texture_textureAtlas.TextureAtlas.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureAtlas.TextureAtlas"},{"id":2117,"kind":2,"name":"core/texture/textureBase","url":"modules/core_texture_textureBase.html","classes":"tsd-kind-module"},{"id":2118,"kind":128,"name":"TextureBase","url":"classes/core_texture_textureBase.TextureBase.html","classes":"tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter","parent":"core/texture/textureBase"},{"id":2119,"kind":2048,"name":"fromColor","url":"classes/core_texture_textureBase.TextureBase.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/texture/textureBase.TextureBase"},{"id":2120,"kind":2048,"name":"fromTexture","url":"classes/core_texture_textureBase.TextureBase.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/texture/textureBase.TextureBase"},{"id":2121,"kind":2048,"name":"fromEither","url":"classes/core_texture_textureBase.TextureBase.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-static","parent":"core/texture/textureBase.TextureBase"},{"id":2122,"kind":512,"name":"constructor","url":"classes/core_texture_textureBase.TextureBase.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter","parent":"core/texture/textureBase.TextureBase"},{"id":2123,"kind":1024,"name":"type","url":"classes/core_texture_textureBase.TextureBase.html#type","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2124,"kind":1024,"name":"id","url":"classes/core_texture_textureBase.TextureBase.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2125,"kind":1024,"name":"dataType","url":"classes/core_texture_textureBase.TextureBase.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2126,"kind":1024,"name":"texture","url":"classes/core_texture_textureBase.TextureBase.html#texture","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2127,"kind":1024,"name":"scale","url":"classes/core_texture_textureBase.TextureBase.html#scale","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2128,"kind":2048,"name":"setScale","url":"classes/core_texture_textureBase.TextureBase.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2129,"kind":2048,"name":"setImagePath","url":"classes/core_texture_textureBase.TextureBase.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2130,"kind":2048,"name":"setFillColor","url":"classes/core_texture_textureBase.TextureBase.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"core/texture/textureBase.TextureBase"},{"id":2131,"kind":2,"name":"core/texture/textureSheet","url":"modules/core_texture_textureSheet.html","classes":"tsd-kind-module"},{"id":2132,"kind":128,"name":"TextureSheet","url":"classes/core_texture_textureSheet.TextureSheet.html","classes":"tsd-kind-class tsd-parent-kind-module","parent":"core/texture/textureSheet"},{"id":2133,"kind":2048,"name":"fromColor","url":"classes/core_texture_textureSheet.TextureSheet.html#fromColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureSheet.TextureSheet"},{"id":2134,"kind":2048,"name":"fromTexture","url":"classes/core_texture_textureSheet.TextureSheet.html#fromTexture","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureSheet.TextureSheet"},{"id":2135,"kind":2048,"name":"fromEither","url":"classes/core_texture_textureSheet.TextureSheet.html#fromEither","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited tsd-is-static","parent":"core/texture/textureSheet.TextureSheet"},{"id":2136,"kind":512,"name":"constructor","url":"classes/core_texture_textureSheet.TextureSheet.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"core/texture/textureSheet.TextureSheet"},{"id":2137,"kind":1024,"name":"frameWidth","url":"classes/core_texture_textureSheet.TextureSheet.html#frameWidth","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":2138,"kind":1024,"name":"frameHeight","url":"classes/core_texture_textureSheet.TextureSheet.html#frameHeight","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":2139,"kind":1024,"name":"rows","url":"classes/core_texture_textureSheet.TextureSheet.html#rows","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":2140,"kind":1024,"name":"cols","url":"classes/core_texture_textureSheet.TextureSheet.html#cols","classes":"tsd-kind-property tsd-parent-kind-class","parent":"core/texture/textureSheet.TextureSheet"},{"id":2141,"kind":1024,"name":"type","url":"classes/core_texture_textureSheet.TextureSheet.html#type","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2142,"kind":1024,"name":"id","url":"classes/core_texture_textureSheet.TextureSheet.html#id","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2143,"kind":1024,"name":"dataType","url":"classes/core_texture_textureSheet.TextureSheet.html#dataType","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2144,"kind":1024,"name":"texture","url":"classes/core_texture_textureSheet.TextureSheet.html#texture","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2145,"kind":1024,"name":"scale","url":"classes/core_texture_textureSheet.TextureSheet.html#scale","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2146,"kind":2048,"name":"setScale","url":"classes/core_texture_textureSheet.TextureSheet.html#setScale","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2147,"kind":2048,"name":"setImagePath","url":"classes/core_texture_textureSheet.TextureSheet.html#setImagePath","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2148,"kind":2048,"name":"setFillColor","url":"classes/core_texture_textureSheet.TextureSheet.html#setFillColor","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"core/texture/textureSheet.TextureSheet"},{"id":2149,"kind":2,"name":"index","url":"modules/index.html","classes":"tsd-kind-module"},{"id":2150,"kind":4,"name":"Duck","url":"modules/index.Duck.html","classes":"tsd-kind-namespace tsd-parent-kind-module","parent":"index"},{"id":2151,"kind":64,"name":"AutoCanvas","url":"modules/index.Duck.html#AutoCanvas","classes":"tsd-kind-function tsd-parent-kind-namespace","parent":"index.Duck"},{"id":2152,"kind":4,"name":"Classes","url":"modules/index.Duck.Classes.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":2153,"kind":32,"name":"Game","url":"modules/index.Duck.Classes.html#Game","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2154,"kind":32,"name":"Scene","url":"modules/index.Duck.Classes.html#Scene","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2155,"kind":4,"name":"GameObjects","url":"modules/index.Duck.Classes.GameObjects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2156,"kind":32,"name":"GameObject","url":"modules/index.Duck.Classes.GameObjects.html#GameObject","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2157,"kind":32,"name":"Circle","url":"modules/index.Duck.Classes.GameObjects.html#Circle","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2158,"kind":32,"name":"Rect","url":"modules/index.Duck.Classes.GameObjects.html#Rect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2159,"kind":32,"name":"RoundRect","url":"modules/index.Duck.Classes.GameObjects.html#RoundRect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2160,"kind":32,"name":"Sprite","url":"modules/index.Duck.Classes.GameObjects.html#Sprite","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2161,"kind":4,"name":"Particles","url":"modules/index.Duck.Classes.GameObjects.Particles.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2162,"kind":32,"name":"Particle","url":"modules/index.Duck.Classes.GameObjects.Particles.html#Particle","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.Particles"},{"id":2163,"kind":32,"name":"ParticleEmitter","url":"modules/index.Duck.Classes.GameObjects.Particles.html#ParticleEmitter","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.Particles"},{"id":2164,"kind":4,"name":"UI","url":"modules/index.Duck.Classes.GameObjects.UI.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2165,"kind":32,"name":"Button","url":"modules/index.Duck.Classes.GameObjects.UI.html#Button","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.UI"},{"id":2166,"kind":32,"name":"Text","url":"modules/index.Duck.Classes.GameObjects.UI.html#Text","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.UI"},{"id":2167,"kind":4,"name":"Misc","url":"modules/index.Duck.Classes.GameObjects.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects"},{"id":2168,"kind":32,"name":"CanvasModulate","url":"modules/index.Duck.Classes.GameObjects.Misc.html#CanvasModulate","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.GameObjects.Misc"},{"id":2169,"kind":4,"name":"Effects","url":"modules/index.Duck.Classes.Effects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2170,"kind":32,"name":"Effect","url":"modules/index.Duck.Classes.Effects.html#Effect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects"},{"id":2171,"kind":4,"name":"Presets","url":"modules/index.Duck.Classes.Effects.Presets.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects"},{"id":2172,"kind":32,"name":"ExplosionEffect","url":"modules/index.Duck.Classes.Effects.Presets.html#ExplosionEffect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects.Presets"},{"id":2173,"kind":32,"name":"SmokeEffect","url":"modules/index.Duck.Classes.Effects.Presets.html#SmokeEffect","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Effects.Presets"},{"id":2174,"kind":4,"name":"Misc","url":"modules/index.Duck.Classes.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2175,"kind":32,"name":"Loader","url":"modules/index.Duck.Classes.Misc.html#Loader","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":2176,"kind":32,"name":"Group","url":"modules/index.Duck.Classes.Misc.html#Group","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":2177,"kind":32,"name":"Cutscene","url":"modules/index.Duck.Classes.Misc.html#Cutscene","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":2178,"kind":32,"name":"CacheManager","url":"modules/index.Duck.Classes.Misc.html#CacheManager","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":2179,"kind":32,"name":"PluginManager","url":"modules/index.Duck.Classes.Misc.html#PluginManager","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Misc"},{"id":2180,"kind":4,"name":"Base","url":"modules/index.Duck.Classes.Base.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2181,"kind":32,"name":"Amount","url":"modules/index.Duck.Classes.Base.html#Amount","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Base"},{"id":2182,"kind":32,"name":"Once","url":"modules/index.Duck.Classes.Base.html#Once","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Base"},{"id":2183,"kind":32,"name":"Render","url":"modules/index.Duck.Classes.Base.html#Render","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Base"},{"id":2184,"kind":4,"name":"Sound","url":"modules/index.Duck.Classes.Sound.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2185,"kind":32,"name":"Sound","url":"modules/index.Duck.Classes.Sound.html#Sound","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Sound"},{"id":2186,"kind":32,"name":"WebSoundPlayer","url":"modules/index.Duck.Classes.Sound.html#WebSoundPlayer","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Sound"},{"id":2187,"kind":32,"name":"HTMLSoundPlayer","url":"modules/index.Duck.Classes.Sound.html#HTMLSoundPlayer","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Sound"},{"id":2188,"kind":32,"name":"SoundSprite","url":"modules/index.Duck.Classes.Sound.html#SoundSprite","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Sound"},{"id":2189,"kind":4,"name":"Cameras","url":"modules/index.Duck.Classes.Cameras.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2190,"kind":32,"name":"Camera","url":"modules/index.Duck.Classes.Cameras.html#Camera","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Cameras"},{"id":2191,"kind":4,"name":"Physics","url":"modules/index.Duck.Classes.Physics.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2192,"kind":32,"name":"Collider","url":"modules/index.Duck.Classes.Physics.html#Collider","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":2193,"kind":32,"name":"PhysicsServer","url":"modules/index.Duck.Classes.Physics.html#PhysicsServer","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":2194,"kind":32,"name":"PhysicsBody","url":"modules/index.Duck.Classes.Physics.html#PhysicsBody","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":2195,"kind":4,"name":"Models","url":"modules/index.Duck.Classes.Physics.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics"},{"id":2196,"kind":32,"name":"Hitbox","url":"modules/index.Duck.Classes.Physics.Models.html#Hitbox","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics.Models"},{"id":2197,"kind":32,"name":"Area","url":"modules/index.Duck.Classes.Physics.Models.html#Area","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Physics.Models"},{"id":2198,"kind":4,"name":"Models","url":"modules/index.Duck.Classes.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2199,"kind":32,"name":"DisplayList","url":"modules/index.Duck.Classes.Models.html#DisplayList","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Models"},{"id":2200,"kind":32,"name":"PhysicsList","url":"modules/index.Duck.Classes.Models.html#PhysicsList","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Models"},{"id":2201,"kind":32,"name":"Texture","url":"modules/index.Duck.Classes.Models.html#Texture","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Models"},{"id":2202,"kind":32,"name":"Color","url":"modules/index.Duck.Classes.Models.html#Color","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Models"},{"id":2203,"kind":4,"name":"Map","url":"modules/index.Duck.Classes.Map.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2204,"kind":32,"name":"Map","url":"modules/index.Duck.Classes.Map.html#Map","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Map"},{"id":2205,"kind":32,"name":"TileMap","url":"modules/index.Duck.Classes.Map.html#TileMap","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Map"},{"id":2206,"kind":4,"name":"Math","url":"modules/index.Duck.Classes.Math.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2207,"kind":32,"name":"Vector2","url":"modules/index.Duck.Classes.Math.html#Vector2","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Math"},{"id":2208,"kind":4,"name":"Lights","url":"modules/index.Duck.Classes.Lights.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2209,"kind":32,"name":"StaticLight","url":"modules/index.Duck.Classes.Lights.html#StaticLight","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Lights"},{"id":2210,"kind":4,"name":"Input","url":"modules/index.Duck.Classes.Input.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2211,"kind":32,"name":"Input","url":"modules/index.Duck.Classes.Input.html#Input","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":2212,"kind":32,"name":"KeyboardInput","url":"modules/index.Duck.Classes.Input.html#KeyboardInput","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":2213,"kind":32,"name":"MouseInput","url":"modules/index.Duck.Classes.Input.html#MouseInput","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":2214,"kind":4,"name":"Models","url":"modules/index.Duck.Classes.Input.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input"},{"id":2215,"kind":32,"name":"Key","url":"modules/index.Duck.Classes.Input.Models.html#Key","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input.Models"},{"id":2216,"kind":32,"name":"Mouse","url":"modules/index.Duck.Classes.Input.Models.html#Mouse","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Input.Models"},{"id":2217,"kind":4,"name":"Animation","url":"modules/index.Duck.Classes.Animation.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Classes"},{"id":2218,"kind":32,"name":"Animation","url":"modules/index.Duck.Classes.Animation.html#Animation","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":2219,"kind":32,"name":"AnimationFrame","url":"modules/index.Duck.Classes.Animation.html#AnimationFrame","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":2220,"kind":32,"name":"AnimationManager","url":"modules/index.Duck.Classes.Animation.html#AnimationManager","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":2221,"kind":32,"name":"AnimationState","url":"modules/index.Duck.Classes.Animation.html#AnimationState","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":2222,"kind":32,"name":"StateMachine","url":"modules/index.Duck.Classes.Animation.html#StateMachine","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Classes.Animation"},{"id":2223,"kind":4,"name":"TypeClasses","url":"modules/index.Duck.TypeClasses.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":2224,"kind":4194304,"name":"Game","url":"modules/index.Duck.TypeClasses.html#Game","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2225,"kind":4194304,"name":"Scene","url":"modules/index.Duck.TypeClasses.html#Scene","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2226,"kind":4,"name":"GameObjects","url":"modules/index.Duck.TypeClasses.GameObjects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2227,"kind":4194304,"name":"GameObject","url":"modules/index.Duck.TypeClasses.GameObjects.html#GameObject","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2228,"kind":4194304,"name":"Circle","url":"modules/index.Duck.TypeClasses.GameObjects.html#Circle","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2229,"kind":4194304,"name":"Rect","url":"modules/index.Duck.TypeClasses.GameObjects.html#Rect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2230,"kind":4194304,"name":"RoundRect","url":"modules/index.Duck.TypeClasses.GameObjects.html#RoundRect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2231,"kind":4194304,"name":"Sprite","url":"modules/index.Duck.TypeClasses.GameObjects.html#Sprite","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2232,"kind":4,"name":"Particles","url":"modules/index.Duck.TypeClasses.GameObjects.Particles.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2233,"kind":4194304,"name":"Particle","url":"modules/index.Duck.TypeClasses.GameObjects.Particles.html#Particle","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.Particles"},{"id":2234,"kind":4194304,"name":"ParticleEmitter","url":"modules/index.Duck.TypeClasses.GameObjects.Particles.html#ParticleEmitter","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.Particles"},{"id":2235,"kind":4,"name":"UI","url":"modules/index.Duck.TypeClasses.GameObjects.UI.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2236,"kind":4194304,"name":"Button","url":"modules/index.Duck.TypeClasses.GameObjects.UI.html#Button","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.UI"},{"id":2237,"kind":4194304,"name":"Text","url":"modules/index.Duck.TypeClasses.GameObjects.UI.html#Text","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.UI"},{"id":2238,"kind":4,"name":"Misc","url":"modules/index.Duck.TypeClasses.GameObjects.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects"},{"id":2239,"kind":4194304,"name":"CanvasModulate","url":"modules/index.Duck.TypeClasses.GameObjects.Misc.html#CanvasModulate","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.GameObjects.Misc"},{"id":2240,"kind":4,"name":"Effects","url":"modules/index.Duck.TypeClasses.Effects.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2241,"kind":4194304,"name":"Effect","url":"modules/index.Duck.TypeClasses.Effects.html#Effect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects"},{"id":2242,"kind":4,"name":"Presets","url":"modules/index.Duck.TypeClasses.Effects.Presets.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects"},{"id":2243,"kind":4194304,"name":"ExplosionEffect","url":"modules/index.Duck.TypeClasses.Effects.Presets.html#ExplosionEffect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects.Presets"},{"id":2244,"kind":4194304,"name":"SmokeEffect","url":"modules/index.Duck.TypeClasses.Effects.Presets.html#SmokeEffect","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Effects.Presets"},{"id":2245,"kind":4,"name":"Misc","url":"modules/index.Duck.TypeClasses.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2246,"kind":4194304,"name":"Loader","url":"modules/index.Duck.TypeClasses.Misc.html#Loader","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2247,"kind":4194304,"name":"Group","url":"modules/index.Duck.TypeClasses.Misc.html#Group","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.Misc"},{"id":2248,"kind":4194304,"name":"Cutscene","url":"modules/index.Duck.TypeClasses.Misc.html#Cutscene","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2249,"kind":4194304,"name":"CacheManager","url":"modules/index.Duck.TypeClasses.Misc.html#CacheManager","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2250,"kind":4194304,"name":"PluginManager","url":"modules/index.Duck.TypeClasses.Misc.html#PluginManager","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Misc"},{"id":2251,"kind":4,"name":"Base","url":"modules/index.Duck.TypeClasses.Base.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2252,"kind":4194304,"name":"Amount","url":"modules/index.Duck.TypeClasses.Base.html#Amount","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Base"},{"id":2253,"kind":4194304,"name":"Once","url":"modules/index.Duck.TypeClasses.Base.html#Once","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Base"},{"id":2254,"kind":4194304,"name":"Render","url":"modules/index.Duck.TypeClasses.Base.html#Render","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Base"},{"id":2255,"kind":4,"name":"Sound","url":"modules/index.Duck.TypeClasses.Sound.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2256,"kind":4194304,"name":"Sound","url":"modules/index.Duck.TypeClasses.Sound.html#Sound","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Sound"},{"id":2257,"kind":4194304,"name":"WebSoundPlayer","url":"modules/index.Duck.TypeClasses.Sound.html#WebSoundPlayer","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Sound"},{"id":2258,"kind":4194304,"name":"HTMLSoundPlayer","url":"modules/index.Duck.TypeClasses.Sound.html#HTMLSoundPlayer","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Sound"},{"id":2259,"kind":4194304,"name":"SoundSprite","url":"modules/index.Duck.TypeClasses.Sound.html#SoundSprite","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Sound"},{"id":2260,"kind":4,"name":"Cameras","url":"modules/index.Duck.TypeClasses.Cameras.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2261,"kind":4194304,"name":"Camera","url":"modules/index.Duck.TypeClasses.Cameras.html#Camera","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Cameras"},{"id":2262,"kind":4,"name":"Physics","url":"modules/index.Duck.TypeClasses.Physics.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2263,"kind":4194304,"name":"Collider","url":"modules/index.Duck.TypeClasses.Physics.html#Collider","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics"},{"id":2264,"kind":4194304,"name":"PhysicsServer","url":"modules/index.Duck.TypeClasses.Physics.html#PhysicsServer","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics"},{"id":2265,"kind":4194304,"name":"PhysicsBody","url":"modules/index.Duck.TypeClasses.Physics.html#PhysicsBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.Physics"},{"id":2266,"kind":4,"name":"Models","url":"modules/index.Duck.TypeClasses.Physics.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics"},{"id":2267,"kind":4194304,"name":"Hitbox","url":"modules/index.Duck.TypeClasses.Physics.Models.html#Hitbox","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics.Models"},{"id":2268,"kind":4194304,"name":"Area","url":"modules/index.Duck.TypeClasses.Physics.Models.html#Area","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Physics.Models"},{"id":2269,"kind":4,"name":"Models","url":"modules/index.Duck.TypeClasses.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2270,"kind":4194304,"name":"DisplayList","url":"modules/index.Duck.TypeClasses.Models.html#DisplayList","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Models"},{"id":2271,"kind":4194304,"name":"PhysicsList","url":"modules/index.Duck.TypeClasses.Models.html#PhysicsList","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Models"},{"id":2272,"kind":4194304,"name":"Texture","url":"modules/index.Duck.TypeClasses.Models.html#Texture","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.TypeClasses.Models"},{"id":2273,"kind":4194304,"name":"Color","url":"modules/index.Duck.TypeClasses.Models.html#Color","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Models"},{"id":2274,"kind":4,"name":"Map","url":"modules/index.Duck.TypeClasses.Map.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2275,"kind":4194304,"name":"Map","url":"modules/index.Duck.TypeClasses.Map.html#Map","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Map"},{"id":2276,"kind":4194304,"name":"TileMap","url":"modules/index.Duck.TypeClasses.Map.html#TileMap","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Map"},{"id":2277,"kind":4,"name":"Math","url":"modules/index.Duck.TypeClasses.Math.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2278,"kind":4194304,"name":"Vector2","url":"modules/index.Duck.TypeClasses.Math.html#Vector2","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Math"},{"id":2279,"kind":4,"name":"Lights","url":"modules/index.Duck.TypeClasses.Lights.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2280,"kind":4194304,"name":"StaticLight","url":"modules/index.Duck.TypeClasses.Lights.html#StaticLight","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Lights"},{"id":2281,"kind":4,"name":"Input","url":"modules/index.Duck.TypeClasses.Input.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2282,"kind":4194304,"name":"Input","url":"modules/index.Duck.TypeClasses.Input.html#Input","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2283,"kind":4194304,"name":"KeyboardInput","url":"modules/index.Duck.TypeClasses.Input.html#KeyboardInput","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2284,"kind":4194304,"name":"MouseInput","url":"modules/index.Duck.TypeClasses.Input.html#MouseInput","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2285,"kind":4,"name":"Models","url":"modules/index.Duck.TypeClasses.Input.Models.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input"},{"id":2286,"kind":4194304,"name":"Key","url":"modules/index.Duck.TypeClasses.Input.Models.html#Key","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input.Models"},{"id":2287,"kind":4194304,"name":"Mouse","url":"modules/index.Duck.TypeClasses.Input.Models.html#Mouse","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Input.Models"},{"id":2288,"kind":4,"name":"Animation","url":"modules/index.Duck.TypeClasses.Animation.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses"},{"id":2289,"kind":4194304,"name":"Animation","url":"modules/index.Duck.TypeClasses.Animation.html#Animation","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2290,"kind":4194304,"name":"AnimationFrame","url":"modules/index.Duck.TypeClasses.Animation.html#AnimationFrame","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2291,"kind":4194304,"name":"AnimationManager","url":"modules/index.Duck.TypeClasses.Animation.html#AnimationManager","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2292,"kind":4194304,"name":"AnimationState","url":"modules/index.Duck.TypeClasses.Animation.html#AnimationState","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2293,"kind":4194304,"name":"StateMachine","url":"modules/index.Duck.TypeClasses.Animation.html#StateMachine","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.TypeClasses.Animation"},{"id":2294,"kind":4,"name":"Layers","url":"modules/index.Duck.Layers.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":2295,"kind":4,"name":"Rendering","url":"modules/index.Duck.Layers.Rendering.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Layers"},{"id":2296,"kind":32,"name":"zIndex","url":"modules/index.Duck.Layers.Rendering.html#zIndex","classes":"tsd-kind-variable tsd-parent-kind-namespace","parent":"index.Duck.Layers.Rendering"},{"id":2297,"kind":65536,"name":"__type","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"index.Duck.Layers.Rendering.zIndex"},{"id":2298,"kind":1024,"name":"canvasModulate","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.canvasModulate","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2299,"kind":1024,"name":"gameobject","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.gameobject","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2300,"kind":1024,"name":"particle","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.particle","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2301,"kind":1024,"name":"button","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.button","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2302,"kind":1024,"name":"text","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.text","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2303,"kind":1024,"name":"graphicDebug","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.graphicDebug","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2304,"kind":1024,"name":"fades","url":"modules/index.Duck.Layers.Rendering.html#zIndex.__type.fades","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Layers.Rendering.zIndex.__type"},{"id":2305,"kind":4,"name":"Types","url":"modules/index.Duck.Types.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck"},{"id":2306,"kind":4194304,"name":"GameObject","url":"modules/index.Duck.Types.html#GameObject","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types"},{"id":2307,"kind":4194304,"name":"PhysicsProcessMember","url":"modules/index.Duck.Types.html#PhysicsProcessMember","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2308,"kind":256,"name":"Renderable","url":"interfaces/index.Duck.Types.Renderable.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2309,"kind":1024,"name":"id","url":"interfaces/index.Duck.Types.Renderable.html#id","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2310,"kind":1024,"name":"zIndex","url":"interfaces/index.Duck.Types.Renderable.html#zIndex","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2311,"kind":1024,"name":"visible","url":"interfaces/index.Duck.Types.Renderable.html#visible","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2312,"kind":1024,"name":"game","url":"interfaces/index.Duck.Types.Renderable.html#game","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2313,"kind":2048,"name":"_draw","url":"interfaces/index.Duck.Types.Renderable.html#_draw","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2314,"kind":1024,"name":"culled","url":"interfaces/index.Duck.Types.Renderable.html#culled","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Renderable"},{"id":2315,"kind":4,"name":"Game","url":"modules/index.Duck.Types.Game.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2316,"kind":256,"name":"VersionInfo","url":"interfaces/index.Duck.Types.Game.VersionInfo.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Game"},{"id":2317,"kind":1024,"name":"version","url":"interfaces/index.Duck.Types.Game.VersionInfo.html#version","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.VersionInfo"},{"id":2318,"kind":1024,"name":"date","url":"interfaces/index.Duck.Types.Game.VersionInfo.html#date","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.VersionInfo"},{"id":2319,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.Game.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Game"},{"id":2320,"kind":1024,"name":"canvas","url":"interfaces/index.Duck.Types.Game.Config.html#canvas","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2321,"kind":1024,"name":"defaultScene","url":"interfaces/index.Duck.Types.Game.Config.html#defaultScene","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2322,"kind":1024,"name":"roundPixels","url":"interfaces/index.Duck.Types.Game.Config.html#roundPixels","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2323,"kind":1024,"name":"focus","url":"interfaces/index.Duck.Types.Game.Config.html#focus","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2324,"kind":1024,"name":"blur","url":"interfaces/index.Duck.Types.Game.Config.html#blur","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2325,"kind":1024,"name":"pauseRenderingOnBlur","url":"interfaces/index.Duck.Types.Game.Config.html#pauseRenderingOnBlur","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2326,"kind":1024,"name":"physics","url":"interfaces/index.Duck.Types.Game.Config.html#physics","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2327,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Game.Config.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2328,"kind":1024,"name":"enabled","url":"interfaces/index.Duck.Types.Game.Config.html#__type.enabled","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2329,"kind":1024,"name":"gravity","url":"interfaces/index.Duck.Types.Game.Config.html#__type.gravity","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2330,"kind":1024,"name":"customTick","url":"interfaces/index.Duck.Types.Game.Config.html#__type.customTick","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2331,"kind":1024,"name":"debug","url":"interfaces/index.Duck.Types.Game.Config.html#__type.debug-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2332,"kind":2048,"name":"onPauseRendering","url":"interfaces/index.Duck.Types.Game.Config.html#onPauseRendering","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2333,"kind":2048,"name":"onResumeRendering","url":"interfaces/index.Duck.Types.Game.Config.html#onResumeRendering","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2334,"kind":1024,"name":"scale","url":"interfaces/index.Duck.Types.Game.Config.html#scale","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2335,"kind":1024,"name":"debug","url":"interfaces/index.Duck.Types.Game.Config.html#debug","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2336,"kind":1024,"name":"debugRendering","url":"interfaces/index.Duck.Types.Game.Config.html#debugRendering","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2337,"kind":1024,"name":"splashScreen","url":"interfaces/index.Duck.Types.Game.Config.html#splashScreen","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2338,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Game.Config.html#__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2339,"kind":1024,"name":"img","url":"interfaces/index.Duck.Types.Game.Config.html#__type-1.img","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2340,"kind":1024,"name":"extraDuration","url":"interfaces/index.Duck.Types.Game.Config.html#__type-1.extraDuration","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Game.Config.__type"},{"id":2341,"kind":1024,"name":"background","url":"interfaces/index.Duck.Types.Game.Config.html#background","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2342,"kind":1024,"name":"smartScale","url":"interfaces/index.Duck.Types.Game.Config.html#smartScale","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2343,"kind":1024,"name":"dprScale","url":"interfaces/index.Duck.Types.Game.Config.html#dprScale","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2344,"kind":1024,"name":"poolingInterval","url":"interfaces/index.Duck.Types.Game.Config.html#poolingInterval","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Config"},{"id":2345,"kind":256,"name":"Stack","url":"interfaces/index.Duck.Types.Game.Stack.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Game"},{"id":2346,"kind":1024,"name":"scenes","url":"interfaces/index.Duck.Types.Game.Stack.html#scenes","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Stack"},{"id":2347,"kind":1024,"name":"defaultScene","url":"interfaces/index.Duck.Types.Game.Stack.html#defaultScene","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Stack"},{"id":2348,"kind":256,"name":"Plugin","url":"interfaces/index.Duck.Types.Game.Plugin.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Game"},{"id":2349,"kind":2048,"name":"func","url":"interfaces/index.Duck.Types.Game.Plugin.html#func","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Plugin"},{"id":2350,"kind":1024,"name":"args","url":"interfaces/index.Duck.Types.Game.Plugin.html#args","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Plugin"},{"id":2351,"kind":1024,"name":"name","url":"interfaces/index.Duck.Types.Game.Plugin.html#name","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Game.Plugin"},{"id":2352,"kind":4,"name":"RendererPipeline","url":"modules/index.Duck.Types.RendererPipeline.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2353,"kind":256,"name":"PoolStackItem","url":"interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.RendererPipeline"},{"id":2354,"kind":1024,"name":"scene","url":"interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html#scene","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.RendererPipeline.PoolStackItem"},{"id":2355,"kind":1024,"name":"renderables","url":"interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html#renderables","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.RendererPipeline.PoolStackItem"},{"id":2356,"kind":4,"name":"Misc","url":"modules/index.Duck.Types.Misc.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2357,"kind":256,"name":"Scale","url":"interfaces/index.Duck.Types.Misc.Scale.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Misc"},{"id":2358,"kind":1024,"name":"width","url":"interfaces/index.Duck.Types.Misc.Scale.html#width","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Misc.Scale"},{"id":2359,"kind":1024,"name":"height","url":"interfaces/index.Duck.Types.Misc.Scale.html#height","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Misc.Scale"},{"id":2360,"kind":4,"name":"Collider","url":"modules/index.Duck.Types.Collider.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2361,"kind":4194304,"name":"ShapeString","url":"modules/index.Duck.Types.Collider.html#ShapeString","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Collider"},{"id":2362,"kind":4194304,"name":"CollisionResponseType","url":"modules/index.Duck.Types.Collider.html#CollisionResponseType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Collider"},{"id":2363,"kind":4,"name":"Sound","url":"modules/index.Duck.Types.Sound.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2364,"kind":256,"name":"SpriteStruct","url":"interfaces/index.Duck.Types.Sound.SpriteStruct.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Sound"},{"id":2365,"kind":1024,"name":"startInMilliSeconds","url":"interfaces/index.Duck.Types.Sound.SpriteStruct.html#startInMilliSeconds","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.SpriteStruct"},{"id":2366,"kind":1024,"name":"endInMilliSeconds","url":"interfaces/index.Duck.Types.Sound.SpriteStruct.html#endInMilliSeconds","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.SpriteStruct"},{"id":2367,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Sound.SpriteStruct.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.SpriteStruct"},{"id":2368,"kind":256,"name":"SoundConfig","url":"interfaces/index.Duck.Types.Sound.SoundConfig.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Sound"},{"id":2369,"kind":1024,"name":"autoplay","url":"interfaces/index.Duck.Types.Sound.SoundConfig.html#autoplay","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.SoundConfig"},{"id":2370,"kind":1024,"name":"volume","url":"interfaces/index.Duck.Types.Sound.SoundConfig.html#volume","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.SoundConfig"},{"id":2371,"kind":1024,"name":"spriteStructs","url":"interfaces/index.Duck.Types.Sound.SoundConfig.html#spriteStructs","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.SoundConfig"},{"id":2372,"kind":1024,"name":"loop","url":"interfaces/index.Duck.Types.Sound.SoundConfig.html#loop","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Sound.SoundConfig"},{"id":2373,"kind":4194304,"name":"SoundPlayerType","url":"modules/index.Duck.Types.Sound.html#SoundPlayerType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Sound"},{"id":2374,"kind":4,"name":"GamepadInput","url":"modules/index.Duck.Types.GamepadInput.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2375,"kind":4194304,"name":"MappingType","url":"modules/index.Duck.Types.GamepadInput.html#MappingType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2376,"kind":4194304,"name":"Mapping","url":"modules/index.Duck.Types.GamepadInput.html#Mapping","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2377,"kind":8,"name":"XboxMapping","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html","classes":"tsd-kind-enum tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2378,"kind":16,"name":"A","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#A","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2379,"kind":16,"name":"B","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#B","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2380,"kind":16,"name":"X","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#X","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2381,"kind":16,"name":"Y","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#Y","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2382,"kind":16,"name":"LB","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LB","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2383,"kind":16,"name":"RB","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#RB","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2384,"kind":16,"name":"LT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2385,"kind":16,"name":"RT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#RT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2386,"kind":16,"name":"SHOW_ADDRESS_BAR","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#SHOW_ADDRESS_BAR","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2387,"kind":16,"name":"SHOW_MENU","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#SHOW_MENU","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2388,"kind":16,"name":"LEFT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LEFT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2389,"kind":16,"name":"RIGHT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#RIGHT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2390,"kind":16,"name":"D_PAD_UP","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_UP","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2391,"kind":16,"name":"D_PAD_DOWN","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_DOWN","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2392,"kind":16,"name":"D_PAD_LEFT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_LEFT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2393,"kind":16,"name":"D_PAD_RIGHT","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#D_PAD_RIGHT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2394,"kind":16,"name":"LOGO","url":"enums/index.Duck.Types.GamepadInput.XboxMapping.html#LOGO","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.XboxMapping"},{"id":2395,"kind":8,"name":"PlaystationMapping","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html","classes":"tsd-kind-enum tsd-parent-kind-namespace","parent":"index.Duck.Types.GamepadInput"},{"id":2396,"kind":16,"name":"X","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#X","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2397,"kind":16,"name":"CIRCLE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#CIRCLE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2398,"kind":16,"name":"SQUARE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#SQUARE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2399,"kind":16,"name":"TRIANGLE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#TRIANGLE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2400,"kind":16,"name":"L1","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#L1","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2401,"kind":16,"name":"R1","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#R1","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2402,"kind":16,"name":"L2","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#L2","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2403,"kind":16,"name":"R2","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#R2","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2404,"kind":16,"name":"SHARE","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#SHARE","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2405,"kind":16,"name":"OPTIONS","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#OPTIONS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2406,"kind":16,"name":"LEFT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#LEFT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2407,"kind":16,"name":"RIGHT_STICK_PRESS","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#RIGHT_STICK_PRESS","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2408,"kind":16,"name":"D_PAD_UP","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_UP","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2409,"kind":16,"name":"D_PAD_DOWN","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_DOWN","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2410,"kind":16,"name":"D_PAD_LEFT","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_LEFT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2411,"kind":16,"name":"D_PAD_RIGHT","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#D_PAD_RIGHT","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2412,"kind":16,"name":"LOGO","url":"enums/index.Duck.Types.GamepadInput.PlaystationMapping.html#LOGO","classes":"tsd-kind-enum-member tsd-parent-kind-enum","parent":"index.Duck.Types.GamepadInput.PlaystationMapping"},{"id":2413,"kind":4,"name":"UI","url":"modules/index.Duck.Types.UI.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2414,"kind":4,"name":"Text","url":"modules/index.Duck.Types.UI.Text.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types.UI"},{"id":2415,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.UI.Text.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Text"},{"id":2416,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.UI.Text.Config.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2417,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.UI.Text.Config.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2418,"kind":1024,"name":"method","url":"interfaces/index.Duck.Types.UI.Text.Config.html#method","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2419,"kind":1024,"name":"styles","url":"interfaces/index.Duck.Types.UI.Text.Config.html#styles","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2420,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Text.Config"},{"id":2421,"kind":1024,"name":"fontCSS","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.fontCSS","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2422,"kind":1024,"name":"strokeWidth","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.strokeWidth","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2423,"kind":1024,"name":"strokeColor","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.strokeColor","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2424,"kind":1024,"name":"fillColor","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.fillColor","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2425,"kind":1024,"name":"maxWidth","url":"interfaces/index.Duck.Types.UI.Text.Config.html#__type.maxWidth","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.UI.Text.Config.__type"},{"id":2426,"kind":4,"name":"Button","url":"modules/index.Duck.Types.UI.Button.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types.UI"},{"id":2427,"kind":4194304,"name":"Shape","url":"modules/index.Duck.Types.UI.Button.html#Shape","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2428,"kind":4194304,"name":"ListenerType","url":"modules/index.Duck.Types.UI.Button.html#ListenerType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2429,"kind":256,"name":"ListenerReturn","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2430,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.ListenerReturn"},{"id":2431,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.ListenerReturn"},{"id":2432,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.UI.Button.ListenerReturn.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.ListenerReturn"},{"id":2433,"kind":4194304,"name":"ListenerFunc","url":"modules/index.Duck.Types.UI.Button.html#ListenerFunc","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2434,"kind":65536,"name":"__type","url":"modules/index.Duck.Types.UI.Button.html#ListenerFunc.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias","parent":"index.Duck.Types.UI.Button.ListenerFunc"},{"id":2435,"kind":256,"name":"Listener","url":"interfaces/index.Duck.Types.UI.Button.Listener.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.UI.Button"},{"id":2436,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.UI.Button.Listener.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.Listener"},{"id":2437,"kind":1024,"name":"func","url":"interfaces/index.Duck.Types.UI.Button.Listener.html#func","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.UI.Button.Listener"},{"id":2438,"kind":4,"name":"Group","url":"modules/index.Duck.Types.Group.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2439,"kind":4194304,"name":"Filter","url":"modules/index.Duck.Types.Group.html#Filter","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Group"},{"id":2440,"kind":4194304,"name":"ListenerType","url":"modules/index.Duck.Types.Group.html#ListenerType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Group"},{"id":2441,"kind":256,"name":"Listener","url":"interfaces/index.Duck.Types.Group.Listener.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Group"},{"id":2442,"kind":2048,"name":"func","url":"interfaces/index.Duck.Types.Group.Listener.html#func","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.Group.Listener"},{"id":2443,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Group.Listener.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Group.Listener"},{"id":2444,"kind":4,"name":"ParticleEmitter","url":"modules/index.Duck.Types.ParticleEmitter.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2445,"kind":4194304,"name":"Range","url":"modules/index.Duck.Types.ParticleEmitter.html#Range","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleEmitter"},{"id":2446,"kind":256,"name":"Offloaders","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleEmitter"},{"id":2447,"kind":2048,"name":"maxAmount","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html#maxAmount","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleEmitter.Offloaders"},{"id":2448,"kind":2048,"name":"maxAge","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html#maxAge","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleEmitter.Offloaders"},{"id":2449,"kind":2048,"name":"maxBounds","url":"interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html#maxBounds","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleEmitter.Offloaders"},{"id":2450,"kind":4,"name":"Cutscene","url":"modules/index.Duck.Types.Cutscene.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2451,"kind":4194304,"name":"OnListenerType","url":"modules/index.Duck.Types.Cutscene.html#OnListenerType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2452,"kind":256,"name":"OnListener","url":"interfaces/index.Duck.Types.Cutscene.OnListener.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2453,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Cutscene.OnListener.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.OnListener"},{"id":2454,"kind":1024,"name":"func","url":"interfaces/index.Duck.Types.Cutscene.OnListener.html#func","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.OnListener"},{"id":2455,"kind":4194304,"name":"StepType","url":"modules/index.Duck.Types.Cutscene.html#StepType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2456,"kind":256,"name":"Step","url":"interfaces/index.Duck.Types.Cutscene.Step.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2457,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Cutscene.Step.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2458,"kind":1024,"name":"affect","url":"interfaces/index.Duck.Types.Cutscene.Step.html#affect","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2459,"kind":1024,"name":"moveTo","url":"interfaces/index.Duck.Types.Cutscene.Step.html#moveTo","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2460,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Step.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2461,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Cutscene.Step.html#__type.x","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Step.__type"},{"id":2462,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Cutscene.Step.html#__type.y","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Step.__type"},{"id":2463,"kind":1024,"name":"func","url":"interfaces/index.Duck.Types.Cutscene.Step.html#func","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2464,"kind":1024,"name":"cameraValue","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraValue","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2465,"kind":1024,"name":"cameraIntervalMS","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraIntervalMS","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2466,"kind":1024,"name":"cameraTimeMS","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraTimeMS","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2467,"kind":1024,"name":"sleepValue","url":"interfaces/index.Duck.Types.Cutscene.Step.html#sleepValue","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2468,"kind":1024,"name":"cameraFollow","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraFollow","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2469,"kind":1024,"name":"cameraFollowLerpX","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraFollowLerpX","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2470,"kind":1024,"name":"cameraFollowLerpY","url":"interfaces/index.Duck.Types.Cutscene.Step.html#cameraFollowLerpY","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Step"},{"id":2471,"kind":256,"name":"Instructions","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2472,"kind":1024,"name":"init","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#init","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Instructions"},{"id":2473,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Instructions"},{"id":2474,"kind":1024,"name":"mainObjectPos","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.mainObjectPos","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2475,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-3","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2476,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-3.x-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2477,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-3.y-1","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2478,"kind":1024,"name":"otherObjectPos","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.otherObjectPos","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2479,"kind":1024,"name":"cameraSettings","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.cameraSettings","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2480,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2481,"kind":1024,"name":"FOV","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.FOV","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2482,"kind":1024,"name":"follow","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.follow","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2483,"kind":1024,"name":"zoom","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.zoom","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2484,"kind":1024,"name":"pos","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.pos","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2485,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.__type-2","classes":"tsd-kind-type-literal tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2486,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.__type-2.x","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type.__type"},{"id":2487,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.__type-2.y","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type.__type"},{"id":2488,"kind":1024,"name":"followLerpX","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.followLerpX","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2489,"kind":1024,"name":"followLerpY","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.__type-1.followLerpY","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type.__type"},{"id":2490,"kind":1024,"name":"otherCameraSettings","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#__type.otherCameraSettings","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.Cutscene.Instructions.__type"},{"id":2491,"kind":1024,"name":"steps","url":"interfaces/index.Duck.Types.Cutscene.Instructions.html#steps","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Instructions"},{"id":2492,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.Cutscene.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Cutscene"},{"id":2493,"kind":1024,"name":"mainCamera","url":"interfaces/index.Duck.Types.Cutscene.Config.html#mainCamera","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2494,"kind":1024,"name":"otherCameras","url":"interfaces/index.Duck.Types.Cutscene.Config.html#otherCameras","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2495,"kind":1024,"name":"otherObjects","url":"interfaces/index.Duck.Types.Cutscene.Config.html#otherObjects","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2496,"kind":1024,"name":"mainObject","url":"interfaces/index.Duck.Types.Cutscene.Config.html#mainObject","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Cutscene.Config"},{"id":2497,"kind":4,"name":"Tilemap","url":"modules/index.Duck.Types.Tilemap.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2498,"kind":4194304,"name":"Map","url":"modules/index.Duck.Types.Tilemap.html#Map","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Tilemap"},{"id":2499,"kind":256,"name":"Atlas","url":"interfaces/index.Duck.Types.Tilemap.Atlas.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Tilemap"},{"id":2500,"kind":4,"name":"ParticleContainer","url":"modules/index.Duck.Types.ParticleContainer.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2501,"kind":256,"name":"Bounds","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleContainer"},{"id":2502,"kind":1024,"name":"position","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#position","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2503,"kind":65536,"name":"__type","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2504,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#__type.x","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.ParticleContainer.Bounds.__type"},{"id":2505,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#__type.y","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.Duck.Types.ParticleContainer.Bounds.__type"},{"id":2506,"kind":1024,"name":"w","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#w","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2507,"kind":1024,"name":"h","url":"interfaces/index.Duck.Types.ParticleContainer.Bounds.html#h","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Bounds"},{"id":2508,"kind":256,"name":"Physics","url":"interfaces/index.Duck.Types.ParticleContainer.Physics.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.ParticleContainer"},{"id":2509,"kind":1024,"name":"bounciness","url":"interfaces/index.Duck.Types.ParticleContainer.Physics.html#bounciness","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.ParticleContainer.Physics"},{"id":2510,"kind":4,"name":"Loader","url":"modules/index.Duck.Types.Loader.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2511,"kind":4194304,"name":"StackItemType","url":"modules/index.Duck.Types.Loader.html#StackItemType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Loader"},{"id":2512,"kind":256,"name":"StackItem","url":"interfaces/index.Duck.Types.Loader.StackItem.html","classes":"tsd-kind-interface tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types.Loader"},{"id":2513,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Loader.StackItem.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.StackItem"},{"id":2514,"kind":1024,"name":"value","url":"interfaces/index.Duck.Types.Loader.StackItem.html#value","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.StackItem"},{"id":2515,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Loader.StackItem.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.StackItem"},{"id":2516,"kind":256,"name":"TextureStackItem","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html","classes":"tsd-kind-interface tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types.Loader"},{"id":2517,"kind":1024,"name":"dataType","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#dataType","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2518,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#type","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2519,"kind":1024,"name":"value","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#value","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2520,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Loader.TextureStackItem.html#key","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Loader.TextureStackItem"},{"id":2521,"kind":4,"name":"Texture","url":"modules/index.Duck.Types.Texture.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2522,"kind":4194304,"name":"Type","url":"modules/index.Duck.Types.Texture.html#Type","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Texture"},{"id":2523,"kind":4194304,"name":"DataType","url":"modules/index.Duck.Types.Texture.html#DataType","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.Texture"},{"id":2524,"kind":4,"name":"PhysicsBody","url":"modules/index.Duck.Types.PhysicsBody.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2525,"kind":4194304,"name":"Type","url":"modules/index.Duck.Types.PhysicsBody.html#Type","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2526,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.PhysicsBody.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2527,"kind":1024,"name":"type","url":"interfaces/index.Duck.Types.PhysicsBody.Config.html#type","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.PhysicsBody.Config"},{"id":2528,"kind":256,"name":"AttachedBody","url":"interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2529,"kind":1024,"name":"body","url":"interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html#body","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.PhysicsBody.AttachedBody"},{"id":2530,"kind":1024,"name":"offset","url":"interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html#offset","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.PhysicsBody.AttachedBody"},{"id":2531,"kind":4194304,"name":"KinematicBody","url":"modules/index.Duck.Types.PhysicsBody.html#KinematicBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2532,"kind":4194304,"name":"RigidBody","url":"modules/index.Duck.Types.PhysicsBody.html#RigidBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2533,"kind":4194304,"name":"StaticBody","url":"modules/index.Duck.Types.PhysicsBody.html#StaticBody","classes":"tsd-kind-type-alias tsd-parent-kind-namespace","parent":"index.Duck.Types.PhysicsBody"},{"id":2534,"kind":4,"name":"Animation","url":"modules/index.Duck.Types.Animation.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2535,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.Animation.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Animation"},{"id":2536,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.Animation.Config.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2537,"kind":1024,"name":"frames","url":"interfaces/index.Duck.Types.Animation.Config.html#frames","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2538,"kind":1024,"name":"frameRate","url":"interfaces/index.Duck.Types.Animation.Config.html#frameRate","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2539,"kind":1024,"name":"repeat","url":"interfaces/index.Duck.Types.Animation.Config.html#repeat","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2540,"kind":1024,"name":"yoyo","url":"interfaces/index.Duck.Types.Animation.Config.html#yoyo","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2541,"kind":1024,"name":"delay","url":"interfaces/index.Duck.Types.Animation.Config.html#delay","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2542,"kind":1024,"name":"useDelta","url":"interfaces/index.Duck.Types.Animation.Config.html#useDelta","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.Config"},{"id":2543,"kind":256,"name":"FrameBase","url":"interfaces/index.Duck.Types.Animation.FrameBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Animation"},{"id":2544,"kind":1024,"name":"col","url":"interfaces/index.Duck.Types.Animation.FrameBase.html#col","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.FrameBase"},{"id":2545,"kind":1024,"name":"row","url":"interfaces/index.Duck.Types.Animation.FrameBase.html#row","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Animation.FrameBase"},{"id":2546,"kind":4,"name":"StateMachine","url":"modules/index.Duck.Types.StateMachine.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2547,"kind":256,"name":"ConnectionBase","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.StateMachine"},{"id":2548,"kind":1024,"name":"from","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html#from","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBase"},{"id":2549,"kind":1024,"name":"to","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html#to","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBase"},{"id":2550,"kind":1024,"name":"connType","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBase.html#connType","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBase"},{"id":2551,"kind":256,"name":"ConnectionBaseValue","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.StateMachine"},{"id":2552,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBaseValue"},{"id":2553,"kind":1024,"name":"vector","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html#vector","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBaseValue"},{"id":2554,"kind":1024,"name":"autoAdvance","url":"interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html#autoAdvance","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.ConnectionBaseValue"},{"id":2555,"kind":256,"name":"Config","url":"interfaces/index.Duck.Types.StateMachine.Config.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.StateMachine"},{"id":2556,"kind":1024,"name":"defaultState","url":"interfaces/index.Duck.Types.StateMachine.Config.html#defaultState","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.Config"},{"id":2557,"kind":1024,"name":"connections","url":"interfaces/index.Duck.Types.StateMachine.Config.html#connections","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.StateMachine.Config"},{"id":2558,"kind":4,"name":"KeyboardInput","url":"modules/index.Duck.Types.KeyboardInput.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2559,"kind":256,"name":"KeyBase","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.KeyboardInput"},{"id":2560,"kind":1024,"name":"keyCode","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyCode","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2561,"kind":1024,"name":"descriptor","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2562,"kind":2048,"name":"keyDown","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyDown","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2563,"kind":2048,"name":"keyUp","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyUp","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2564,"kind":2048,"name":"keyJustPressed","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyJustPressed","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2565,"kind":2048,"name":"keyState","url":"interfaces/index.Duck.Types.KeyboardInput.KeyBase.html#keyState","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.KeyboardInput.KeyBase"},{"id":2566,"kind":4,"name":"MouseInput","url":"modules/index.Duck.Types.MouseInput.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2567,"kind":256,"name":"MouseBase","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.MouseInput"},{"id":2568,"kind":1024,"name":"button","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#button","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2569,"kind":1024,"name":"descriptor","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#descriptor","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2570,"kind":2048,"name":"mouseDown","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#mouseDown","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2571,"kind":2048,"name":"mouseUp","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#mouseUp","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2572,"kind":2048,"name":"mouseMove","url":"interfaces/index.Duck.Types.MouseInput.MouseBase.html#mouseMove","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"index.Duck.Types.MouseInput.MouseBase"},{"id":2573,"kind":4,"name":"Camera","url":"modules/index.Duck.Types.Camera.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2574,"kind":256,"name":"CullingOptions","url":"interfaces/index.Duck.Types.Camera.CullingOptions.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Camera"},{"id":2575,"kind":1024,"name":"preserveVisibility","url":"interfaces/index.Duck.Types.Camera.CullingOptions.html#preserveVisibility","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Camera.CullingOptions"},{"id":2576,"kind":1024,"name":"modifyPhysicsEnable","url":"interfaces/index.Duck.Types.Camera.CullingOptions.html#modifyPhysicsEnable","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Camera.CullingOptions"},{"id":2577,"kind":4,"name":"TextureAtlas","url":"modules/index.Duck.Types.TextureAtlas.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2578,"kind":256,"name":"FrameData","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.TextureAtlas"},{"id":2579,"kind":1024,"name":"key","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#key","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2580,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2581,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2582,"kind":1024,"name":"w","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#w","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2583,"kind":1024,"name":"h","url":"interfaces/index.Duck.Types.TextureAtlas.FrameData.html#h","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.FrameData"},{"id":2584,"kind":256,"name":"JSONSchema","url":"interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.TextureAtlas"},{"id":2585,"kind":1024,"name":"name","url":"interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html#name","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.JSONSchema"},{"id":2586,"kind":1024,"name":"data","url":"interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html#data","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.TextureAtlas.JSONSchema"},{"id":2587,"kind":4,"name":"Math","url":"modules/index.Duck.Types.Math.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2588,"kind":256,"name":"Vector2Like","url":"interfaces/index.Duck.Types.Math.Vector2Like.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Math"},{"id":2589,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Math.Vector2Like.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2Like"},{"id":2590,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Math.Vector2Like.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2Like"},{"id":2591,"kind":256,"name":"Vector2LikeOptional","url":"interfaces/index.Duck.Types.Math.Vector2LikeOptional.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Math"},{"id":2592,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Math.Vector2LikeOptional.html#x","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2LikeOptional"},{"id":2593,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Math.Vector2LikeOptional.html#y","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.Vector2LikeOptional"},{"id":2594,"kind":256,"name":"BoundsLike","url":"interfaces/index.Duck.Types.Math.BoundsLike.html","classes":"tsd-kind-interface tsd-parent-kind-namespace","parent":"index.Duck.Types.Math"},{"id":2595,"kind":1024,"name":"w","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#w","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2596,"kind":1024,"name":"h","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#h","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2597,"kind":1024,"name":"x","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#x","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2598,"kind":1024,"name":"y","url":"interfaces/index.Duck.Types.Math.BoundsLike.html#y","classes":"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited","parent":"index.Duck.Types.Math.BoundsLike"},{"id":2599,"kind":4,"name":"Helper","url":"modules/index.Duck.Types.Helper.html","classes":"tsd-kind-namespace tsd-parent-kind-namespace","parent":"index.Duck.Types"},{"id":2600,"kind":4194304,"name":"FixedLengthArray","url":"modules/index.Duck.Types.Helper.html#FixedLengthArray","classes":"tsd-kind-type-alias tsd-parent-kind-namespace tsd-has-type-parameter","parent":"index.Duck.Types.Helper"},{"id":2601,"kind":32,"name":"DuckEngine","url":"modules/index.html#DuckEngine","classes":"tsd-kind-variable tsd-parent-kind-module","parent":"index"},{"id":2602,"kind":65536,"name":"__type","url":"modules/index.html#DuckEngine.__type","classes":"tsd-kind-type-literal tsd-parent-kind-variable","parent":"index.DuckEngine"},{"id":2603,"kind":1024,"name":"Game","url":"modules/index.html#DuckEngine.__type.Game","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.DuckEngine.__type"},{"id":2604,"kind":1024,"name":"Scene","url":"modules/index.html#DuckEngine.__type.Scene","classes":"tsd-kind-property tsd-parent-kind-type-literal","parent":"index.DuckEngine.__type"}],"index":{"version":"2.3.9","fields":["name","parent"],"fieldVectors":[["name/0",[0,69.623]],["parent/0",[]],["name/1",[1,58.617]],["parent/1",[0,6.855]],["name/2",[2,36.456]],["parent/2",[3,4.355]],["name/3",[4,52.728]],["parent/3",[3,4.355]],["name/4",[5,54.334]],["parent/4",[3,4.355]],["name/5",[6,37.536]],["parent/5",[3,4.355]],["name/6",[7,41.005]],["parent/6",[3,4.355]],["name/7",[8,58.617]],["parent/7",[3,4.355]],["name/8",[9,74.741]],["parent/8",[3,4.355]],["name/9",[10,69.623]],["parent/9",[3,4.355]],["name/10",[11,74.741]],["parent/10",[3,4.355]],["name/11",[12,69.623]],["parent/11",[3,4.355]],["name/12",[13,74.741]],["parent/12",[3,4.355]],["name/13",[14,74.741]],["parent/13",[3,4.355]],["name/14",[15,74.741]],["parent/14",[3,4.355]],["name/15",[16,74.741]],["parent/15",[3,4.355]],["name/16",[17,74.741]],["parent/16",[3,4.355]],["name/17",[18,74.741]],["parent/17",[3,4.355]],["name/18",[19,74.741]],["parent/18",[3,4.355]],["name/19",[20,74.741]],["parent/19",[3,4.355]],["name/20",[21,74.741]],["parent/20",[3,4.355]],["name/21",[22,69.623]],["parent/21",[3,4.355]],["name/22",[23,69.623]],["parent/22",[3,4.355]],["name/23",[24,60.05]],["parent/23",[3,4.355]],["name/24",[25,69.623]],["parent/24",[3,4.355]],["name/25",[26,61.724]],["parent/25",[3,4.355]],["name/26",[27,69.623]],["parent/26",[3,4.355]],["name/27",[28,69.623]],["parent/27",[3,4.355]],["name/28",[29,69.623]],["parent/28",[3,4.355]],["name/29",[30,56.248]],["parent/29",[3,4.355]],["name/30",[31,69.623]],["parent/30",[3,4.355]],["name/31",[32,61.724]],["parent/31",[3,4.355]],["name/32",[33,69.623]],["parent/32",[3,4.355]],["name/33",[34,69.623]],["parent/33",[]],["name/34",[35,63.734]],["parent/34",[34,6.855]],["name/35",[2,36.456]],["parent/35",[36,6.077]],["name/36",[37,69.623]],["parent/36",[36,6.077]],["name/37",[38,69.623]],["parent/37",[36,6.077]],["name/38",[8,58.617]],["parent/38",[36,6.077]],["name/39",[39,69.623]],["parent/39",[36,6.077]],["name/40",[40,69.623]],["parent/40",[]],["name/41",[41,66.252]],["parent/41",[40,6.855]],["name/42",[2,36.456]],["parent/42",[42,4.564]],["name/43",[6,37.536]],["parent/43",[42,4.564]],["name/44",[7,41.005]],["parent/44",[42,4.564]],["name/45",[8,58.617]],["parent/45",[42,4.564]],["name/46",[43,69.623]],["parent/46",[42,4.564]],["name/47",[44,74.741]],["parent/47",[42,4.564]],["name/48",[45,74.741]],["parent/48",[42,4.564]],["name/49",[46,74.741]],["parent/49",[42,4.564]],["name/50",[47,56.248]],["parent/50",[42,4.564]],["name/51",[48,58.617]],["parent/51",[42,4.564]],["name/52",[49,63.734]],["parent/52",[42,4.564]],["name/53",[50,74.741]],["parent/53",[42,4.564]],["name/54",[51,74.741]],["parent/54",[42,4.564]],["name/55",[22,69.623]],["parent/55",[42,4.564]],["name/56",[23,69.623]],["parent/56",[42,4.564]],["name/57",[24,60.05]],["parent/57",[42,4.564]],["name/58",[25,69.623]],["parent/58",[42,4.564]],["name/59",[26,61.724]],["parent/59",[42,4.564]],["name/60",[27,69.623]],["parent/60",[42,4.564]],["name/61",[28,69.623]],["parent/61",[42,4.564]],["name/62",[29,69.623]],["parent/62",[42,4.564]],["name/63",[30,56.248]],["parent/63",[42,4.564]],["name/64",[31,69.623]],["parent/64",[42,4.564]],["name/65",[32,61.724]],["parent/65",[42,4.564]],["name/66",[33,69.623]],["parent/66",[42,4.564]],["name/67",[52,69.623]],["parent/67",[]],["name/68",[53,66.252]],["parent/68",[52,6.855]],["name/69",[2,36.456]],["parent/69",[54,5.912]],["name/70",[4,52.728]],["parent/70",[54,5.912]],["name/71",[1,58.617]],["parent/71",[54,5.912]],["name/72",[55,69.623]],["parent/72",[54,5.912]],["name/73",[56,66.252]],["parent/73",[54,5.912]],["name/74",[57,66.252]],["parent/74",[54,5.912]],["name/75",[58,69.623]],["parent/75",[]],["name/76",[59,63.734]],["parent/76",[58,6.855]],["name/77",[2,36.456]],["parent/77",[60,5.538]],["name/78",[5,54.334]],["parent/78",[60,5.538]],["name/79",[43,69.623]],["parent/79",[60,5.538]],["name/80",[57,66.252]],["parent/80",[60,5.538]],["name/81",[61,74.741]],["parent/81",[60,5.538]],["name/82",[62,74.741]],["parent/82",[60,5.538]],["name/83",[63,74.741]],["parent/83",[60,5.538]],["name/84",[64,74.741]],["parent/84",[60,5.538]],["name/85",[65,74.741]],["parent/85",[60,5.538]],["name/86",[66,69.623]],["parent/86",[]],["name/87",[67,60.05]],["parent/87",[66,6.855]],["name/88",[2,36.456]],["parent/88",[68,4.158]],["name/89",[6,37.536]],["parent/89",[68,4.158]],["name/90",[7,41.005]],["parent/90",[68,4.158]],["name/91",[69,48.543]],["parent/91",[68,4.158]],["name/92",[70,74.741]],["parent/92",[68,4.158]],["name/93",[71,69.623]],["parent/93",[68,4.158]],["name/94",[72,74.741]],["parent/94",[68,4.158]],["name/95",[73,36.167]],["parent/95",[68,4.158]],["name/96",[74,69.623]],["parent/96",[75,5.771]],["name/97",[76,69.623]],["parent/97",[75,5.771]],["name/98",[77,74.741]],["parent/98",[75,5.771]],["name/99",[78,74.741]],["parent/99",[75,5.771]],["name/100",[79,47.61]],["parent/100",[75,5.771]],["name/101",[80,47.61]],["parent/101",[75,5.771]],["name/102",[81,53.499]],["parent/102",[75,5.771]],["name/103",[82,74.741]],["parent/103",[68,4.158]],["name/104",[83,74.741]],["parent/104",[68,4.158]],["name/105",[84,49.044]],["parent/105",[68,4.158]],["name/106",[85,63.734]],["parent/106",[68,4.158]],["name/107",[86,74.741]],["parent/107",[68,4.158]],["name/108",[87,74.741]],["parent/108",[68,4.158]],["name/109",[88,74.741]],["parent/109",[68,4.158]],["name/110",[89,74.741]],["parent/110",[68,4.158]],["name/111",[90,63.734]],["parent/111",[68,4.158]],["name/112",[91,74.741]],["parent/112",[68,4.158]],["name/113",[92,74.741]],["parent/113",[68,4.158]],["name/114",[93,74.741]],["parent/114",[68,4.158]],["name/115",[94,74.741]],["parent/115",[68,4.158]],["name/116",[95,74.741]],["parent/116",[68,4.158]],["name/117",[96,69.623]],["parent/117",[68,4.158]],["name/118",[97,74.741]],["parent/118",[68,4.158]],["name/119",[98,63.734]],["parent/119",[68,4.158]],["name/120",[99,74.741]],["parent/120",[68,4.158]],["name/121",[100,74.741]],["parent/121",[68,4.158]],["name/122",[101,74.741]],["parent/122",[68,4.158]],["name/123",[102,74.741]],["parent/123",[68,4.158]],["name/124",[103,74.741]],["parent/124",[68,4.158]],["name/125",[104,74.741]],["parent/125",[68,4.158]],["name/126",[105,50.128]],["parent/126",[68,4.158]],["name/127",[106,74.741]],["parent/127",[68,4.158]],["name/128",[107,74.741]],["parent/128",[68,4.158]],["name/129",[108,74.741]],["parent/129",[68,4.158]],["name/130",[109,74.741]],["parent/130",[68,4.158]],["name/131",[110,74.741]],["parent/131",[68,4.158]],["name/132",[111,74.741]],["parent/132",[68,4.158]],["name/133",[112,69.623]],["parent/133",[]],["name/134",[113,60.05]],["parent/134",[112,6.855]],["name/135",[2,36.456]],["parent/135",[114,4.829]],["name/136",[5,54.334]],["parent/136",[114,4.829]],["name/137",[115,69.623]],["parent/137",[114,4.829]],["name/138",[6,37.536]],["parent/138",[114,4.829]],["name/139",[116,69.623]],["parent/139",[114,4.829]],["name/140",[117,69.623]],["parent/140",[114,4.829]],["name/141",[118,69.623]],["parent/141",[114,4.829]],["name/142",[67,60.05]],["parent/142",[114,4.829]],["name/143",[119,69.623]],["parent/143",[114,4.829]],["name/144",[120,63.734]],["parent/144",[114,4.829]],["name/145",[121,74.741]],["parent/145",[114,4.829]],["name/146",[122,69.623]],["parent/146",[114,4.829]],["name/147",[123,58.617]],["parent/147",[114,4.829]],["name/148",[30,56.248]],["parent/148",[114,4.829]],["name/149",[124,63.734]],["parent/149",[114,4.829]],["name/150",[125,66.252]],["parent/150",[114,4.829]],["name/151",[126,69.623]],["parent/151",[114,4.829]],["name/152",[127,63.734]],["parent/152",[114,4.829]],["name/153",[128,63.734]],["parent/153",[114,4.829]],["name/154",[129,69.623]],["parent/154",[]],["name/155",[130,66.252]],["parent/155",[129,6.855]],["name/156",[73,36.167]],["parent/156",[131,7.359]],["name/157",[132,63.734]],["parent/157",[133,6.077]],["name/158",[73,36.167]],["parent/158",[133,6.077]],["name/159",[134,74.741]],["parent/159",[133,6.077]],["name/160",[135,74.741]],["parent/160",[133,6.077]],["name/161",[136,74.741]],["parent/161",[133,6.077]],["name/162",[137,69.623]],["parent/162",[]],["name/163",[138,69.623]],["parent/163",[137,6.855]],["name/164",[2,36.456]],["parent/164",[139,5.349]],["name/165",[6,37.536]],["parent/165",[139,5.349]],["name/166",[140,61.724]],["parent/166",[139,5.349]],["name/167",[81,53.499]],["parent/167",[139,5.349]],["name/168",[141,69.623]],["parent/168",[139,5.349]],["name/169",[142,74.741]],["parent/169",[139,5.349]],["name/170",[143,74.741]],["parent/170",[139,5.349]],["name/171",[144,74.741]],["parent/171",[139,5.349]],["name/172",[145,74.741]],["parent/172",[139,5.349]],["name/173",[146,66.252]],["parent/173",[139,5.349]],["name/174",[147,66.252]],["parent/174",[139,5.349]],["name/175",[148,69.623]],["parent/175",[]],["name/176",[149,63.734]],["parent/176",[148,6.855]],["name/177",[2,36.456]],["parent/177",[150,4.88]],["name/178",[151,44.896]],["parent/178",[150,4.88]],["name/179",[152,47.61]],["parent/179",[150,4.88]],["name/180",[153,63.734]],["parent/180",[150,4.88]],["name/181",[154,63.734]],["parent/181",[150,4.88]],["name/182",[155,54.334]],["parent/182",[150,4.88]],["name/183",[6,37.536]],["parent/183",[150,4.88]],["name/184",[156,47.174]],["parent/184",[150,4.88]],["name/185",[157,47.174]],["parent/185",[150,4.88]],["name/186",[158,48.065]],["parent/186",[150,4.88]],["name/187",[85,63.734]],["parent/187",[150,4.88]],["name/188",[159,66.252]],["parent/188",[150,4.88]],["name/189",[160,61.724]],["parent/189",[150,4.88]],["name/190",[161,63.734]],["parent/190",[150,4.88]],["name/191",[162,63.734]],["parent/191",[150,4.88]],["name/192",[163,48.065]],["parent/192",[150,4.88]],["name/193",[164,63.734]],["parent/193",[150,4.88]],["name/194",[98,63.734]],["parent/194",[150,4.88]],["name/195",[165,69.623]],["parent/195",[]],["name/196",[166,63.734]],["parent/196",[165,6.855]],["name/197",[2,36.456]],["parent/197",[167,4.779]],["name/198",[168,66.252]],["parent/198",[167,4.779]],["name/199",[169,74.741]],["parent/199",[167,4.779]],["name/200",[160,61.724]],["parent/200",[167,4.779]],["name/201",[161,63.734]],["parent/201",[167,4.779]],["name/202",[162,63.734]],["parent/202",[167,4.779]],["name/203",[163,48.065]],["parent/203",[167,4.779]],["name/204",[151,44.896]],["parent/204",[167,4.779]],["name/205",[152,47.61]],["parent/205",[167,4.779]],["name/206",[153,63.734]],["parent/206",[167,4.779]],["name/207",[154,63.734]],["parent/207",[167,4.779]],["name/208",[155,54.334]],["parent/208",[167,4.779]],["name/209",[6,37.536]],["parent/209",[167,4.779]],["name/210",[156,47.174]],["parent/210",[167,4.779]],["name/211",[157,47.174]],["parent/211",[167,4.779]],["name/212",[158,48.065]],["parent/212",[167,4.779]],["name/213",[85,63.734]],["parent/213",[167,4.779]],["name/214",[159,66.252]],["parent/214",[167,4.779]],["name/215",[164,63.734]],["parent/215",[167,4.779]],["name/216",[98,63.734]],["parent/216",[167,4.779]],["name/217",[170,69.623]],["parent/217",[]],["name/218",[171,63.734]],["parent/218",[170,6.855]],["name/219",[2,36.456]],["parent/219",[172,4.687]],["name/220",[168,66.252]],["parent/220",[172,4.687]],["name/221",[173,74.741]],["parent/221",[172,4.687]],["name/222",[174,74.741]],["parent/222",[172,4.687]],["name/223",[175,74.741]],["parent/223",[172,4.687]],["name/224",[160,61.724]],["parent/224",[172,4.687]],["name/225",[161,63.734]],["parent/225",[172,4.687]],["name/226",[162,63.734]],["parent/226",[172,4.687]],["name/227",[163,48.065]],["parent/227",[172,4.687]],["name/228",[151,44.896]],["parent/228",[172,4.687]],["name/229",[152,47.61]],["parent/229",[172,4.687]],["name/230",[153,63.734]],["parent/230",[172,4.687]],["name/231",[154,63.734]],["parent/231",[172,4.687]],["name/232",[155,54.334]],["parent/232",[172,4.687]],["name/233",[6,37.536]],["parent/233",[172,4.687]],["name/234",[156,47.174]],["parent/234",[172,4.687]],["name/235",[157,47.174]],["parent/235",[172,4.687]],["name/236",[158,48.065]],["parent/236",[172,4.687]],["name/237",[85,63.734]],["parent/237",[172,4.687]],["name/238",[159,66.252]],["parent/238",[172,4.687]],["name/239",[164,63.734]],["parent/239",[172,4.687]],["name/240",[98,63.734]],["parent/240",[172,4.687]],["name/241",[176,69.623]],["parent/241",[]],["name/242",[140,61.724]],["parent/242",[176,6.855]],["name/243",[2,36.456]],["parent/243",[177,5.912]],["name/244",[178,74.741]],["parent/244",[177,5.912]],["name/245",[73,36.167]],["parent/245",[177,5.912]],["name/246",[127,63.734]],["parent/246",[177,5.912]],["name/247",[128,63.734]],["parent/247",[177,5.912]],["name/248",[160,61.724]],["parent/248",[177,5.912]],["name/249",[179,69.623]],["parent/249",[]],["name/250",[180,74.741]],["parent/250",[179,6.855]],["name/251",[73,36.167]],["parent/251",[181,7.359]],["name/252",[182,56.248]],["parent/252",[183,5.267]],["name/253",[73,36.167]],["parent/253",[183,5.267]],["name/254",[184,69.623]],["parent/254",[185,4.238]],["name/255",[186,69.623]],["parent/255",[185,4.238]],["name/256",[187,69.623]],["parent/256",[185,4.238]],["name/257",[188,58.617]],["parent/257",[183,5.267]],["name/258",[73,36.167]],["parent/258",[183,5.267]],["name/259",[47,56.248]],["parent/259",[185,4.238]],["name/260",[48,58.617]],["parent/260",[185,4.238]],["name/261",[113,60.05]],["parent/261",[183,5.267]],["name/262",[73,36.167]],["parent/262",[183,5.267]],["name/263",[123,58.617]],["parent/263",[185,4.238]],["name/264",[90,63.734]],["parent/264",[185,4.238]],["name/265",[125,66.252]],["parent/265",[185,4.238]],["name/266",[6,37.536]],["parent/266",[183,5.267]],["name/267",[73,36.167]],["parent/267",[183,5.267]],["name/268",[189,61.724]],["parent/268",[185,4.238]],["name/269",[190,61.724]],["parent/269",[185,4.238]],["name/270",[123,58.617]],["parent/270",[185,4.238]],["name/271",[30,56.248]],["parent/271",[185,4.238]],["name/272",[191,69.623]],["parent/272",[185,4.238]],["name/273",[192,69.623]],["parent/273",[185,4.238]],["name/274",[193,69.623]],["parent/274",[185,4.238]],["name/275",[194,69.623]],["parent/275",[185,4.238]],["name/276",[195,69.623]],["parent/276",[185,4.238]],["name/277",[196,69.623]],["parent/277",[185,4.238]],["name/278",[197,69.623]],["parent/278",[185,4.238]],["name/279",[198,69.623]],["parent/279",[185,4.238]],["name/280",[199,63.734]],["parent/280",[185,4.238]],["name/281",[200,63.734]],["parent/281",[185,4.238]],["name/282",[201,69.623]],["parent/282",[185,4.238]],["name/283",[202,69.623]],["parent/283",[185,4.238]],["name/284",[203,69.623]],["parent/284",[185,4.238]],["name/285",[204,69.623]],["parent/285",[185,4.238]],["name/286",[205,69.623]],["parent/286",[185,4.238]],["name/287",[206,69.623]],["parent/287",[185,4.238]],["name/288",[207,69.623]],["parent/288",[183,5.267]],["name/289",[73,36.167]],["parent/289",[183,5.267]],["name/290",[208,69.623]],["parent/290",[185,4.238]],["name/291",[199,63.734]],["parent/291",[185,4.238]],["name/292",[209,74.741]],["parent/292",[183,5.267]],["name/293",[73,36.167]],["parent/293",[183,5.267]],["name/294",[200,63.734]],["parent/294",[185,4.238]],["name/295",[146,66.252]],["parent/295",[185,4.238]],["name/296",[147,66.252]],["parent/296",[185,4.238]],["name/297",[189,61.724]],["parent/297",[185,4.238]],["name/298",[190,61.724]],["parent/298",[185,4.238]],["name/299",[210,69.623]],["parent/299",[]],["name/300",[211,74.741]],["parent/300",[210,6.855]],["name/301",[73,36.167]],["parent/301",[212,7.359]],["name/302",[200,63.734]],["parent/302",[213,6.077]],["name/303",[146,66.252]],["parent/303",[213,6.077]],["name/304",[147,66.252]],["parent/304",[213,6.077]],["name/305",[189,61.724]],["parent/305",[213,6.077]],["name/306",[190,61.724]],["parent/306",[213,6.077]],["name/307",[214,69.623]],["parent/307",[]],["name/308",[215,74.741]],["parent/308",[214,6.855]],["name/309",[73,36.167]],["parent/309",[216,7.359]],["name/310",[189,61.724]],["parent/310",[217,4.779]],["name/311",[190,61.724]],["parent/311",[217,4.779]],["name/312",[123,58.617]],["parent/312",[217,4.779]],["name/313",[30,56.248]],["parent/313",[217,4.779]],["name/314",[191,69.623]],["parent/314",[217,4.779]],["name/315",[192,69.623]],["parent/315",[217,4.779]],["name/316",[193,69.623]],["parent/316",[217,4.779]],["name/317",[194,69.623]],["parent/317",[217,4.779]],["name/318",[195,69.623]],["parent/318",[217,4.779]],["name/319",[196,69.623]],["parent/319",[217,4.779]],["name/320",[197,69.623]],["parent/320",[217,4.779]],["name/321",[198,69.623]],["parent/321",[217,4.779]],["name/322",[199,63.734]],["parent/322",[217,4.779]],["name/323",[200,63.734]],["parent/323",[217,4.779]],["name/324",[201,69.623]],["parent/324",[217,4.779]],["name/325",[202,69.623]],["parent/325",[217,4.779]],["name/326",[203,69.623]],["parent/326",[217,4.779]],["name/327",[204,69.623]],["parent/327",[217,4.779]],["name/328",[205,69.623]],["parent/328",[217,4.779]],["name/329",[206,69.623]],["parent/329",[217,4.779]],["name/330",[218,69.623]],["parent/330",[]],["name/331",[219,74.741]],["parent/331",[218,6.855]],["name/332",[73,36.167]],["parent/332",[220,7.359]],["name/333",[208,69.623]],["parent/333",[221,6.855]],["name/334",[199,63.734]],["parent/334",[221,6.855]],["name/335",[222,69.623]],["parent/335",[]],["name/336",[223,74.741]],["parent/336",[222,6.855]],["name/337",[73,36.167]],["parent/337",[224,7.359]],["name/338",[184,69.623]],["parent/338",[225,6.523]],["name/339",[186,69.623]],["parent/339",[225,6.523]],["name/340",[187,69.623]],["parent/340",[225,6.523]],["name/341",[226,69.623]],["parent/341",[]],["name/342",[227,74.741]],["parent/342",[226,6.855]],["name/343",[73,36.167]],["parent/343",[228,7.359]],["name/344",[123,58.617]],["parent/344",[229,6.523]],["name/345",[90,63.734]],["parent/345",[229,6.523]],["name/346",[125,66.252]],["parent/346",[229,6.523]],["name/347",[230,69.623]],["parent/347",[]],["name/348",[231,74.741]],["parent/348",[230,6.855]],["name/349",[73,36.167]],["parent/349",[232,7.359]],["name/350",[47,56.248]],["parent/350",[233,6.855]],["name/351",[48,58.617]],["parent/351",[233,6.855]],["name/352",[234,69.623]],["parent/352",[]],["name/353",[6,37.536]],["parent/353",[234,6.855]],["name/354",[235,69.623]],["parent/354",[236,4.158]],["name/355",[2,36.456]],["parent/355",[236,4.158]],["name/356",[5,54.334]],["parent/356",[236,4.158]],["name/357",[237,69.623]],["parent/357",[236,4.158]],["name/358",[207,69.623]],["parent/358",[236,4.158]],["name/359",[132,63.734]],["parent/359",[236,4.158]],["name/360",[35,63.734]],["parent/360",[236,4.158]],["name/361",[238,63.734]],["parent/361",[236,4.158]],["name/362",[239,74.741]],["parent/362",[236,4.158]],["name/363",[240,74.741]],["parent/363",[236,4.158]],["name/364",[241,74.741]],["parent/364",[236,4.158]],["name/365",[242,74.741]],["parent/365",[236,4.158]],["name/366",[243,74.741]],["parent/366",[236,4.158]],["name/367",[244,74.741]],["parent/367",[236,4.158]],["name/368",[245,74.741]],["parent/368",[236,4.158]],["name/369",[246,74.741]],["parent/369",[236,4.158]],["name/370",[247,74.741]],["parent/370",[236,4.158]],["name/371",[248,69.623]],["parent/371",[236,4.158]],["name/372",[73,36.167]],["parent/372",[236,4.158]],["name/373",[47,56.248]],["parent/373",[249,6.855]],["name/374",[48,58.617]],["parent/374",[249,6.855]],["name/375",[250,74.741]],["parent/375",[236,4.158]],["name/376",[251,74.741]],["parent/376",[236,4.158]],["name/377",[252,69.623]],["parent/377",[236,4.158]],["name/378",[140,61.724]],["parent/378",[236,4.158]],["name/379",[253,63.734]],["parent/379",[236,4.158]],["name/380",[138,69.623]],["parent/380",[236,4.158]],["name/381",[254,74.741]],["parent/381",[236,4.158]],["name/382",[123,58.617]],["parent/382",[236,4.158]],["name/383",[30,56.248]],["parent/383",[236,4.158]],["name/384",[255,61.724]],["parent/384",[236,4.158]],["name/385",[256,74.741]],["parent/385",[236,4.158]],["name/386",[257,74.741]],["parent/386",[236,4.158]],["name/387",[126,69.623]],["parent/387",[236,4.158]],["name/388",[258,49.044]],["parent/388",[236,4.158]],["name/389",[259,74.741]],["parent/389",[236,4.158]],["name/390",[260,74.741]],["parent/390",[236,4.158]],["name/391",[261,74.741]],["parent/391",[236,4.158]],["name/392",[262,74.741]],["parent/392",[236,4.158]],["name/393",[263,74.741]],["parent/393",[236,4.158]],["name/394",[264,69.623]],["parent/394",[]],["name/395",[265,61.724]],["parent/395",[264,6.855]],["name/396",[2,36.456]],["parent/396",[266,3.797]],["name/397",[163,48.065]],["parent/397",[266,3.797]],["name/398",[267,47.174]],["parent/398",[266,3.797]],["name/399",[156,47.174]],["parent/399",[266,3.797]],["name/400",[157,47.174]],["parent/400",[266,3.797]],["name/401",[158,48.065]],["parent/401",[266,3.797]],["name/402",[268,51.344]],["parent/402",[266,3.797]],["name/403",[258,49.044]],["parent/403",[266,3.797]],["name/404",[269,48.065]],["parent/404",[266,3.797]],["name/405",[151,44.896]],["parent/405",[266,3.797]],["name/406",[152,47.61]],["parent/406",[266,3.797]],["name/407",[69,48.543]],["parent/407",[266,3.797]],["name/408",[79,47.61]],["parent/408",[266,3.797]],["name/409",[80,47.61]],["parent/409",[266,3.797]],["name/410",[270,50.717]],["parent/410",[266,3.797]],["name/411",[271,50.128]],["parent/411",[266,3.797]],["name/412",[6,37.536]],["parent/412",[266,3.797]],["name/413",[7,41.005]],["parent/413",[266,3.797]],["name/414",[272,48.543]],["parent/414",[266,3.797]],["name/415",[273,50.128]],["parent/415",[266,3.797]],["name/416",[274,48.543]],["parent/416",[266,3.797]],["name/417",[275,50.717]],["parent/417",[266,3.797]],["name/418",[84,49.044]],["parent/418",[266,3.797]],["name/419",[276,49.571]],["parent/419",[266,3.797]],["name/420",[277,50.717]],["parent/420",[266,3.797]],["name/421",[278,50.717]],["parent/421",[266,3.797]],["name/422",[279,50.717]],["parent/422",[266,3.797]],["name/423",[280,48.065]],["parent/423",[266,3.797]],["name/424",[73,36.167]],["parent/424",[266,3.797]],["name/425",[281,50.717]],["parent/425",[282,6.523]],["name/426",[283,50.717]],["parent/426",[282,6.523]],["name/427",[105,50.128]],["parent/427",[282,6.523]],["name/428",[284,50.717]],["parent/428",[266,3.797]],["name/429",[285,49.571]],["parent/429",[266,3.797]],["name/430",[286,50.717]],["parent/430",[266,3.797]],["name/431",[287,50.717]],["parent/431",[266,3.797]],["name/432",[288,50.717]],["parent/432",[266,3.797]],["name/433",[289,50.717]],["parent/433",[266,3.797]],["name/434",[290,50.717]],["parent/434",[266,3.797]],["name/435",[291,50.128]],["parent/435",[266,3.797]],["name/436",[292,50.717]],["parent/436",[266,3.797]],["name/437",[293,50.717]],["parent/437",[266,3.797]],["name/438",[294,50.717]],["parent/438",[266,3.797]],["name/439",[295,50.717]],["parent/439",[266,3.797]],["name/440",[296,50.717]],["parent/440",[266,3.797]],["name/441",[297,50.717]],["parent/441",[266,3.797]],["name/442",[298,50.717]],["parent/442",[266,3.797]],["name/443",[299,50.717]],["parent/443",[266,3.797]],["name/444",[300,50.717]],["parent/444",[266,3.797]],["name/445",[301,50.128]],["parent/445",[266,3.797]],["name/446",[302,50.128]],["parent/446",[266,3.797]],["name/447",[303,50.128]],["parent/447",[266,3.797]],["name/448",[304,50.128]],["parent/448",[266,3.797]],["name/449",[305,50.128]],["parent/449",[266,3.797]],["name/450",[306,50.128]],["parent/450",[266,3.797]],["name/451",[307,50.128]],["parent/451",[266,3.797]],["name/452",[308,50.717]],["parent/452",[266,3.797]],["name/453",[309,50.717]],["parent/453",[266,3.797]],["name/454",[310,69.623]],["parent/454",[]],["name/455",[311,60.05]],["parent/455",[310,6.855]],["name/456",[2,36.456]],["parent/456",[312,3.797]],["name/457",[267,47.174]],["parent/457",[312,3.797]],["name/458",[156,47.174]],["parent/458",[312,3.797]],["name/459",[157,47.174]],["parent/459",[312,3.797]],["name/460",[158,48.065]],["parent/460",[312,3.797]],["name/461",[163,48.065]],["parent/461",[312,3.797]],["name/462",[268,51.344]],["parent/462",[312,3.797]],["name/463",[258,49.044]],["parent/463",[312,3.797]],["name/464",[269,48.065]],["parent/464",[312,3.797]],["name/465",[151,44.896]],["parent/465",[312,3.797]],["name/466",[152,47.61]],["parent/466",[312,3.797]],["name/467",[69,48.543]],["parent/467",[312,3.797]],["name/468",[79,47.61]],["parent/468",[312,3.797]],["name/469",[80,47.61]],["parent/469",[312,3.797]],["name/470",[270,50.717]],["parent/470",[312,3.797]],["name/471",[271,50.128]],["parent/471",[312,3.797]],["name/472",[6,37.536]],["parent/472",[312,3.797]],["name/473",[7,41.005]],["parent/473",[312,3.797]],["name/474",[272,48.543]],["parent/474",[312,3.797]],["name/475",[273,50.128]],["parent/475",[312,3.797]],["name/476",[274,48.543]],["parent/476",[312,3.797]],["name/477",[275,50.717]],["parent/477",[312,3.797]],["name/478",[84,49.044]],["parent/478",[312,3.797]],["name/479",[276,49.571]],["parent/479",[312,3.797]],["name/480",[277,50.717]],["parent/480",[312,3.797]],["name/481",[278,50.717]],["parent/481",[312,3.797]],["name/482",[279,50.717]],["parent/482",[312,3.797]],["name/483",[280,48.065]],["parent/483",[312,3.797]],["name/484",[73,36.167]],["parent/484",[312,3.797]],["name/485",[281,50.717]],["parent/485",[313,6.523]],["name/486",[283,50.717]],["parent/486",[313,6.523]],["name/487",[105,50.128]],["parent/487",[313,6.523]],["name/488",[284,50.717]],["parent/488",[312,3.797]],["name/489",[285,49.571]],["parent/489",[312,3.797]],["name/490",[286,50.717]],["parent/490",[312,3.797]],["name/491",[287,50.717]],["parent/491",[312,3.797]],["name/492",[288,50.717]],["parent/492",[312,3.797]],["name/493",[289,50.717]],["parent/493",[312,3.797]],["name/494",[290,50.717]],["parent/494",[312,3.797]],["name/495",[291,50.128]],["parent/495",[312,3.797]],["name/496",[292,50.717]],["parent/496",[312,3.797]],["name/497",[293,50.717]],["parent/497",[312,3.797]],["name/498",[294,50.717]],["parent/498",[312,3.797]],["name/499",[295,50.717]],["parent/499",[312,3.797]],["name/500",[296,50.717]],["parent/500",[312,3.797]],["name/501",[297,50.717]],["parent/501",[312,3.797]],["name/502",[298,50.717]],["parent/502",[312,3.797]],["name/503",[299,50.717]],["parent/503",[312,3.797]],["name/504",[300,50.717]],["parent/504",[312,3.797]],["name/505",[301,50.128]],["parent/505",[312,3.797]],["name/506",[302,50.128]],["parent/506",[312,3.797]],["name/507",[303,50.128]],["parent/507",[312,3.797]],["name/508",[304,50.128]],["parent/508",[312,3.797]],["name/509",[305,50.128]],["parent/509",[312,3.797]],["name/510",[306,50.128]],["parent/510",[312,3.797]],["name/511",[307,50.128]],["parent/511",[312,3.797]],["name/512",[308,50.717]],["parent/512",[312,3.797]],["name/513",[309,50.717]],["parent/513",[312,3.797]],["name/514",[314,69.623]],["parent/514",[]],["name/515",[315,61.724]],["parent/515",[314,6.855]],["name/516",[2,36.456]],["parent/516",[316,3.797]],["name/517",[163,48.065]],["parent/517",[316,3.797]],["name/518",[267,47.174]],["parent/518",[316,3.797]],["name/519",[156,47.174]],["parent/519",[316,3.797]],["name/520",[157,47.174]],["parent/520",[316,3.797]],["name/521",[158,48.065]],["parent/521",[316,3.797]],["name/522",[268,51.344]],["parent/522",[316,3.797]],["name/523",[258,49.044]],["parent/523",[316,3.797]],["name/524",[269,48.065]],["parent/524",[316,3.797]],["name/525",[151,44.896]],["parent/525",[316,3.797]],["name/526",[152,47.61]],["parent/526",[316,3.797]],["name/527",[69,48.543]],["parent/527",[316,3.797]],["name/528",[79,47.61]],["parent/528",[316,3.797]],["name/529",[80,47.61]],["parent/529",[316,3.797]],["name/530",[270,50.717]],["parent/530",[316,3.797]],["name/531",[271,50.128]],["parent/531",[316,3.797]],["name/532",[6,37.536]],["parent/532",[316,3.797]],["name/533",[7,41.005]],["parent/533",[316,3.797]],["name/534",[272,48.543]],["parent/534",[316,3.797]],["name/535",[273,50.128]],["parent/535",[316,3.797]],["name/536",[274,48.543]],["parent/536",[316,3.797]],["name/537",[275,50.717]],["parent/537",[316,3.797]],["name/538",[84,49.044]],["parent/538",[316,3.797]],["name/539",[276,49.571]],["parent/539",[316,3.797]],["name/540",[277,50.717]],["parent/540",[316,3.797]],["name/541",[278,50.717]],["parent/541",[316,3.797]],["name/542",[279,50.717]],["parent/542",[316,3.797]],["name/543",[280,48.065]],["parent/543",[316,3.797]],["name/544",[73,36.167]],["parent/544",[316,3.797]],["name/545",[281,50.717]],["parent/545",[317,6.523]],["name/546",[283,50.717]],["parent/546",[317,6.523]],["name/547",[105,50.128]],["parent/547",[317,6.523]],["name/548",[284,50.717]],["parent/548",[316,3.797]],["name/549",[285,49.571]],["parent/549",[316,3.797]],["name/550",[286,50.717]],["parent/550",[316,3.797]],["name/551",[287,50.717]],["parent/551",[316,3.797]],["name/552",[288,50.717]],["parent/552",[316,3.797]],["name/553",[289,50.717]],["parent/553",[316,3.797]],["name/554",[290,50.717]],["parent/554",[316,3.797]],["name/555",[291,50.128]],["parent/555",[316,3.797]],["name/556",[292,50.717]],["parent/556",[316,3.797]],["name/557",[293,50.717]],["parent/557",[316,3.797]],["name/558",[294,50.717]],["parent/558",[316,3.797]],["name/559",[295,50.717]],["parent/559",[316,3.797]],["name/560",[296,50.717]],["parent/560",[316,3.797]],["name/561",[297,50.717]],["parent/561",[316,3.797]],["name/562",[298,50.717]],["parent/562",[316,3.797]],["name/563",[299,50.717]],["parent/563",[316,3.797]],["name/564",[300,50.717]],["parent/564",[316,3.797]],["name/565",[301,50.128]],["parent/565",[316,3.797]],["name/566",[302,50.128]],["parent/566",[316,3.797]],["name/567",[303,50.128]],["parent/567",[316,3.797]],["name/568",[304,50.128]],["parent/568",[316,3.797]],["name/569",[305,50.128]],["parent/569",[316,3.797]],["name/570",[306,50.128]],["parent/570",[316,3.797]],["name/571",[307,50.128]],["parent/571",[316,3.797]],["name/572",[308,50.717]],["parent/572",[316,3.797]],["name/573",[309,50.717]],["parent/573",[316,3.797]],["name/574",[318,69.623]],["parent/574",[]],["name/575",[319,74.741]],["parent/575",[318,6.855]],["name/576",[2,36.456]],["parent/576",[320,5.771]],["name/577",[84,49.044]],["parent/577",[320,5.771]],["name/578",[321,74.741]],["parent/578",[320,5.771]],["name/579",[124,63.734]],["parent/579",[320,5.771]],["name/580",[6,37.536]],["parent/580",[320,5.771]],["name/581",[7,41.005]],["parent/581",[320,5.771]],["name/582",[155,54.334]],["parent/582",[320,5.771]],["name/583",[322,69.623]],["parent/583",[]],["name/584",[323,74.741]],["parent/584",[322,6.855]],["name/585",[2,36.456]],["parent/585",[324,5.912]],["name/586",[325,69.623]],["parent/586",[324,5.912]],["name/587",[124,63.734]],["parent/587",[324,5.912]],["name/588",[6,37.536]],["parent/588",[324,5.912]],["name/589",[7,41.005]],["parent/589",[324,5.912]],["name/590",[155,54.334]],["parent/590",[324,5.912]],["name/591",[326,69.623]],["parent/591",[]],["name/592",[327,60.05]],["parent/592",[326,6.855]],["name/593",[2,36.456]],["parent/593",[328,3.728]],["name/594",[329,74.741]],["parent/594",[328,3.728]],["name/595",[330,74.741]],["parent/595",[328,3.728]],["name/596",[331,74.741]],["parent/596",[328,3.728]],["name/597",[163,48.065]],["parent/597",[328,3.728]],["name/598",[285,49.571]],["parent/598",[328,3.728]],["name/599",[332,58.617]],["parent/599",[328,3.728]],["name/600",[267,47.174]],["parent/600",[328,3.728]],["name/601",[156,47.174]],["parent/601",[328,3.728]],["name/602",[157,47.174]],["parent/602",[328,3.728]],["name/603",[158,48.065]],["parent/603",[328,3.728]],["name/604",[268,51.344]],["parent/604",[328,3.728]],["name/605",[258,49.044]],["parent/605",[328,3.728]],["name/606",[269,48.065]],["parent/606",[328,3.728]],["name/607",[151,44.896]],["parent/607",[328,3.728]],["name/608",[152,47.61]],["parent/608",[328,3.728]],["name/609",[69,48.543]],["parent/609",[328,3.728]],["name/610",[79,47.61]],["parent/610",[328,3.728]],["name/611",[80,47.61]],["parent/611",[328,3.728]],["name/612",[270,50.717]],["parent/612",[328,3.728]],["name/613",[271,50.128]],["parent/613",[328,3.728]],["name/614",[6,37.536]],["parent/614",[328,3.728]],["name/615",[7,41.005]],["parent/615",[328,3.728]],["name/616",[272,48.543]],["parent/616",[328,3.728]],["name/617",[273,50.128]],["parent/617",[328,3.728]],["name/618",[274,48.543]],["parent/618",[328,3.728]],["name/619",[275,50.717]],["parent/619",[328,3.728]],["name/620",[84,49.044]],["parent/620",[328,3.728]],["name/621",[276,49.571]],["parent/621",[328,3.728]],["name/622",[277,50.717]],["parent/622",[328,3.728]],["name/623",[278,50.717]],["parent/623",[328,3.728]],["name/624",[279,50.717]],["parent/624",[328,3.728]],["name/625",[280,48.065]],["parent/625",[328,3.728]],["name/626",[73,36.167]],["parent/626",[328,3.728]],["name/627",[281,50.717]],["parent/627",[333,6.523]],["name/628",[283,50.717]],["parent/628",[333,6.523]],["name/629",[105,50.128]],["parent/629",[333,6.523]],["name/630",[284,50.717]],["parent/630",[328,3.728]],["name/631",[286,50.717]],["parent/631",[328,3.728]],["name/632",[287,50.717]],["parent/632",[328,3.728]],["name/633",[288,50.717]],["parent/633",[328,3.728]],["name/634",[289,50.717]],["parent/634",[328,3.728]],["name/635",[290,50.717]],["parent/635",[328,3.728]],["name/636",[291,50.128]],["parent/636",[328,3.728]],["name/637",[292,50.717]],["parent/637",[328,3.728]],["name/638",[293,50.717]],["parent/638",[328,3.728]],["name/639",[294,50.717]],["parent/639",[328,3.728]],["name/640",[295,50.717]],["parent/640",[328,3.728]],["name/641",[296,50.717]],["parent/641",[328,3.728]],["name/642",[297,50.717]],["parent/642",[328,3.728]],["name/643",[298,50.717]],["parent/643",[328,3.728]],["name/644",[299,50.717]],["parent/644",[328,3.728]],["name/645",[300,50.717]],["parent/645",[328,3.728]],["name/646",[301,50.128]],["parent/646",[328,3.728]],["name/647",[302,50.128]],["parent/647",[328,3.728]],["name/648",[303,50.128]],["parent/648",[328,3.728]],["name/649",[304,50.128]],["parent/649",[328,3.728]],["name/650",[305,50.128]],["parent/650",[328,3.728]],["name/651",[306,50.128]],["parent/651",[328,3.728]],["name/652",[307,50.128]],["parent/652",[328,3.728]],["name/653",[308,50.717]],["parent/653",[328,3.728]],["name/654",[309,50.717]],["parent/654",[328,3.728]],["name/655",[334,69.623]],["parent/655",[]],["name/656",[335,74.741]],["parent/656",[334,6.855]],["name/657",[2,36.456]],["parent/657",[336,6.077]],["name/658",[6,37.536]],["parent/658",[336,6.077]],["name/659",[7,41.005]],["parent/659",[336,6.077]],["name/660",[155,54.334]],["parent/660",[336,6.077]],["name/661",[124,63.734]],["parent/661",[336,6.077]],["name/662",[337,69.623]],["parent/662",[]],["name/663",[155,54.334]],["parent/663",[337,6.855]],["name/664",[2,36.456]],["parent/664",[338,4.454]],["name/665",[151,44.896]],["parent/665",[338,4.454]],["name/666",[327,60.05]],["parent/666",[338,4.454]],["name/667",[153,63.734]],["parent/667",[338,4.454]],["name/668",[154,63.734]],["parent/668",[338,4.454]],["name/669",[339,66.252]],["parent/669",[338,4.454]],["name/670",[340,66.252]],["parent/670",[338,4.454]],["name/671",[6,37.536]],["parent/671",[338,4.454]],["name/672",[7,41.005]],["parent/672",[338,4.454]],["name/673",[341,74.741]],["parent/673",[338,4.454]],["name/674",[276,49.571]],["parent/674",[338,4.454]],["name/675",[342,74.741]],["parent/675",[338,4.454]],["name/676",[343,74.741]],["parent/676",[338,4.454]],["name/677",[344,69.623]],["parent/677",[338,4.454]],["name/678",[345,74.741]],["parent/678",[338,4.454]],["name/679",[160,61.724]],["parent/679",[338,4.454]],["name/680",[161,63.734]],["parent/680",[338,4.454]],["name/681",[162,63.734]],["parent/681",[338,4.454]],["name/682",[346,74.741]],["parent/682",[338,4.454]],["name/683",[347,74.741]],["parent/683",[338,4.454]],["name/684",[348,74.741]],["parent/684",[338,4.454]],["name/685",[349,74.741]],["parent/685",[338,4.454]],["name/686",[350,74.741]],["parent/686",[338,4.454]],["name/687",[291,50.128]],["parent/687",[338,4.454]],["name/688",[351,74.741]],["parent/688",[338,4.454]],["name/689",[352,74.741]],["parent/689",[338,4.454]],["name/690",[269,48.065]],["parent/690",[338,4.454]],["name/691",[332,58.617]],["parent/691",[338,4.454]],["name/692",[353,69.623]],["parent/692",[]],["name/693",[354,63.734]],["parent/693",[353,6.855]],["name/694",[2,36.456]],["parent/694",[355,3.797]],["name/695",[163,48.065]],["parent/695",[355,3.797]],["name/696",[267,47.174]],["parent/696",[355,3.797]],["name/697",[156,47.174]],["parent/697",[355,3.797]],["name/698",[157,47.174]],["parent/698",[355,3.797]],["name/699",[158,48.065]],["parent/699",[355,3.797]],["name/700",[268,51.344]],["parent/700",[355,3.797]],["name/701",[258,49.044]],["parent/701",[355,3.797]],["name/702",[269,48.065]],["parent/702",[355,3.797]],["name/703",[151,44.896]],["parent/703",[355,3.797]],["name/704",[152,47.61]],["parent/704",[355,3.797]],["name/705",[69,48.543]],["parent/705",[355,3.797]],["name/706",[79,47.61]],["parent/706",[355,3.797]],["name/707",[80,47.61]],["parent/707",[355,3.797]],["name/708",[270,50.717]],["parent/708",[355,3.797]],["name/709",[271,50.128]],["parent/709",[355,3.797]],["name/710",[6,37.536]],["parent/710",[355,3.797]],["name/711",[7,41.005]],["parent/711",[355,3.797]],["name/712",[272,48.543]],["parent/712",[355,3.797]],["name/713",[273,50.128]],["parent/713",[355,3.797]],["name/714",[274,48.543]],["parent/714",[355,3.797]],["name/715",[275,50.717]],["parent/715",[355,3.797]],["name/716",[84,49.044]],["parent/716",[355,3.797]],["name/717",[276,49.571]],["parent/717",[355,3.797]],["name/718",[277,50.717]],["parent/718",[355,3.797]],["name/719",[278,50.717]],["parent/719",[355,3.797]],["name/720",[279,50.717]],["parent/720",[355,3.797]],["name/721",[280,48.065]],["parent/721",[355,3.797]],["name/722",[73,36.167]],["parent/722",[355,3.797]],["name/723",[281,50.717]],["parent/723",[356,6.523]],["name/724",[283,50.717]],["parent/724",[356,6.523]],["name/725",[105,50.128]],["parent/725",[356,6.523]],["name/726",[284,50.717]],["parent/726",[355,3.797]],["name/727",[285,49.571]],["parent/727",[355,3.797]],["name/728",[286,50.717]],["parent/728",[355,3.797]],["name/729",[287,50.717]],["parent/729",[355,3.797]],["name/730",[288,50.717]],["parent/730",[355,3.797]],["name/731",[289,50.717]],["parent/731",[355,3.797]],["name/732",[290,50.717]],["parent/732",[355,3.797]],["name/733",[291,50.128]],["parent/733",[355,3.797]],["name/734",[292,50.717]],["parent/734",[355,3.797]],["name/735",[293,50.717]],["parent/735",[355,3.797]],["name/736",[294,50.717]],["parent/736",[355,3.797]],["name/737",[295,50.717]],["parent/737",[355,3.797]],["name/738",[296,50.717]],["parent/738",[355,3.797]],["name/739",[297,50.717]],["parent/739",[355,3.797]],["name/740",[298,50.717]],["parent/740",[355,3.797]],["name/741",[299,50.717]],["parent/741",[355,3.797]],["name/742",[300,50.717]],["parent/742",[355,3.797]],["name/743",[301,50.128]],["parent/743",[355,3.797]],["name/744",[302,50.128]],["parent/744",[355,3.797]],["name/745",[303,50.128]],["parent/745",[355,3.797]],["name/746",[304,50.128]],["parent/746",[355,3.797]],["name/747",[305,50.128]],["parent/747",[355,3.797]],["name/748",[306,50.128]],["parent/748",[355,3.797]],["name/749",[307,50.128]],["parent/749",[355,3.797]],["name/750",[308,50.717]],["parent/750",[355,3.797]],["name/751",[309,50.717]],["parent/751",[355,3.797]],["name/752",[357,69.623]],["parent/752",[]],["name/753",[358,63.734]],["parent/753",[357,6.855]],["name/754",[2,36.456]],["parent/754",[359,3.797]],["name/755",[163,48.065]],["parent/755",[359,3.797]],["name/756",[267,47.174]],["parent/756",[359,3.797]],["name/757",[156,47.174]],["parent/757",[359,3.797]],["name/758",[157,47.174]],["parent/758",[359,3.797]],["name/759",[158,48.065]],["parent/759",[359,3.797]],["name/760",[268,51.344]],["parent/760",[359,3.797]],["name/761",[258,49.044]],["parent/761",[359,3.797]],["name/762",[269,48.065]],["parent/762",[359,3.797]],["name/763",[151,44.896]],["parent/763",[359,3.797]],["name/764",[152,47.61]],["parent/764",[359,3.797]],["name/765",[69,48.543]],["parent/765",[359,3.797]],["name/766",[79,47.61]],["parent/766",[359,3.797]],["name/767",[80,47.61]],["parent/767",[359,3.797]],["name/768",[270,50.717]],["parent/768",[359,3.797]],["name/769",[271,50.128]],["parent/769",[359,3.797]],["name/770",[6,37.536]],["parent/770",[359,3.797]],["name/771",[7,41.005]],["parent/771",[359,3.797]],["name/772",[272,48.543]],["parent/772",[359,3.797]],["name/773",[273,50.128]],["parent/773",[359,3.797]],["name/774",[274,48.543]],["parent/774",[359,3.797]],["name/775",[275,50.717]],["parent/775",[359,3.797]],["name/776",[84,49.044]],["parent/776",[359,3.797]],["name/777",[276,49.571]],["parent/777",[359,3.797]],["name/778",[277,50.717]],["parent/778",[359,3.797]],["name/779",[278,50.717]],["parent/779",[359,3.797]],["name/780",[279,50.717]],["parent/780",[359,3.797]],["name/781",[280,48.065]],["parent/781",[359,3.797]],["name/782",[73,36.167]],["parent/782",[359,3.797]],["name/783",[281,50.717]],["parent/783",[360,6.523]],["name/784",[283,50.717]],["parent/784",[360,6.523]],["name/785",[105,50.128]],["parent/785",[360,6.523]],["name/786",[284,50.717]],["parent/786",[359,3.797]],["name/787",[285,49.571]],["parent/787",[359,3.797]],["name/788",[286,50.717]],["parent/788",[359,3.797]],["name/789",[287,50.717]],["parent/789",[359,3.797]],["name/790",[288,50.717]],["parent/790",[359,3.797]],["name/791",[289,50.717]],["parent/791",[359,3.797]],["name/792",[290,50.717]],["parent/792",[359,3.797]],["name/793",[291,50.128]],["parent/793",[359,3.797]],["name/794",[292,50.717]],["parent/794",[359,3.797]],["name/795",[293,50.717]],["parent/795",[359,3.797]],["name/796",[294,50.717]],["parent/796",[359,3.797]],["name/797",[295,50.717]],["parent/797",[359,3.797]],["name/798",[296,50.717]],["parent/798",[359,3.797]],["name/799",[297,50.717]],["parent/799",[359,3.797]],["name/800",[298,50.717]],["parent/800",[359,3.797]],["name/801",[299,50.717]],["parent/801",[359,3.797]],["name/802",[300,50.717]],["parent/802",[359,3.797]],["name/803",[301,50.128]],["parent/803",[359,3.797]],["name/804",[302,50.128]],["parent/804",[359,3.797]],["name/805",[303,50.128]],["parent/805",[359,3.797]],["name/806",[304,50.128]],["parent/806",[359,3.797]],["name/807",[305,50.128]],["parent/807",[359,3.797]],["name/808",[306,50.128]],["parent/808",[359,3.797]],["name/809",[307,50.128]],["parent/809",[359,3.797]],["name/810",[308,50.717]],["parent/810",[359,3.797]],["name/811",[309,50.717]],["parent/811",[359,3.797]],["name/812",[361,69.623]],["parent/812",[]],["name/813",[8,58.617]],["parent/813",[361,6.855]],["name/814",[2,36.456]],["parent/814",[362,3.712]],["name/815",[363,74.741]],["parent/815",[362,3.712]],["name/816",[364,74.741]],["parent/816",[362,3.712]],["name/817",[365,74.741]],["parent/817",[362,3.712]],["name/818",[366,74.741]],["parent/818",[362,3.712]],["name/819",[163,48.065]],["parent/819",[362,3.712]],["name/820",[258,49.044]],["parent/820",[362,3.712]],["name/821",[332,58.617]],["parent/821",[362,3.712]],["name/822",[269,48.065]],["parent/822",[362,3.712]],["name/823",[267,47.174]],["parent/823",[362,3.712]],["name/824",[156,47.174]],["parent/824",[362,3.712]],["name/825",[157,47.174]],["parent/825",[362,3.712]],["name/826",[158,48.065]],["parent/826",[362,3.712]],["name/827",[268,51.344]],["parent/827",[362,3.712]],["name/828",[151,44.896]],["parent/828",[362,3.712]],["name/829",[152,47.61]],["parent/829",[362,3.712]],["name/830",[69,48.543]],["parent/830",[362,3.712]],["name/831",[79,47.61]],["parent/831",[362,3.712]],["name/832",[80,47.61]],["parent/832",[362,3.712]],["name/833",[270,50.717]],["parent/833",[362,3.712]],["name/834",[271,50.128]],["parent/834",[362,3.712]],["name/835",[6,37.536]],["parent/835",[362,3.712]],["name/836",[7,41.005]],["parent/836",[362,3.712]],["name/837",[272,48.543]],["parent/837",[362,3.712]],["name/838",[273,50.128]],["parent/838",[362,3.712]],["name/839",[274,48.543]],["parent/839",[362,3.712]],["name/840",[275,50.717]],["parent/840",[362,3.712]],["name/841",[84,49.044]],["parent/841",[362,3.712]],["name/842",[276,49.571]],["parent/842",[362,3.712]],["name/843",[277,50.717]],["parent/843",[362,3.712]],["name/844",[278,50.717]],["parent/844",[362,3.712]],["name/845",[279,50.717]],["parent/845",[362,3.712]],["name/846",[280,48.065]],["parent/846",[362,3.712]],["name/847",[73,36.167]],["parent/847",[362,3.712]],["name/848",[281,50.717]],["parent/848",[367,6.523]],["name/849",[283,50.717]],["parent/849",[367,6.523]],["name/850",[105,50.128]],["parent/850",[367,6.523]],["name/851",[284,50.717]],["parent/851",[362,3.712]],["name/852",[285,49.571]],["parent/852",[362,3.712]],["name/853",[286,50.717]],["parent/853",[362,3.712]],["name/854",[287,50.717]],["parent/854",[362,3.712]],["name/855",[288,50.717]],["parent/855",[362,3.712]],["name/856",[289,50.717]],["parent/856",[362,3.712]],["name/857",[290,50.717]],["parent/857",[362,3.712]],["name/858",[291,50.128]],["parent/858",[362,3.712]],["name/859",[292,50.717]],["parent/859",[362,3.712]],["name/860",[293,50.717]],["parent/860",[362,3.712]],["name/861",[294,50.717]],["parent/861",[362,3.712]],["name/862",[295,50.717]],["parent/862",[362,3.712]],["name/863",[296,50.717]],["parent/863",[362,3.712]],["name/864",[297,50.717]],["parent/864",[362,3.712]],["name/865",[298,50.717]],["parent/865",[362,3.712]],["name/866",[299,50.717]],["parent/866",[362,3.712]],["name/867",[300,50.717]],["parent/867",[362,3.712]],["name/868",[301,50.128]],["parent/868",[362,3.712]],["name/869",[302,50.128]],["parent/869",[362,3.712]],["name/870",[303,50.128]],["parent/870",[362,3.712]],["name/871",[304,50.128]],["parent/871",[362,3.712]],["name/872",[305,50.128]],["parent/872",[362,3.712]],["name/873",[306,50.128]],["parent/873",[362,3.712]],["name/874",[307,50.128]],["parent/874",[362,3.712]],["name/875",[308,50.717]],["parent/875",[362,3.712]],["name/876",[309,50.717]],["parent/876",[362,3.712]],["name/877",[368,69.623]],["parent/877",[]],["name/878",[182,56.248]],["parent/878",[368,6.855]],["name/879",[2,36.456]],["parent/879",[369,3.728]],["name/880",[152,47.61]],["parent/880",[369,3.728]],["name/881",[370,57.363]],["parent/881",[369,3.728]],["name/882",[371,74.741]],["parent/882",[369,3.728]],["name/883",[163,48.065]],["parent/883",[369,3.728]],["name/884",[127,63.734]],["parent/884",[369,3.728]],["name/885",[128,63.734]],["parent/885",[369,3.728]],["name/886",[267,47.174]],["parent/886",[369,3.728]],["name/887",[156,47.174]],["parent/887",[369,3.728]],["name/888",[157,47.174]],["parent/888",[369,3.728]],["name/889",[158,48.065]],["parent/889",[369,3.728]],["name/890",[268,51.344]],["parent/890",[369,3.728]],["name/891",[258,49.044]],["parent/891",[369,3.728]],["name/892",[269,48.065]],["parent/892",[369,3.728]],["name/893",[151,44.896]],["parent/893",[369,3.728]],["name/894",[69,48.543]],["parent/894",[369,3.728]],["name/895",[79,47.61]],["parent/895",[369,3.728]],["name/896",[80,47.61]],["parent/896",[369,3.728]],["name/897",[270,50.717]],["parent/897",[369,3.728]],["name/898",[271,50.128]],["parent/898",[369,3.728]],["name/899",[6,37.536]],["parent/899",[369,3.728]],["name/900",[7,41.005]],["parent/900",[369,3.728]],["name/901",[272,48.543]],["parent/901",[369,3.728]],["name/902",[273,50.128]],["parent/902",[369,3.728]],["name/903",[274,48.543]],["parent/903",[369,3.728]],["name/904",[275,50.717]],["parent/904",[369,3.728]],["name/905",[84,49.044]],["parent/905",[369,3.728]],["name/906",[276,49.571]],["parent/906",[369,3.728]],["name/907",[277,50.717]],["parent/907",[369,3.728]],["name/908",[278,50.717]],["parent/908",[369,3.728]],["name/909",[279,50.717]],["parent/909",[369,3.728]],["name/910",[280,48.065]],["parent/910",[369,3.728]],["name/911",[73,36.167]],["parent/911",[369,3.728]],["name/912",[281,50.717]],["parent/912",[372,6.523]],["name/913",[283,50.717]],["parent/913",[372,6.523]],["name/914",[105,50.128]],["parent/914",[372,6.523]],["name/915",[284,50.717]],["parent/915",[369,3.728]],["name/916",[285,49.571]],["parent/916",[369,3.728]],["name/917",[286,50.717]],["parent/917",[369,3.728]],["name/918",[287,50.717]],["parent/918",[369,3.728]],["name/919",[288,50.717]],["parent/919",[369,3.728]],["name/920",[289,50.717]],["parent/920",[369,3.728]],["name/921",[290,50.717]],["parent/921",[369,3.728]],["name/922",[291,50.128]],["parent/922",[369,3.728]],["name/923",[292,50.717]],["parent/923",[369,3.728]],["name/924",[293,50.717]],["parent/924",[369,3.728]],["name/925",[294,50.717]],["parent/925",[369,3.728]],["name/926",[295,50.717]],["parent/926",[369,3.728]],["name/927",[296,50.717]],["parent/927",[369,3.728]],["name/928",[297,50.717]],["parent/928",[369,3.728]],["name/929",[298,50.717]],["parent/929",[369,3.728]],["name/930",[299,50.717]],["parent/930",[369,3.728]],["name/931",[300,50.717]],["parent/931",[369,3.728]],["name/932",[301,50.128]],["parent/932",[369,3.728]],["name/933",[302,50.128]],["parent/933",[369,3.728]],["name/934",[303,50.128]],["parent/934",[369,3.728]],["name/935",[304,50.128]],["parent/935",[369,3.728]],["name/936",[305,50.128]],["parent/936",[369,3.728]],["name/937",[306,50.128]],["parent/937",[369,3.728]],["name/938",[307,50.128]],["parent/938",[369,3.728]],["name/939",[308,50.717]],["parent/939",[369,3.728]],["name/940",[309,50.717]],["parent/940",[369,3.728]],["name/941",[373,69.623]],["parent/941",[]],["name/942",[374,74.741]],["parent/942",[373,6.855]],["name/943",[2,36.456]],["parent/943",[375,3.728]],["name/944",[376,74.741]],["parent/944",[375,3.728]],["name/945",[377,74.741]],["parent/945",[375,3.728]],["name/946",[49,63.734]],["parent/946",[375,3.728]],["name/947",[378,74.741]],["parent/947",[375,3.728]],["name/948",[267,47.174]],["parent/948",[375,3.728]],["name/949",[156,47.174]],["parent/949",[375,3.728]],["name/950",[157,47.174]],["parent/950",[375,3.728]],["name/951",[158,48.065]],["parent/951",[375,3.728]],["name/952",[163,48.065]],["parent/952",[375,3.728]],["name/953",[268,51.344]],["parent/953",[375,3.728]],["name/954",[258,49.044]],["parent/954",[375,3.728]],["name/955",[269,48.065]],["parent/955",[375,3.728]],["name/956",[151,44.896]],["parent/956",[375,3.728]],["name/957",[152,47.61]],["parent/957",[375,3.728]],["name/958",[69,48.543]],["parent/958",[375,3.728]],["name/959",[79,47.61]],["parent/959",[375,3.728]],["name/960",[80,47.61]],["parent/960",[375,3.728]],["name/961",[270,50.717]],["parent/961",[375,3.728]],["name/962",[271,50.128]],["parent/962",[375,3.728]],["name/963",[6,37.536]],["parent/963",[375,3.728]],["name/964",[7,41.005]],["parent/964",[375,3.728]],["name/965",[272,48.543]],["parent/965",[375,3.728]],["name/966",[273,50.128]],["parent/966",[375,3.728]],["name/967",[274,48.543]],["parent/967",[375,3.728]],["name/968",[275,50.717]],["parent/968",[375,3.728]],["name/969",[84,49.044]],["parent/969",[375,3.728]],["name/970",[276,49.571]],["parent/970",[375,3.728]],["name/971",[277,50.717]],["parent/971",[375,3.728]],["name/972",[278,50.717]],["parent/972",[375,3.728]],["name/973",[279,50.717]],["parent/973",[375,3.728]],["name/974",[280,48.065]],["parent/974",[375,3.728]],["name/975",[73,36.167]],["parent/975",[375,3.728]],["name/976",[281,50.717]],["parent/976",[379,6.523]],["name/977",[283,50.717]],["parent/977",[379,6.523]],["name/978",[105,50.128]],["parent/978",[379,6.523]],["name/979",[284,50.717]],["parent/979",[375,3.728]],["name/980",[285,49.571]],["parent/980",[375,3.728]],["name/981",[286,50.717]],["parent/981",[375,3.728]],["name/982",[287,50.717]],["parent/982",[375,3.728]],["name/983",[288,50.717]],["parent/983",[375,3.728]],["name/984",[289,50.717]],["parent/984",[375,3.728]],["name/985",[290,50.717]],["parent/985",[375,3.728]],["name/986",[291,50.128]],["parent/986",[375,3.728]],["name/987",[292,50.717]],["parent/987",[375,3.728]],["name/988",[293,50.717]],["parent/988",[375,3.728]],["name/989",[294,50.717]],["parent/989",[375,3.728]],["name/990",[295,50.717]],["parent/990",[375,3.728]],["name/991",[296,50.717]],["parent/991",[375,3.728]],["name/992",[297,50.717]],["parent/992",[375,3.728]],["name/993",[298,50.717]],["parent/993",[375,3.728]],["name/994",[299,50.717]],["parent/994",[375,3.728]],["name/995",[300,50.717]],["parent/995",[375,3.728]],["name/996",[301,50.128]],["parent/996",[375,3.728]],["name/997",[302,50.128]],["parent/997",[375,3.728]],["name/998",[303,50.128]],["parent/998",[375,3.728]],["name/999",[304,50.128]],["parent/999",[375,3.728]],["name/1000",[305,50.128]],["parent/1000",[375,3.728]],["name/1001",[306,50.128]],["parent/1001",[375,3.728]],["name/1002",[307,50.128]],["parent/1002",[375,3.728]],["name/1003",[308,50.717]],["parent/1003",[375,3.728]],["name/1004",[309,50.717]],["parent/1004",[375,3.728]],["name/1005",[380,69.623]],["parent/1005",[]],["name/1006",[381,74.741]],["parent/1006",[380,6.855]],["name/1007",[2,36.456]],["parent/1007",[382,3.797]],["name/1008",[163,48.065]],["parent/1008",[382,3.797]],["name/1009",[267,47.174]],["parent/1009",[382,3.797]],["name/1010",[156,47.174]],["parent/1010",[382,3.797]],["name/1011",[157,47.174]],["parent/1011",[382,3.797]],["name/1012",[158,48.065]],["parent/1012",[382,3.797]],["name/1013",[268,51.344]],["parent/1013",[382,3.797]],["name/1014",[258,49.044]],["parent/1014",[382,3.797]],["name/1015",[269,48.065]],["parent/1015",[382,3.797]],["name/1016",[151,44.896]],["parent/1016",[382,3.797]],["name/1017",[152,47.61]],["parent/1017",[382,3.797]],["name/1018",[69,48.543]],["parent/1018",[382,3.797]],["name/1019",[79,47.61]],["parent/1019",[382,3.797]],["name/1020",[80,47.61]],["parent/1020",[382,3.797]],["name/1021",[270,50.717]],["parent/1021",[382,3.797]],["name/1022",[271,50.128]],["parent/1022",[382,3.797]],["name/1023",[6,37.536]],["parent/1023",[382,3.797]],["name/1024",[7,41.005]],["parent/1024",[382,3.797]],["name/1025",[272,48.543]],["parent/1025",[382,3.797]],["name/1026",[273,50.128]],["parent/1026",[382,3.797]],["name/1027",[274,48.543]],["parent/1027",[382,3.797]],["name/1028",[275,50.717]],["parent/1028",[382,3.797]],["name/1029",[84,49.044]],["parent/1029",[382,3.797]],["name/1030",[276,49.571]],["parent/1030",[382,3.797]],["name/1031",[277,50.717]],["parent/1031",[382,3.797]],["name/1032",[278,50.717]],["parent/1032",[382,3.797]],["name/1033",[279,50.717]],["parent/1033",[382,3.797]],["name/1034",[280,48.065]],["parent/1034",[382,3.797]],["name/1035",[73,36.167]],["parent/1035",[382,3.797]],["name/1036",[281,50.717]],["parent/1036",[383,6.523]],["name/1037",[283,50.717]],["parent/1037",[383,6.523]],["name/1038",[105,50.128]],["parent/1038",[383,6.523]],["name/1039",[284,50.717]],["parent/1039",[382,3.797]],["name/1040",[285,49.571]],["parent/1040",[382,3.797]],["name/1041",[286,50.717]],["parent/1041",[382,3.797]],["name/1042",[287,50.717]],["parent/1042",[382,3.797]],["name/1043",[288,50.717]],["parent/1043",[382,3.797]],["name/1044",[289,50.717]],["parent/1044",[382,3.797]],["name/1045",[290,50.717]],["parent/1045",[382,3.797]],["name/1046",[291,50.128]],["parent/1046",[382,3.797]],["name/1047",[292,50.717]],["parent/1047",[382,3.797]],["name/1048",[293,50.717]],["parent/1048",[382,3.797]],["name/1049",[294,50.717]],["parent/1049",[382,3.797]],["name/1050",[295,50.717]],["parent/1050",[382,3.797]],["name/1051",[296,50.717]],["parent/1051",[382,3.797]],["name/1052",[297,50.717]],["parent/1052",[382,3.797]],["name/1053",[298,50.717]],["parent/1053",[382,3.797]],["name/1054",[299,50.717]],["parent/1054",[382,3.797]],["name/1055",[300,50.717]],["parent/1055",[382,3.797]],["name/1056",[301,50.128]],["parent/1056",[382,3.797]],["name/1057",[302,50.128]],["parent/1057",[382,3.797]],["name/1058",[303,50.128]],["parent/1058",[382,3.797]],["name/1059",[304,50.128]],["parent/1059",[382,3.797]],["name/1060",[305,50.128]],["parent/1060",[382,3.797]],["name/1061",[306,50.128]],["parent/1061",[382,3.797]],["name/1062",[307,50.128]],["parent/1062",[382,3.797]],["name/1063",[308,50.717]],["parent/1063",[382,3.797]],["name/1064",[309,50.717]],["parent/1064",[382,3.797]],["name/1065",[384,69.623]],["parent/1065",[]],["name/1066",[385,74.741]],["parent/1066",[384,6.855]],["name/1067",[2,36.456]],["parent/1067",[386,3.797]],["name/1068",[163,48.065]],["parent/1068",[386,3.797]],["name/1069",[267,47.174]],["parent/1069",[386,3.797]],["name/1070",[156,47.174]],["parent/1070",[386,3.797]],["name/1071",[157,47.174]],["parent/1071",[386,3.797]],["name/1072",[158,48.065]],["parent/1072",[386,3.797]],["name/1073",[268,51.344]],["parent/1073",[386,3.797]],["name/1074",[258,49.044]],["parent/1074",[386,3.797]],["name/1075",[269,48.065]],["parent/1075",[386,3.797]],["name/1076",[151,44.896]],["parent/1076",[386,3.797]],["name/1077",[152,47.61]],["parent/1077",[386,3.797]],["name/1078",[69,48.543]],["parent/1078",[386,3.797]],["name/1079",[79,47.61]],["parent/1079",[386,3.797]],["name/1080",[80,47.61]],["parent/1080",[386,3.797]],["name/1081",[270,50.717]],["parent/1081",[386,3.797]],["name/1082",[271,50.128]],["parent/1082",[386,3.797]],["name/1083",[6,37.536]],["parent/1083",[386,3.797]],["name/1084",[7,41.005]],["parent/1084",[386,3.797]],["name/1085",[272,48.543]],["parent/1085",[386,3.797]],["name/1086",[273,50.128]],["parent/1086",[386,3.797]],["name/1087",[274,48.543]],["parent/1087",[386,3.797]],["name/1088",[275,50.717]],["parent/1088",[386,3.797]],["name/1089",[84,49.044]],["parent/1089",[386,3.797]],["name/1090",[276,49.571]],["parent/1090",[386,3.797]],["name/1091",[277,50.717]],["parent/1091",[386,3.797]],["name/1092",[278,50.717]],["parent/1092",[386,3.797]],["name/1093",[279,50.717]],["parent/1093",[386,3.797]],["name/1094",[280,48.065]],["parent/1094",[386,3.797]],["name/1095",[73,36.167]],["parent/1095",[386,3.797]],["name/1096",[281,50.717]],["parent/1096",[387,6.523]],["name/1097",[283,50.717]],["parent/1097",[387,6.523]],["name/1098",[105,50.128]],["parent/1098",[387,6.523]],["name/1099",[284,50.717]],["parent/1099",[386,3.797]],["name/1100",[285,49.571]],["parent/1100",[386,3.797]],["name/1101",[286,50.717]],["parent/1101",[386,3.797]],["name/1102",[287,50.717]],["parent/1102",[386,3.797]],["name/1103",[288,50.717]],["parent/1103",[386,3.797]],["name/1104",[289,50.717]],["parent/1104",[386,3.797]],["name/1105",[290,50.717]],["parent/1105",[386,3.797]],["name/1106",[291,50.128]],["parent/1106",[386,3.797]],["name/1107",[292,50.717]],["parent/1107",[386,3.797]],["name/1108",[293,50.717]],["parent/1108",[386,3.797]],["name/1109",[294,50.717]],["parent/1109",[386,3.797]],["name/1110",[295,50.717]],["parent/1110",[386,3.797]],["name/1111",[296,50.717]],["parent/1111",[386,3.797]],["name/1112",[297,50.717]],["parent/1112",[386,3.797]],["name/1113",[298,50.717]],["parent/1113",[386,3.797]],["name/1114",[299,50.717]],["parent/1114",[386,3.797]],["name/1115",[300,50.717]],["parent/1115",[386,3.797]],["name/1116",[301,50.128]],["parent/1116",[386,3.797]],["name/1117",[302,50.128]],["parent/1117",[386,3.797]],["name/1118",[303,50.128]],["parent/1118",[386,3.797]],["name/1119",[304,50.128]],["parent/1119",[386,3.797]],["name/1120",[305,50.128]],["parent/1120",[386,3.797]],["name/1121",[306,50.128]],["parent/1121",[386,3.797]],["name/1122",[307,50.128]],["parent/1122",[386,3.797]],["name/1123",[308,50.717]],["parent/1123",[386,3.797]],["name/1124",[309,50.717]],["parent/1124",[386,3.797]],["name/1125",[388,69.623]],["parent/1125",[]],["name/1126",[370,57.363]],["parent/1126",[388,6.855]],["name/1127",[2,36.456]],["parent/1127",[389,3.712]],["name/1128",[370,57.363]],["parent/1128",[389,3.712]],["name/1129",[5,54.334]],["parent/1129",[389,3.712]],["name/1130",[390,55.246]],["parent/1130",[389,3.712]],["name/1131",[391,69.623]],["parent/1131",[389,3.712]],["name/1132",[163,48.065]],["parent/1132",[389,3.712]],["name/1133",[392,74.741]],["parent/1133",[389,3.712]],["name/1134",[267,47.174]],["parent/1134",[389,3.712]],["name/1135",[156,47.174]],["parent/1135",[389,3.712]],["name/1136",[157,47.174]],["parent/1136",[389,3.712]],["name/1137",[158,48.065]],["parent/1137",[389,3.712]],["name/1138",[268,51.344]],["parent/1138",[389,3.712]],["name/1139",[258,49.044]],["parent/1139",[389,3.712]],["name/1140",[269,48.065]],["parent/1140",[389,3.712]],["name/1141",[151,44.896]],["parent/1141",[389,3.712]],["name/1142",[152,47.61]],["parent/1142",[389,3.712]],["name/1143",[69,48.543]],["parent/1143",[389,3.712]],["name/1144",[79,47.61]],["parent/1144",[389,3.712]],["name/1145",[80,47.61]],["parent/1145",[389,3.712]],["name/1146",[270,50.717]],["parent/1146",[389,3.712]],["name/1147",[271,50.128]],["parent/1147",[389,3.712]],["name/1148",[6,37.536]],["parent/1148",[389,3.712]],["name/1149",[7,41.005]],["parent/1149",[389,3.712]],["name/1150",[272,48.543]],["parent/1150",[389,3.712]],["name/1151",[273,50.128]],["parent/1151",[389,3.712]],["name/1152",[274,48.543]],["parent/1152",[389,3.712]],["name/1153",[275,50.717]],["parent/1153",[389,3.712]],["name/1154",[84,49.044]],["parent/1154",[389,3.712]],["name/1155",[276,49.571]],["parent/1155",[389,3.712]],["name/1156",[277,50.717]],["parent/1156",[389,3.712]],["name/1157",[278,50.717]],["parent/1157",[389,3.712]],["name/1158",[279,50.717]],["parent/1158",[389,3.712]],["name/1159",[280,48.065]],["parent/1159",[389,3.712]],["name/1160",[73,36.167]],["parent/1160",[389,3.712]],["name/1161",[281,50.717]],["parent/1161",[393,6.523]],["name/1162",[283,50.717]],["parent/1162",[393,6.523]],["name/1163",[105,50.128]],["parent/1163",[393,6.523]],["name/1164",[284,50.717]],["parent/1164",[389,3.712]],["name/1165",[285,49.571]],["parent/1165",[389,3.712]],["name/1166",[286,50.717]],["parent/1166",[389,3.712]],["name/1167",[287,50.717]],["parent/1167",[389,3.712]],["name/1168",[288,50.717]],["parent/1168",[389,3.712]],["name/1169",[289,50.717]],["parent/1169",[389,3.712]],["name/1170",[290,50.717]],["parent/1170",[389,3.712]],["name/1171",[291,50.128]],["parent/1171",[389,3.712]],["name/1172",[292,50.717]],["parent/1172",[389,3.712]],["name/1173",[293,50.717]],["parent/1173",[389,3.712]],["name/1174",[294,50.717]],["parent/1174",[389,3.712]],["name/1175",[295,50.717]],["parent/1175",[389,3.712]],["name/1176",[296,50.717]],["parent/1176",[389,3.712]],["name/1177",[297,50.717]],["parent/1177",[389,3.712]],["name/1178",[298,50.717]],["parent/1178",[389,3.712]],["name/1179",[299,50.717]],["parent/1179",[389,3.712]],["name/1180",[300,50.717]],["parent/1180",[389,3.712]],["name/1181",[301,50.128]],["parent/1181",[389,3.712]],["name/1182",[302,50.128]],["parent/1182",[389,3.712]],["name/1183",[303,50.128]],["parent/1183",[389,3.712]],["name/1184",[304,50.128]],["parent/1184",[389,3.712]],["name/1185",[305,50.128]],["parent/1185",[389,3.712]],["name/1186",[306,50.128]],["parent/1186",[389,3.712]],["name/1187",[307,50.128]],["parent/1187",[389,3.712]],["name/1188",[308,50.717]],["parent/1188",[389,3.712]],["name/1189",[309,50.717]],["parent/1189",[389,3.712]],["name/1190",[394,69.623]],["parent/1190",[]],["name/1191",[395,61.724]],["parent/1191",[394,6.855]],["name/1192",[2,36.456]],["parent/1192",[396,3.797]],["name/1193",[267,47.174]],["parent/1193",[396,3.797]],["name/1194",[156,47.174]],["parent/1194",[396,3.797]],["name/1195",[157,47.174]],["parent/1195",[396,3.797]],["name/1196",[158,48.065]],["parent/1196",[396,3.797]],["name/1197",[163,48.065]],["parent/1197",[396,3.797]],["name/1198",[268,51.344]],["parent/1198",[396,3.797]],["name/1199",[258,49.044]],["parent/1199",[396,3.797]],["name/1200",[269,48.065]],["parent/1200",[396,3.797]],["name/1201",[151,44.896]],["parent/1201",[396,3.797]],["name/1202",[152,47.61]],["parent/1202",[396,3.797]],["name/1203",[69,48.543]],["parent/1203",[396,3.797]],["name/1204",[79,47.61]],["parent/1204",[396,3.797]],["name/1205",[80,47.61]],["parent/1205",[396,3.797]],["name/1206",[270,50.717]],["parent/1206",[396,3.797]],["name/1207",[271,50.128]],["parent/1207",[396,3.797]],["name/1208",[6,37.536]],["parent/1208",[396,3.797]],["name/1209",[7,41.005]],["parent/1209",[396,3.797]],["name/1210",[272,48.543]],["parent/1210",[396,3.797]],["name/1211",[273,50.128]],["parent/1211",[396,3.797]],["name/1212",[274,48.543]],["parent/1212",[396,3.797]],["name/1213",[275,50.717]],["parent/1213",[396,3.797]],["name/1214",[84,49.044]],["parent/1214",[396,3.797]],["name/1215",[276,49.571]],["parent/1215",[396,3.797]],["name/1216",[277,50.717]],["parent/1216",[396,3.797]],["name/1217",[278,50.717]],["parent/1217",[396,3.797]],["name/1218",[279,50.717]],["parent/1218",[396,3.797]],["name/1219",[280,48.065]],["parent/1219",[396,3.797]],["name/1220",[73,36.167]],["parent/1220",[396,3.797]],["name/1221",[281,50.717]],["parent/1221",[397,6.523]],["name/1222",[283,50.717]],["parent/1222",[397,6.523]],["name/1223",[105,50.128]],["parent/1223",[397,6.523]],["name/1224",[284,50.717]],["parent/1224",[396,3.797]],["name/1225",[285,49.571]],["parent/1225",[396,3.797]],["name/1226",[286,50.717]],["parent/1226",[396,3.797]],["name/1227",[287,50.717]],["parent/1227",[396,3.797]],["name/1228",[288,50.717]],["parent/1228",[396,3.797]],["name/1229",[289,50.717]],["parent/1229",[396,3.797]],["name/1230",[290,50.717]],["parent/1230",[396,3.797]],["name/1231",[291,50.128]],["parent/1231",[396,3.797]],["name/1232",[292,50.717]],["parent/1232",[396,3.797]],["name/1233",[293,50.717]],["parent/1233",[396,3.797]],["name/1234",[294,50.717]],["parent/1234",[396,3.797]],["name/1235",[295,50.717]],["parent/1235",[396,3.797]],["name/1236",[296,50.717]],["parent/1236",[396,3.797]],["name/1237",[297,50.717]],["parent/1237",[396,3.797]],["name/1238",[298,50.717]],["parent/1238",[396,3.797]],["name/1239",[299,50.717]],["parent/1239",[396,3.797]],["name/1240",[300,50.717]],["parent/1240",[396,3.797]],["name/1241",[301,50.128]],["parent/1241",[396,3.797]],["name/1242",[302,50.128]],["parent/1242",[396,3.797]],["name/1243",[303,50.128]],["parent/1243",[396,3.797]],["name/1244",[304,50.128]],["parent/1244",[396,3.797]],["name/1245",[305,50.128]],["parent/1245",[396,3.797]],["name/1246",[306,50.128]],["parent/1246",[396,3.797]],["name/1247",[307,50.128]],["parent/1247",[396,3.797]],["name/1248",[308,50.717]],["parent/1248",[396,3.797]],["name/1249",[309,50.717]],["parent/1249",[396,3.797]],["name/1250",[398,69.623]],["parent/1250",[]],["name/1251",[188,58.617]],["parent/1251",[398,6.855]],["name/1252",[2,36.456]],["parent/1252",[399,4.88]],["name/1253",[132,63.734]],["parent/1253",[399,4.88]],["name/1254",[6,37.536]],["parent/1254",[399,4.88]],["name/1255",[400,66.252]],["parent/1255",[399,4.88]],["name/1256",[47,56.248]],["parent/1256",[399,4.88]],["name/1257",[48,58.617]],["parent/1257",[399,4.88]],["name/1258",[401,69.623]],["parent/1258",[399,4.88]],["name/1259",[402,74.741]],["parent/1259",[399,4.88]],["name/1260",[403,63.734]],["parent/1260",[399,4.88]],["name/1261",[404,74.741]],["parent/1261",[399,4.88]],["name/1262",[405,74.741]],["parent/1262",[399,4.88]],["name/1263",[406,66.252]],["parent/1263",[399,4.88]],["name/1264",[407,69.623]],["parent/1264",[399,4.88]],["name/1265",[127,63.734]],["parent/1265",[399,4.88]],["name/1266",[128,63.734]],["parent/1266",[399,4.88]],["name/1267",[408,74.741]],["parent/1267",[399,4.88]],["name/1268",[188,58.617]],["parent/1268",[399,4.88]],["name/1269",[409,66.252]],["parent/1269",[399,4.88]],["name/1270",[410,69.623]],["parent/1270",[]],["name/1271",[411,60.05]],["parent/1271",[410,6.855]],["name/1272",[2,36.456]],["parent/1272",[412,6.077]],["name/1273",[6,37.536]],["parent/1273",[412,6.077]],["name/1274",[7,41.005]],["parent/1274",[412,6.077]],["name/1275",[413,74.741]],["parent/1275",[412,6.077]],["name/1276",[414,74.741]],["parent/1276",[412,6.077]],["name/1277",[415,69.623]],["parent/1277",[]],["name/1278",[416,61.724]],["parent/1278",[415,6.855]],["name/1279",[2,36.456]],["parent/1279",[417,5.349]],["name/1280",[6,37.536]],["parent/1280",[417,5.349]],["name/1281",[7,41.005]],["parent/1281",[417,5.349]],["name/1282",[140,61.724]],["parent/1282",[417,5.349]],["name/1283",[418,69.623]],["parent/1283",[417,5.349]],["name/1284",[73,36.167]],["parent/1284",[417,5.349]],["name/1285",[419,74.741]],["parent/1285",[417,5.349]],["name/1286",[420,74.741]],["parent/1286",[417,5.349]],["name/1287",[421,74.741]],["parent/1287",[417,5.349]],["name/1288",[422,69.623]],["parent/1288",[417,5.349]],["name/1289",[423,69.623]],["parent/1289",[417,5.349]],["name/1290",[424,69.623]],["parent/1290",[]],["name/1291",[4,52.728]],["parent/1291",[424,6.855]],["name/1292",[2,36.456]],["parent/1292",[425,5.267]],["name/1293",[426,69.623]],["parent/1293",[425,5.267]],["name/1294",[427,63.734]],["parent/1294",[425,5.267]],["name/1295",[6,37.536]],["parent/1295",[425,5.267]],["name/1296",[7,41.005]],["parent/1296",[425,5.267]],["name/1297",[416,61.724]],["parent/1297",[425,5.267]],["name/1298",[428,74.741]],["parent/1298",[425,5.267]],["name/1299",[429,74.741]],["parent/1299",[425,5.267]],["name/1300",[430,74.741]],["parent/1300",[425,5.267]],["name/1301",[431,74.741]],["parent/1301",[425,5.267]],["name/1302",[432,69.623]],["parent/1302",[425,5.267]],["name/1303",[422,69.623]],["parent/1303",[425,5.267]],["name/1304",[433,69.623]],["parent/1304",[]],["name/1305",[434,66.252]],["parent/1305",[433,6.855]],["name/1306",[2,36.456]],["parent/1306",[435,5.771]],["name/1307",[182,56.248]],["parent/1307",[435,5.771]],["name/1308",[427,63.734]],["parent/1308",[435,5.771]],["name/1309",[6,37.536]],["parent/1309",[435,5.771]],["name/1310",[7,41.005]],["parent/1310",[435,5.771]],["name/1311",[436,61.724]],["parent/1311",[435,5.771]],["name/1312",[432,69.623]],["parent/1312",[435,5.771]],["name/1313",[437,69.623]],["parent/1313",[]],["name/1314",[436,61.724]],["parent/1314",[437,6.855]],["name/1315",[2,36.456]],["parent/1315",[438,5.538]],["name/1316",[6,37.536]],["parent/1316",[438,5.538]],["name/1317",[7,41.005]],["parent/1317",[438,5.538]],["name/1318",[140,61.724]],["parent/1318",[438,5.538]],["name/1319",[439,74.741]],["parent/1319",[438,5.538]],["name/1320",[73,36.167]],["parent/1320",[438,5.538]],["name/1321",[440,74.741]],["parent/1321",[438,5.538]],["name/1322",[441,74.741]],["parent/1322",[438,5.538]],["name/1323",[423,69.623]],["parent/1323",[438,5.538]],["name/1324",[442,69.623]],["parent/1324",[]],["name/1325",[443,74.741]],["parent/1325",[442,6.855]],["name/1326",[2,36.456]],["parent/1326",[444,6.275]],["name/1327",[6,37.536]],["parent/1327",[444,6.275]],["name/1328",[7,41.005]],["parent/1328",[444,6.275]],["name/1329",[445,66.252]],["parent/1329",[444,6.275]],["name/1330",[446,69.623]],["parent/1330",[]],["name/1331",[447,63.734]],["parent/1331",[446,6.855]],["name/1332",[2,36.456]],["parent/1332",[448,3.745]],["name/1333",[390,55.246]],["parent/1333",[448,3.745]],["name/1334",[449,74.741]],["parent/1334",[448,3.745]],["name/1335",[163,48.065]],["parent/1335",[448,3.745]],["name/1336",[450,74.741]],["parent/1336",[448,3.745]],["name/1337",[267,47.174]],["parent/1337",[448,3.745]],["name/1338",[156,47.174]],["parent/1338",[448,3.745]],["name/1339",[157,47.174]],["parent/1339",[448,3.745]],["name/1340",[158,48.065]],["parent/1340",[448,3.745]],["name/1341",[268,51.344]],["parent/1341",[448,3.745]],["name/1342",[258,49.044]],["parent/1342",[448,3.745]],["name/1343",[269,48.065]],["parent/1343",[448,3.745]],["name/1344",[151,44.896]],["parent/1344",[448,3.745]],["name/1345",[152,47.61]],["parent/1345",[448,3.745]],["name/1346",[69,48.543]],["parent/1346",[448,3.745]],["name/1347",[79,47.61]],["parent/1347",[448,3.745]],["name/1348",[80,47.61]],["parent/1348",[448,3.745]],["name/1349",[270,50.717]],["parent/1349",[448,3.745]],["name/1350",[271,50.128]],["parent/1350",[448,3.745]],["name/1351",[6,37.536]],["parent/1351",[448,3.745]],["name/1352",[7,41.005]],["parent/1352",[448,3.745]],["name/1353",[272,48.543]],["parent/1353",[448,3.745]],["name/1354",[273,50.128]],["parent/1354",[448,3.745]],["name/1355",[274,48.543]],["parent/1355",[448,3.745]],["name/1356",[275,50.717]],["parent/1356",[448,3.745]],["name/1357",[84,49.044]],["parent/1357",[448,3.745]],["name/1358",[276,49.571]],["parent/1358",[448,3.745]],["name/1359",[277,50.717]],["parent/1359",[448,3.745]],["name/1360",[278,50.717]],["parent/1360",[448,3.745]],["name/1361",[279,50.717]],["parent/1361",[448,3.745]],["name/1362",[280,48.065]],["parent/1362",[448,3.745]],["name/1363",[73,36.167]],["parent/1363",[448,3.745]],["name/1364",[281,50.717]],["parent/1364",[451,6.523]],["name/1365",[283,50.717]],["parent/1365",[451,6.523]],["name/1366",[105,50.128]],["parent/1366",[451,6.523]],["name/1367",[284,50.717]],["parent/1367",[448,3.745]],["name/1368",[285,49.571]],["parent/1368",[448,3.745]],["name/1369",[286,50.717]],["parent/1369",[448,3.745]],["name/1370",[287,50.717]],["parent/1370",[448,3.745]],["name/1371",[288,50.717]],["parent/1371",[448,3.745]],["name/1372",[289,50.717]],["parent/1372",[448,3.745]],["name/1373",[290,50.717]],["parent/1373",[448,3.745]],["name/1374",[291,50.128]],["parent/1374",[448,3.745]],["name/1375",[292,50.717]],["parent/1375",[448,3.745]],["name/1376",[293,50.717]],["parent/1376",[448,3.745]],["name/1377",[294,50.717]],["parent/1377",[448,3.745]],["name/1378",[295,50.717]],["parent/1378",[448,3.745]],["name/1379",[296,50.717]],["parent/1379",[448,3.745]],["name/1380",[297,50.717]],["parent/1380",[448,3.745]],["name/1381",[298,50.717]],["parent/1381",[448,3.745]],["name/1382",[299,50.717]],["parent/1382",[448,3.745]],["name/1383",[300,50.717]],["parent/1383",[448,3.745]],["name/1384",[301,50.128]],["parent/1384",[448,3.745]],["name/1385",[302,50.128]],["parent/1385",[448,3.745]],["name/1386",[303,50.128]],["parent/1386",[448,3.745]],["name/1387",[304,50.128]],["parent/1387",[448,3.745]],["name/1388",[305,50.128]],["parent/1388",[448,3.745]],["name/1389",[306,50.128]],["parent/1389",[448,3.745]],["name/1390",[307,50.128]],["parent/1390",[448,3.745]],["name/1391",[308,50.717]],["parent/1391",[448,3.745]],["name/1392",[309,50.717]],["parent/1392",[448,3.745]],["name/1393",[452,69.623]],["parent/1393",[]],["name/1394",[453,60.05]],["parent/1394",[452,6.855]],["name/1395",[2,36.456]],["parent/1395",[454,4.732]],["name/1396",[6,37.536]],["parent/1396",[454,4.732]],["name/1397",[7,41.005]],["parent/1397",[454,4.732]],["name/1398",[455,74.741]],["parent/1398",[454,4.732]],["name/1399",[456,74.741]],["parent/1399",[454,4.732]],["name/1400",[457,74.741]],["parent/1400",[454,4.732]],["name/1401",[458,74.741]],["parent/1401",[454,4.732]],["name/1402",[459,74.741]],["parent/1402",[454,4.732]],["name/1403",[460,74.741]],["parent/1403",[454,4.732]],["name/1404",[461,74.741]],["parent/1404",[454,4.732]],["name/1405",[462,74.741]],["parent/1405",[454,4.732]],["name/1406",[463,74.741]],["parent/1406",[454,4.732]],["name/1407",[464,74.741]],["parent/1407",[454,4.732]],["name/1408",[465,74.741]],["parent/1408",[454,4.732]],["name/1409",[466,74.741]],["parent/1409",[454,4.732]],["name/1410",[467,74.741]],["parent/1410",[454,4.732]],["name/1411",[468,74.741]],["parent/1411",[454,4.732]],["name/1412",[469,74.741]],["parent/1412",[454,4.732]],["name/1413",[470,74.741]],["parent/1413",[454,4.732]],["name/1414",[471,74.741]],["parent/1414",[454,4.732]],["name/1415",[472,74.741]],["parent/1415",[454,4.732]],["name/1416",[473,69.623]],["parent/1416",[]],["name/1417",[474,57.363]],["parent/1417",[473,6.855]],["name/1418",[2,36.456]],["parent/1418",[475,5.349]],["name/1419",[151,44.896]],["parent/1419",[475,5.349]],["name/1420",[152,47.61]],["parent/1420",[475,5.349]],["name/1421",[476,69.623]],["parent/1421",[475,5.349]],["name/1422",[477,69.623]],["parent/1422",[475,5.349]],["name/1423",[6,37.536]],["parent/1423",[475,5.349]],["name/1424",[7,41.005]],["parent/1424",[475,5.349]],["name/1425",[156,47.174]],["parent/1425",[475,5.349]],["name/1426",[157,47.174]],["parent/1426",[475,5.349]],["name/1427",[158,48.065]],["parent/1427",[475,5.349]],["name/1428",[163,48.065]],["parent/1428",[475,5.349]],["name/1429",[478,69.623]],["parent/1429",[]],["name/1430",[479,74.741]],["parent/1430",[478,6.855]],["name/1431",[2,36.456]],["parent/1431",[480,6.077]],["name/1432",[151,44.896]],["parent/1432",[480,6.077]],["name/1433",[69,48.543]],["parent/1433",[480,6.077]],["name/1434",[79,47.61]],["parent/1434",[480,6.077]],["name/1435",[80,47.61]],["parent/1435",[480,6.077]],["name/1436",[481,69.623]],["parent/1436",[]],["name/1437",[482,69.623]],["parent/1437",[481,6.855]],["name/1438",[2,36.456]],["parent/1438",[483,5.771]],["name/1439",[484,66.252]],["parent/1439",[483,5.771]],["name/1440",[474,57.363]],["parent/1440",[483,5.771]],["name/1441",[6,37.536]],["parent/1441",[483,5.771]],["name/1442",[7,41.005]],["parent/1442",[483,5.771]],["name/1443",[157,47.174]],["parent/1443",[483,5.771]],["name/1444",[156,47.174]],["parent/1444",[483,5.771]],["name/1445",[485,69.623]],["parent/1445",[]],["name/1446",[486,61.724]],["parent/1446",[485,6.855]],["name/1447",[2,36.456]],["parent/1447",[487,5.267]],["name/1448",[163,48.065]],["parent/1448",[487,5.267]],["name/1449",[488,74.741]],["parent/1449",[487,5.267]],["name/1450",[151,44.896]],["parent/1450",[487,5.267]],["name/1451",[152,47.61]],["parent/1451",[487,5.267]],["name/1452",[476,69.623]],["parent/1452",[487,5.267]],["name/1453",[477,69.623]],["parent/1453",[487,5.267]],["name/1454",[6,37.536]],["parent/1454",[487,5.267]],["name/1455",[7,41.005]],["parent/1455",[487,5.267]],["name/1456",[156,47.174]],["parent/1456",[487,5.267]],["name/1457",[157,47.174]],["parent/1457",[487,5.267]],["name/1458",[158,48.065]],["parent/1458",[487,5.267]],["name/1459",[489,69.623]],["parent/1459",[]],["name/1460",[484,66.252]],["parent/1460",[489,6.855]],["name/1461",[2,36.456]],["parent/1461",[490,5.267]],["name/1462",[267,47.174]],["parent/1462",[490,5.267]],["name/1463",[491,74.741]],["parent/1463",[490,5.267]],["name/1464",[492,74.741]],["parent/1464",[490,5.267]],["name/1465",[493,69.623]],["parent/1465",[490,5.267]],["name/1466",[494,69.623]],["parent/1466",[490,5.267]],["name/1467",[6,37.536]],["parent/1467",[490,5.267]],["name/1468",[7,41.005]],["parent/1468",[490,5.267]],["name/1469",[495,74.741]],["parent/1469",[490,5.267]],["name/1470",[496,74.741]],["parent/1470",[490,5.267]],["name/1471",[497,74.741]],["parent/1471",[490,5.267]],["name/1472",[498,74.741]],["parent/1472",[490,5.267]],["name/1473",[499,69.623]],["parent/1473",[]],["name/1474",[500,66.252]],["parent/1474",[499,6.855]],["name/1475",[501,69.623]],["parent/1475",[]],["name/1476",[502,69.623]],["parent/1476",[501,6.855]],["name/1477",[503,69.623]],["parent/1477",[]],["name/1478",[504,69.623]],["parent/1478",[503,6.855]],["name/1479",[505,69.623]],["parent/1479",[]],["name/1480",[506,69.623]],["parent/1480",[505,6.855]],["name/1481",[507,69.623]],["parent/1481",[]],["name/1482",[508,66.252]],["parent/1482",[507,6.855]],["name/1483",[509,74.741]],["parent/1483",[510,3.833]],["name/1484",[511,74.741]],["parent/1484",[510,3.833]],["name/1485",[512,74.741]],["parent/1485",[510,3.833]],["name/1486",[74,69.623]],["parent/1486",[510,3.833]],["name/1487",[76,69.623]],["parent/1487",[510,3.833]],["name/1488",[344,69.623]],["parent/1488",[510,3.833]],["name/1489",[513,74.741]],["parent/1489",[510,3.833]],["name/1490",[514,74.741]],["parent/1490",[510,3.833]],["name/1491",[515,74.741]],["parent/1491",[510,3.833]],["name/1492",[2,36.456]],["parent/1492",[510,3.833]],["name/1493",[516,52.728]],["parent/1493",[510,3.833]],["name/1494",[517,53.499]],["parent/1494",[510,3.833]],["name/1495",[518,74.741]],["parent/1495",[510,3.833]],["name/1496",[519,74.741]],["parent/1496",[510,3.833]],["name/1497",[47,56.248]],["parent/1497",[510,3.833]],["name/1498",[520,74.741]],["parent/1498",[510,3.833]],["name/1499",[521,74.741]],["parent/1499",[510,3.833]],["name/1500",[522,74.741]],["parent/1500",[510,3.833]],["name/1501",[523,69.623]],["parent/1501",[510,3.833]],["name/1502",[524,74.741]],["parent/1502",[510,3.833]],["name/1503",[525,74.741]],["parent/1503",[510,3.833]],["name/1504",[526,74.741]],["parent/1504",[510,3.833]],["name/1505",[527,74.741]],["parent/1505",[510,3.833]],["name/1506",[528,74.741]],["parent/1506",[510,3.833]],["name/1507",[529,74.741]],["parent/1507",[510,3.833]],["name/1508",[530,74.741]],["parent/1508",[510,3.833]],["name/1509",[531,74.741]],["parent/1509",[510,3.833]],["name/1510",[532,74.741]],["parent/1510",[510,3.833]],["name/1511",[533,74.741]],["parent/1511",[510,3.833]],["name/1512",[534,74.741]],["parent/1512",[510,3.833]],["name/1513",[535,74.741]],["parent/1513",[510,3.833]],["name/1514",[536,74.741]],["parent/1514",[510,3.833]],["name/1515",[537,74.741]],["parent/1515",[510,3.833]],["name/1516",[538,74.741]],["parent/1516",[510,3.833]],["name/1517",[539,74.741]],["parent/1517",[510,3.833]],["name/1518",[540,74.741]],["parent/1518",[510,3.833]],["name/1519",[81,53.499]],["parent/1519",[510,3.833]],["name/1520",[541,74.741]],["parent/1520",[510,3.833]],["name/1521",[542,74.741]],["parent/1521",[510,3.833]],["name/1522",[543,74.741]],["parent/1522",[510,3.833]],["name/1523",[544,74.741]],["parent/1523",[510,3.833]],["name/1524",[545,74.741]],["parent/1524",[510,3.833]],["name/1525",[546,74.741]],["parent/1525",[510,3.833]],["name/1526",[547,66.252]],["parent/1526",[510,3.833]],["name/1527",[548,74.741]],["parent/1527",[510,3.833]],["name/1528",[549,74.741]],["parent/1528",[510,3.833]],["name/1529",[550,74.741]],["parent/1529",[510,3.833]],["name/1530",[500,66.252]],["parent/1530",[510,3.833]],["name/1531",[551,74.741]],["parent/1531",[510,3.833]],["name/1532",[552,74.741]],["parent/1532",[510,3.833]],["name/1533",[553,74.741]],["parent/1533",[510,3.833]],["name/1534",[554,74.741]],["parent/1534",[510,3.833]],["name/1535",[555,74.741]],["parent/1535",[510,3.833]],["name/1536",[556,69.623]],["parent/1536",[]],["name/1537",[253,63.734]],["parent/1537",[556,6.855]],["name/1538",[2,36.456]],["parent/1538",[557,5.771]],["name/1539",[558,74.741]],["parent/1539",[557,5.771]],["name/1540",[73,36.167]],["parent/1540",[557,5.771]],["name/1541",[559,74.741]],["parent/1541",[557,5.771]],["name/1542",[560,74.741]],["parent/1542",[557,5.771]],["name/1543",[561,74.741]],["parent/1543",[557,5.771]],["name/1544",[401,69.623]],["parent/1544",[557,5.771]],["name/1545",[562,69.623]],["parent/1545",[]],["name/1546",[563,63.734]],["parent/1546",[562,6.855]],["name/1547",[2,36.456]],["parent/1547",[564,5.349]],["name/1548",[6,37.536]],["parent/1548",[564,5.349]],["name/1549",[340,66.252]],["parent/1549",[564,5.349]],["name/1550",[47,56.248]],["parent/1550",[564,5.349]],["name/1551",[48,58.617]],["parent/1551",[564,5.349]],["name/1552",[565,74.741]],["parent/1552",[564,5.349]],["name/1553",[566,74.741]],["parent/1553",[564,5.349]],["name/1554",[403,63.734]],["parent/1554",[564,5.349]],["name/1555",[406,66.252]],["parent/1555",[564,5.349]],["name/1556",[409,66.252]],["parent/1556",[564,5.349]],["name/1557",[567,69.623]],["parent/1557",[564,5.349]],["name/1558",[568,69.623]],["parent/1558",[]],["name/1559",[569,63.734]],["parent/1559",[568,6.855]],["name/1560",[2,36.456]],["parent/1560",[570,5.538]],["name/1561",[340,66.252]],["parent/1561",[570,5.538]],["name/1562",[47,56.248]],["parent/1562",[570,5.538]],["name/1563",[48,58.617]],["parent/1563",[570,5.538]],["name/1564",[403,63.734]],["parent/1564",[570,5.538]],["name/1565",[571,74.741]],["parent/1565",[570,5.538]],["name/1566",[406,66.252]],["parent/1566",[570,5.538]],["name/1567",[409,66.252]],["parent/1567",[570,5.538]],["name/1568",[567,69.623]],["parent/1568",[570,5.538]],["name/1569",[572,69.623]],["parent/1569",[]],["name/1570",[573,63.734]],["parent/1570",[572,6.855]],["name/1571",[2,36.456]],["parent/1571",[574,3.815]],["name/1572",[575,74.741]],["parent/1572",[574,3.815]],["name/1573",[576,74.741]],["parent/1573",[574,3.815]],["name/1574",[577,74.741]],["parent/1574",[574,3.815]],["name/1575",[578,74.741]],["parent/1575",[574,3.815]],["name/1576",[285,49.571]],["parent/1576",[574,3.815]],["name/1577",[579,74.741]],["parent/1577",[574,3.815]],["name/1578",[580,74.741]],["parent/1578",[574,3.815]],["name/1579",[581,74.741]],["parent/1579",[574,3.815]],["name/1580",[151,44.896]],["parent/1580",[574,3.815]],["name/1581",[152,47.61]],["parent/1581",[574,3.815]],["name/1582",[69,48.543]],["parent/1582",[574,3.815]],["name/1583",[79,47.61]],["parent/1583",[574,3.815]],["name/1584",[80,47.61]],["parent/1584",[574,3.815]],["name/1585",[270,50.717]],["parent/1585",[574,3.815]],["name/1586",[271,50.128]],["parent/1586",[574,3.815]],["name/1587",[6,37.536]],["parent/1587",[574,3.815]],["name/1588",[7,41.005]],["parent/1588",[574,3.815]],["name/1589",[272,48.543]],["parent/1589",[574,3.815]],["name/1590",[273,50.128]],["parent/1590",[574,3.815]],["name/1591",[274,48.543]],["parent/1591",[574,3.815]],["name/1592",[275,50.717]],["parent/1592",[574,3.815]],["name/1593",[84,49.044]],["parent/1593",[574,3.815]],["name/1594",[276,49.571]],["parent/1594",[574,3.815]],["name/1595",[277,50.717]],["parent/1595",[574,3.815]],["name/1596",[278,50.717]],["parent/1596",[574,3.815]],["name/1597",[279,50.717]],["parent/1597",[574,3.815]],["name/1598",[280,48.065]],["parent/1598",[574,3.815]],["name/1599",[73,36.167]],["parent/1599",[574,3.815]],["name/1600",[281,50.717]],["parent/1600",[582,6.523]],["name/1601",[283,50.717]],["parent/1601",[582,6.523]],["name/1602",[105,50.128]],["parent/1602",[582,6.523]],["name/1603",[284,50.717]],["parent/1603",[574,3.815]],["name/1604",[286,50.717]],["parent/1604",[574,3.815]],["name/1605",[287,50.717]],["parent/1605",[574,3.815]],["name/1606",[288,50.717]],["parent/1606",[574,3.815]],["name/1607",[289,50.717]],["parent/1607",[574,3.815]],["name/1608",[290,50.717]],["parent/1608",[574,3.815]],["name/1609",[291,50.128]],["parent/1609",[574,3.815]],["name/1610",[292,50.717]],["parent/1610",[574,3.815]],["name/1611",[293,50.717]],["parent/1611",[574,3.815]],["name/1612",[294,50.717]],["parent/1612",[574,3.815]],["name/1613",[295,50.717]],["parent/1613",[574,3.815]],["name/1614",[296,50.717]],["parent/1614",[574,3.815]],["name/1615",[297,50.717]],["parent/1615",[574,3.815]],["name/1616",[298,50.717]],["parent/1616",[574,3.815]],["name/1617",[299,50.717]],["parent/1617",[574,3.815]],["name/1618",[300,50.717]],["parent/1618",[574,3.815]],["name/1619",[301,50.128]],["parent/1619",[574,3.815]],["name/1620",[302,50.128]],["parent/1620",[574,3.815]],["name/1621",[303,50.128]],["parent/1621",[574,3.815]],["name/1622",[304,50.128]],["parent/1622",[574,3.815]],["name/1623",[305,50.128]],["parent/1623",[574,3.815]],["name/1624",[306,50.128]],["parent/1624",[574,3.815]],["name/1625",[307,50.128]],["parent/1625",[574,3.815]],["name/1626",[308,50.717]],["parent/1626",[574,3.815]],["name/1627",[309,50.717]],["parent/1627",[574,3.815]],["name/1628",[583,69.623]],["parent/1628",[]],["name/1629",[272,48.543]],["parent/1629",[583,6.855]],["name/1630",[2,36.456]],["parent/1630",[584,5.912]],["name/1631",[274,48.543]],["parent/1631",[584,5.912]],["name/1632",[273,50.128]],["parent/1632",[584,5.912]],["name/1633",[6,37.536]],["parent/1633",[584,5.912]],["name/1634",[285,49.571]],["parent/1634",[584,5.912]],["name/1635",[585,74.741]],["parent/1635",[584,5.912]],["name/1636",[586,69.623]],["parent/1636",[]],["name/1637",[274,48.543]],["parent/1637",[586,6.855]],["name/1638",[2,36.456]],["parent/1638",[587,4.387]],["name/1639",[151,44.896]],["parent/1639",[587,4.387]],["name/1640",[69,48.543]],["parent/1640",[587,4.387]],["name/1641",[588,69.623]],["parent/1641",[587,4.387]],["name/1642",[79,47.61]],["parent/1642",[587,4.387]],["name/1643",[80,47.61]],["parent/1643",[587,4.387]],["name/1644",[6,37.536]],["parent/1644",[587,4.387]],["name/1645",[7,41.005]],["parent/1645",[587,4.387]],["name/1646",[589,74.741]],["parent/1646",[587,4.387]],["name/1647",[590,74.741]],["parent/1647",[587,4.387]],["name/1648",[156,47.174]],["parent/1648",[587,4.387]],["name/1649",[157,47.174]],["parent/1649",[587,4.387]],["name/1650",[158,48.065]],["parent/1650",[587,4.387]],["name/1651",[591,74.741]],["parent/1651",[587,4.387]],["name/1652",[163,48.065]],["parent/1652",[587,4.387]],["name/1653",[285,49.571]],["parent/1653",[587,4.387]],["name/1654",[592,74.741]],["parent/1654",[587,4.387]],["name/1655",[81,53.499]],["parent/1655",[587,4.387]],["name/1656",[593,74.741]],["parent/1656",[587,4.387]],["name/1657",[594,74.741]],["parent/1657",[587,4.387]],["name/1658",[595,74.741]],["parent/1658",[587,4.387]],["name/1659",[596,74.741]],["parent/1659",[587,4.387]],["name/1660",[597,74.741]],["parent/1660",[587,4.387]],["name/1661",[301,50.128]],["parent/1661",[587,4.387]],["name/1662",[302,50.128]],["parent/1662",[587,4.387]],["name/1663",[303,50.128]],["parent/1663",[587,4.387]],["name/1664",[304,50.128]],["parent/1664",[587,4.387]],["name/1665",[305,50.128]],["parent/1665",[587,4.387]],["name/1666",[306,50.128]],["parent/1666",[587,4.387]],["name/1667",[307,50.128]],["parent/1667",[587,4.387]],["name/1668",[598,69.623]],["parent/1668",[]],["name/1669",[599,63.734]],["parent/1669",[598,6.855]],["name/1670",[2,36.456]],["parent/1670",[600,3.95]],["name/1671",[151,44.896]],["parent/1671",[600,3.95]],["name/1672",[152,47.61]],["parent/1672",[600,3.95]],["name/1673",[69,48.543]],["parent/1673",[600,3.95]],["name/1674",[79,47.61]],["parent/1674",[600,3.95]],["name/1675",[80,47.61]],["parent/1675",[600,3.95]],["name/1676",[270,50.717]],["parent/1676",[600,3.95]],["name/1677",[271,50.128]],["parent/1677",[600,3.95]],["name/1678",[6,37.536]],["parent/1678",[600,3.95]],["name/1679",[7,41.005]],["parent/1679",[600,3.95]],["name/1680",[272,48.543]],["parent/1680",[600,3.95]],["name/1681",[273,50.128]],["parent/1681",[600,3.95]],["name/1682",[274,48.543]],["parent/1682",[600,3.95]],["name/1683",[275,50.717]],["parent/1683",[600,3.95]],["name/1684",[84,49.044]],["parent/1684",[600,3.95]],["name/1685",[276,49.571]],["parent/1685",[600,3.95]],["name/1686",[277,50.717]],["parent/1686",[600,3.95]],["name/1687",[278,50.717]],["parent/1687",[600,3.95]],["name/1688",[279,50.717]],["parent/1688",[600,3.95]],["name/1689",[280,48.065]],["parent/1689",[600,3.95]],["name/1690",[73,36.167]],["parent/1690",[600,3.95]],["name/1691",[281,50.717]],["parent/1691",[601,6.523]],["name/1692",[283,50.717]],["parent/1692",[601,6.523]],["name/1693",[105,50.128]],["parent/1693",[601,6.523]],["name/1694",[284,50.717]],["parent/1694",[600,3.95]],["name/1695",[285,49.571]],["parent/1695",[600,3.95]],["name/1696",[286,50.717]],["parent/1696",[600,3.95]],["name/1697",[287,50.717]],["parent/1697",[600,3.95]],["name/1698",[288,50.717]],["parent/1698",[600,3.95]],["name/1699",[289,50.717]],["parent/1699",[600,3.95]],["name/1700",[290,50.717]],["parent/1700",[600,3.95]],["name/1701",[291,50.128]],["parent/1701",[600,3.95]],["name/1702",[292,50.717]],["parent/1702",[600,3.95]],["name/1703",[293,50.717]],["parent/1703",[600,3.95]],["name/1704",[294,50.717]],["parent/1704",[600,3.95]],["name/1705",[295,50.717]],["parent/1705",[600,3.95]],["name/1706",[296,50.717]],["parent/1706",[600,3.95]],["name/1707",[297,50.717]],["parent/1707",[600,3.95]],["name/1708",[298,50.717]],["parent/1708",[600,3.95]],["name/1709",[299,50.717]],["parent/1709",[600,3.95]],["name/1710",[300,50.717]],["parent/1710",[600,3.95]],["name/1711",[301,50.128]],["parent/1711",[600,3.95]],["name/1712",[302,50.128]],["parent/1712",[600,3.95]],["name/1713",[303,50.128]],["parent/1713",[600,3.95]],["name/1714",[304,50.128]],["parent/1714",[600,3.95]],["name/1715",[305,50.128]],["parent/1715",[600,3.95]],["name/1716",[306,50.128]],["parent/1716",[600,3.95]],["name/1717",[307,50.128]],["parent/1717",[600,3.95]],["name/1718",[308,50.717]],["parent/1718",[600,3.95]],["name/1719",[309,50.717]],["parent/1719",[600,3.95]],["name/1720",[602,69.623]],["parent/1720",[]],["name/1721",[603,63.734]],["parent/1721",[602,6.855]],["name/1722",[2,36.456]],["parent/1722",[604,6.275]],["name/1723",[6,37.536]],["parent/1723",[604,6.275]],["name/1724",[7,41.005]],["parent/1724",[604,6.275]],["name/1725",[445,66.252]],["parent/1725",[604,6.275]],["name/1726",[605,69.623]],["parent/1726",[]],["name/1727",[606,74.741]],["parent/1727",[605,6.855]],["name/1728",[607,69.623]],["parent/1728",[]],["name/1729",[608,74.741]],["parent/1729",[607,6.855]],["name/1730",[609,69.623]],["parent/1730",[]],["name/1731",[610,69.623]],["parent/1731",[609,6.855]],["name/1732",[611,69.623]],["parent/1732",[]],["name/1733",[612,74.741]],["parent/1733",[611,6.855]],["name/1734",[2,36.456]],["parent/1734",[613,4.779]],["name/1735",[6,37.536]],["parent/1735",[613,4.779]],["name/1736",[614,69.623]],["parent/1736",[613,4.779]],["name/1737",[615,69.623]],["parent/1737",[613,4.779]],["name/1738",[616,69.623]],["parent/1738",[613,4.779]],["name/1739",[617,69.623]],["parent/1739",[613,4.779]],["name/1740",[618,69.623]],["parent/1740",[613,4.779]],["name/1741",[619,69.623]],["parent/1741",[613,4.779]],["name/1742",[620,69.623]],["parent/1742",[613,4.779]],["name/1743",[81,53.499]],["parent/1743",[613,4.779]],["name/1744",[547,66.252]],["parent/1744",[613,4.779]],["name/1745",[621,69.623]],["parent/1745",[613,4.779]],["name/1746",[622,69.623]],["parent/1746",[613,4.779]],["name/1747",[623,69.623]],["parent/1747",[613,4.779]],["name/1748",[624,69.623]],["parent/1748",[613,4.779]],["name/1749",[625,69.623]],["parent/1749",[613,4.779]],["name/1750",[269,48.065]],["parent/1750",[613,4.779]],["name/1751",[626,69.623]],["parent/1751",[613,4.779]],["name/1752",[627,69.623]],["parent/1752",[613,4.779]],["name/1753",[628,69.623]],["parent/1753",[613,4.779]],["name/1754",[629,69.623]],["parent/1754",[]],["name/1755",[630,74.741]],["parent/1755",[629,6.855]],["name/1756",[2,36.456]],["parent/1756",[631,4.603]],["name/1757",[632,74.741]],["parent/1757",[631,4.603]],["name/1758",[633,74.741]],["parent/1758",[631,4.603]],["name/1759",[634,66.252]],["parent/1759",[631,4.603]],["name/1760",[619,69.623]],["parent/1760",[631,4.603]],["name/1761",[620,69.623]],["parent/1761",[631,4.603]],["name/1762",[547,66.252]],["parent/1762",[631,4.603]],["name/1763",[621,69.623]],["parent/1763",[631,4.603]],["name/1764",[81,53.499]],["parent/1764",[631,4.603]],["name/1765",[622,69.623]],["parent/1765",[631,4.603]],["name/1766",[623,69.623]],["parent/1766",[631,4.603]],["name/1767",[269,48.065]],["parent/1767",[631,4.603]],["name/1768",[626,69.623]],["parent/1768",[631,4.603]],["name/1769",[627,69.623]],["parent/1769",[631,4.603]],["name/1770",[624,69.623]],["parent/1770",[631,4.603]],["name/1771",[625,69.623]],["parent/1771",[631,4.603]],["name/1772",[614,69.623]],["parent/1772",[631,4.603]],["name/1773",[635,74.741]],["parent/1773",[631,4.603]],["name/1774",[615,69.623]],["parent/1774",[631,4.603]],["name/1775",[616,69.623]],["parent/1775",[631,4.603]],["name/1776",[617,69.623]],["parent/1776",[631,4.603]],["name/1777",[618,69.623]],["parent/1777",[631,4.603]],["name/1778",[628,69.623]],["parent/1778",[631,4.603]],["name/1779",[6,37.536]],["parent/1779",[631,4.603]],["name/1780",[636,69.623]],["parent/1780",[]],["name/1781",[637,74.741]],["parent/1781",[636,6.855]],["name/1782",[73,36.167]],["parent/1782",[638,7.359]],["name/1783",[639,45.267,640,49.449]],["parent/1783",[641,4.526]],["name/1784",[639,45.267,642,49.449]],["parent/1784",[641,4.526]],["name/1785",[639,45.267,643,49.449]],["parent/1785",[641,4.526]],["name/1786",[639,45.267,644,49.449]],["parent/1786",[641,4.526]],["name/1787",[640,49.449,645,45.267]],["parent/1787",[641,4.526]],["name/1788",[642,49.449,645,45.267]],["parent/1788",[641,4.526]],["name/1789",[643,49.449,645,45.267]],["parent/1789",[641,4.526]],["name/1790",[644,49.449,645,45.267]],["parent/1790",[641,4.526]],["name/1791",[646,74.741]],["parent/1791",[641,4.526]],["name/1792",[647,74.741]],["parent/1792",[641,4.526]],["name/1793",[648,74.741]],["parent/1793",[641,4.526]],["name/1794",[523,69.623]],["parent/1794",[641,4.526]],["name/1795",[649,74.741]],["parent/1795",[641,4.526]],["name/1796",[650,74.741]],["parent/1796",[641,4.526]],["name/1797",[651,74.741]],["parent/1797",[641,4.526]],["name/1798",[652,74.741]],["parent/1798",[641,4.526]],["name/1799",[390,39.237,653,53.084]],["parent/1799",[641,4.526]],["name/1800",[390,39.237,654,53.084]],["parent/1800",[641,4.526]],["name/1801",[655,53.084,656,47.055]],["parent/1801",[641,4.526]],["name/1802",[656,47.055,657,53.084]],["parent/1802",[641,4.526]],["name/1803",[658,74.741]],["parent/1803",[641,4.526]],["name/1804",[659,74.741]],["parent/1804",[641,4.526]],["name/1805",[660,74.741]],["parent/1805",[641,4.526]],["name/1806",[661,74.741]],["parent/1806",[641,4.526]],["name/1807",[390,55.246]],["parent/1807",[641,4.526]],["name/1808",[662,74.741]],["parent/1808",[641,4.526]],["name/1809",[663,69.623]],["parent/1809",[]],["name/1810",[664,69.623]],["parent/1810",[663,6.855]],["name/1811",[2,36.456]],["parent/1811",[665,5.648]],["name/1812",[6,37.536]],["parent/1812",[665,5.648]],["name/1813",[666,74.741]],["parent/1813",[665,5.648]],["name/1814",[667,69.623]],["parent/1814",[665,5.648]],["name/1815",[668,74.741]],["parent/1815",[665,5.648]],["name/1816",[669,74.741]],["parent/1816",[665,5.648]],["name/1817",[670,74.741]],["parent/1817",[665,5.648]],["name/1818",[671,74.741]],["parent/1818",[665,5.648]],["name/1819",[672,69.623]],["parent/1819",[]],["name/1820",[390,55.246]],["parent/1820",[672,6.855]],["name/1821",[673,74.741]],["parent/1821",[674,4.526]],["name/1822",[675,74.741]],["parent/1822",[674,4.526]],["name/1823",[676,74.741]],["parent/1823",[674,4.526]],["name/1824",[677,74.741]],["parent/1824",[674,4.526]],["name/1825",[678,74.741]],["parent/1825",[674,4.526]],["name/1826",[679,74.741]],["parent/1826",[674,4.526]],["name/1827",[680,74.741]],["parent/1827",[674,4.526]],["name/1828",[681,74.741]],["parent/1828",[674,4.526]],["name/1829",[682,74.741]],["parent/1829",[674,4.526]],["name/1830",[683,74.741]],["parent/1830",[674,4.526]],["name/1831",[684,74.741]],["parent/1831",[674,4.526]],["name/1832",[685,74.741]],["parent/1832",[674,4.526]],["name/1833",[686,74.741]],["parent/1833",[674,4.526]],["name/1834",[687,74.741]],["parent/1834",[674,4.526]],["name/1835",[688,74.741]],["parent/1835",[674,4.526]],["name/1836",[689,74.741]],["parent/1836",[674,4.526]],["name/1837",[690,74.741]],["parent/1837",[674,4.526]],["name/1838",[691,74.741]],["parent/1838",[674,4.526]],["name/1839",[692,74.741]],["parent/1839",[674,4.526]],["name/1840",[693,74.741]],["parent/1840",[674,4.526]],["name/1841",[694,74.741]],["parent/1841",[674,4.526]],["name/1842",[695,74.741]],["parent/1842",[674,4.526]],["name/1843",[2,36.456]],["parent/1843",[674,4.526]],["name/1844",[696,66.252]],["parent/1844",[674,4.526]],["name/1845",[697,74.741]],["parent/1845",[674,4.526]],["name/1846",[698,69.623]],["parent/1846",[674,4.526]],["name/1847",[699,69.623]],["parent/1847",[]],["name/1848",[7,41.005]],["parent/1848",[699,6.855]],["name/1849",[2,36.456]],["parent/1849",[700,4.454]],["name/1850",[4,52.728]],["parent/1850",[700,4.454]],["name/1851",[156,47.174]],["parent/1851",[700,4.454]],["name/1852",[701,74.741]],["parent/1852",[700,4.454]],["name/1853",[6,37.536]],["parent/1853",[700,4.454]],["name/1854",[702,74.741]],["parent/1854",[700,4.454]],["name/1855",[703,66.252]],["parent/1855",[700,4.454]],["name/1856",[704,66.252]],["parent/1856",[700,4.454]],["name/1857",[563,63.734]],["parent/1857",[700,4.454]],["name/1858",[569,63.734]],["parent/1858",[700,4.454]],["name/1859",[453,60.05]],["parent/1859",[700,4.454]],["name/1860",[603,63.734]],["parent/1860",[700,4.454]],["name/1861",[705,74.741]],["parent/1861",[700,4.454]],["name/1862",[73,36.167]],["parent/1862",[700,4.454]],["name/1863",[706,74.741]],["parent/1863",[700,4.454]],["name/1864",[73,36.167]],["parent/1864",[700,4.454]],["name/1865",[47,56.248]],["parent/1865",[700,4.454]],["name/1866",[73,36.167]],["parent/1866",[700,4.454]],["name/1867",[390,55.246]],["parent/1867",[707,4.387]],["name/1868",[311,60.05]],["parent/1868",[707,4.387]],["name/1869",[73,36.167]],["parent/1869",[707,4.387]],["name/1870",[708,58.617]],["parent/1870",[709,4.387]],["name/1871",[73,36.167]],["parent/1871",[709,4.387]],["name/1872",[315,61.724]],["parent/1872",[710,5.439]],["name/1873",[711,74.741]],["parent/1873",[709,4.387]],["name/1874",[8,58.617]],["parent/1874",[709,4.387]],["name/1875",[354,63.734]],["parent/1875",[709,4.387]],["name/1876",[265,61.724]],["parent/1876",[709,4.387]],["name/1877",[358,63.734]],["parent/1877",[709,4.387]],["name/1878",[708,58.617]],["parent/1878",[707,4.387]],["name/1879",[73,36.167]],["parent/1879",[707,4.387]],["name/1880",[573,63.734]],["parent/1880",[709,4.387]],["name/1881",[395,61.724]],["parent/1881",[707,4.387]],["name/1882",[73,36.167]],["parent/1882",[707,4.387]],["name/1883",[370,57.363]],["parent/1883",[709,4.387]],["name/1884",[182,56.248]],["parent/1884",[709,4.387]],["name/1885",[712,58.617]],["parent/1885",[707,4.387]],["name/1886",[411,60.05]],["parent/1886",[707,4.387]],["name/1887",[67,60.05]],["parent/1887",[707,4.387]],["name/1888",[703,66.252]],["parent/1888",[707,4.387]],["name/1889",[656,66.252]],["parent/1889",[707,4.387]],["name/1890",[73,36.167]],["parent/1890",[707,4.387]],["name/1891",[447,63.734]],["parent/1891",[709,4.387]],["name/1892",[188,58.617]],["parent/1892",[707,4.387]],["name/1893",[327,60.05]],["parent/1893",[707,4.387]],["name/1894",[155,54.334]],["parent/1894",[707,4.387]],["name/1895",[113,60.05]],["parent/1895",[707,4.387]],["name/1896",[474,57.363]],["parent/1896",[707,4.387]],["name/1897",[73,36.167]],["parent/1897",[707,4.387]],["name/1898",[486,61.724]],["parent/1898",[709,4.387]],["name/1899",[484,66.252]],["parent/1899",[709,4.387]],["name/1900",[482,69.623]],["parent/1900",[709,4.387]],["name/1901",[149,63.734]],["parent/1901",[707,4.387]],["name/1902",[713,74.741]],["parent/1902",[707,4.387]],["name/1903",[73,36.167]],["parent/1903",[707,4.387]],["name/1904",[166,63.734]],["parent/1904",[709,4.387]],["name/1905",[171,63.734]],["parent/1905",[709,4.387]],["name/1906",[714,74.741]],["parent/1906",[700,4.454]],["name/1907",[73,36.167]],["parent/1907",[700,4.454]],["name/1908",[453,60.05]],["parent/1908",[707,4.387]],["name/1909",[715,74.741]],["parent/1909",[707,4.387]],["name/1910",[390,55.246]],["parent/1910",[707,4.387]],["name/1911",[73,36.167]],["parent/1911",[707,4.387]],["name/1912",[716,74.741]],["parent/1912",[709,4.387]],["name/1913",[717,74.741]],["parent/1913",[709,4.387]],["name/1914",[718,74.741]],["parent/1914",[709,4.387]],["name/1915",[73,36.167]],["parent/1915",[709,4.387]],["name/1916",[719,69.623]],["parent/1916",[710,5.439]],["name/1917",[720,74.741]],["parent/1917",[710,5.439]],["name/1918",[721,69.623]],["parent/1918",[710,5.439]],["name/1919",[722,74.741]],["parent/1919",[709,4.387]],["name/1920",[73,36.167]],["parent/1920",[709,4.387]],["name/1921",[721,69.623]],["parent/1921",[710,5.439]],["name/1922",[73,36.167]],["parent/1922",[710,5.439]],["name/1923",[723,69.623]],["parent/1923",[724,5.771]],["name/1924",[725,69.623]],["parent/1924",[724,5.771]],["name/1925",[726,74.741]],["parent/1925",[710,5.439]],["name/1926",[73,36.167]],["parent/1926",[710,5.439]],["name/1927",[727,74.741]],["parent/1927",[724,5.771]],["name/1928",[728,69.623]],["parent/1928",[724,5.771]],["name/1929",[719,69.623]],["parent/1929",[710,5.439]],["name/1930",[73,36.167]],["parent/1930",[710,5.439]],["name/1931",[725,69.623]],["parent/1931",[724,5.771]],["name/1932",[728,69.623]],["parent/1932",[724,5.771]],["name/1933",[723,69.623]],["parent/1933",[724,5.771]],["name/1934",[280,48.065]],["parent/1934",[707,4.387]],["name/1935",[73,36.167]],["parent/1935",[707,4.387]],["name/1936",[610,69.623]],["parent/1936",[709,4.387]],["name/1937",[729,74.741]],["parent/1937",[709,4.387]],["name/1938",[730,63.734]],["parent/1938",[707,4.387]],["name/1939",[73,36.167]],["parent/1939",[707,4.387]],["name/1940",[731,74.741]],["parent/1940",[709,4.387]],["name/1941",[56,66.252]],["parent/1941",[709,4.387]],["name/1942",[500,66.252]],["parent/1942",[709,4.387]],["name/1943",[502,69.623]],["parent/1943",[709,4.387]],["name/1944",[506,69.623]],["parent/1944",[709,4.387]],["name/1945",[504,69.623]],["parent/1945",[709,4.387]],["name/1946",[445,66.252]],["parent/1946",[700,4.454]],["name/1947",[268,51.344]],["parent/1947",[700,4.454]],["name/1948",[732,74.741]],["parent/1948",[700,4.454]],["name/1949",[733,74.741]],["parent/1949",[700,4.454]],["name/1950",[734,74.741]],["parent/1950",[700,4.454]],["name/1951",[735,66.252]],["parent/1951",[700,4.454]],["name/1952",[736,74.741]],["parent/1952",[700,4.454]],["name/1953",[737,74.741]],["parent/1953",[700,4.454]],["name/1954",[738,69.623]],["parent/1954",[]],["name/1955",[739,74.741]],["parent/1955",[738,6.855]],["name/1956",[2,36.456]],["parent/1956",[740,4.489]],["name/1957",[741,66.252]],["parent/1957",[740,4.489]],["name/1958",[6,37.536]],["parent/1958",[740,4.489]],["name/1959",[742,66.252]],["parent/1959",[740,4.489]],["name/1960",[24,60.05]],["parent/1960",[740,4.489]],["name/1961",[26,61.724]],["parent/1961",[740,4.489]],["name/1962",[30,56.248]],["parent/1962",[740,4.489]],["name/1963",[743,66.252]],["parent/1963",[740,4.489]],["name/1964",[744,66.252]],["parent/1964",[740,4.489]],["name/1965",[255,61.724]],["parent/1965",[740,4.489]],["name/1966",[745,66.252]],["parent/1966",[740,4.489]],["name/1967",[32,61.724]],["parent/1967",[740,4.489]],["name/1968",[746,66.252]],["parent/1968",[740,4.489]],["name/1969",[747,66.252]],["parent/1969",[740,4.489]],["name/1970",[748,66.252]],["parent/1970",[740,4.489]],["name/1971",[749,66.252]],["parent/1971",[740,4.489]],["name/1972",[750,66.252]],["parent/1972",[740,4.489]],["name/1973",[751,66.252]],["parent/1973",[740,4.489]],["name/1974",[752,66.252]],["parent/1974",[740,4.489]],["name/1975",[753,66.252]],["parent/1975",[740,4.489]],["name/1976",[754,66.252]],["parent/1976",[740,4.489]],["name/1977",[755,66.252]],["parent/1977",[740,4.489]],["name/1978",[756,66.252]],["parent/1978",[740,4.489]],["name/1979",[757,66.252]],["parent/1979",[740,4.489]],["name/1980",[758,66.252]],["parent/1980",[740,4.489]],["name/1981",[759,66.252]],["parent/1981",[740,4.489]],["name/1982",[760,66.252]],["parent/1982",[740,4.489]],["name/1983",[761,69.623]],["parent/1983",[]],["name/1984",[762,66.252]],["parent/1984",[761,6.855]],["name/1985",[2,36.456]],["parent/1985",[763,4.454]],["name/1986",[764,74.741]],["parent/1986",[763,4.454]],["name/1987",[24,60.05]],["parent/1987",[763,4.454]],["name/1988",[26,61.724]],["parent/1988",[763,4.454]],["name/1989",[743,66.252]],["parent/1989",[763,4.454]],["name/1990",[744,66.252]],["parent/1990",[763,4.454]],["name/1991",[30,56.248]],["parent/1991",[763,4.454]],["name/1992",[255,61.724]],["parent/1992",[763,4.454]],["name/1993",[745,66.252]],["parent/1993",[763,4.454]],["name/1994",[32,61.724]],["parent/1994",[763,4.454]],["name/1995",[751,66.252]],["parent/1995",[763,4.454]],["name/1996",[752,66.252]],["parent/1996",[763,4.454]],["name/1997",[753,66.252]],["parent/1997",[763,4.454]],["name/1998",[746,66.252]],["parent/1998",[763,4.454]],["name/1999",[747,66.252]],["parent/1999",[763,4.454]],["name/2000",[748,66.252]],["parent/2000",[763,4.454]],["name/2001",[749,66.252]],["parent/2001",[763,4.454]],["name/2002",[750,66.252]],["parent/2002",[763,4.454]],["name/2003",[754,66.252]],["parent/2003",[763,4.454]],["name/2004",[755,66.252]],["parent/2004",[763,4.454]],["name/2005",[756,66.252]],["parent/2005",[763,4.454]],["name/2006",[757,66.252]],["parent/2006",[763,4.454]],["name/2007",[758,66.252]],["parent/2007",[763,4.454]],["name/2008",[759,66.252]],["parent/2008",[763,4.454]],["name/2009",[760,66.252]],["parent/2009",[763,4.454]],["name/2010",[741,66.252]],["parent/2010",[763,4.454]],["name/2011",[6,37.536]],["parent/2011",[763,4.454]],["name/2012",[742,66.252]],["parent/2012",[763,4.454]],["name/2013",[765,69.623]],["parent/2013",[]],["name/2014",[766,66.252]],["parent/2014",[765,6.855]],["name/2015",[2,36.456]],["parent/2015",[767,5.771]],["name/2016",[4,52.728]],["parent/2016",[767,5.771]],["name/2017",[123,58.617]],["parent/2017",[767,5.771]],["name/2018",[90,63.734]],["parent/2018",[767,5.771]],["name/2019",[768,69.623]],["parent/2019",[767,5.771]],["name/2020",[6,37.536]],["parent/2020",[767,5.771]],["name/2021",[24,60.05]],["parent/2021",[767,5.771]],["name/2022",[769,69.623]],["parent/2022",[]],["name/2023",[770,66.252]],["parent/2023",[769,6.855]],["name/2024",[2,36.456]],["parent/2024",[771,4.184]],["name/2025",[772,74.741]],["parent/2025",[771,4.184]],["name/2026",[773,74.741]],["parent/2026",[771,4.184]],["name/2027",[774,74.741]],["parent/2027",[771,4.184]],["name/2028",[775,74.741]],["parent/2028",[771,4.184]],["name/2029",[776,74.741]],["parent/2029",[771,4.184]],["name/2030",[777,74.741]],["parent/2030",[771,4.184]],["name/2031",[778,74.741]],["parent/2031",[771,4.184]],["name/2032",[779,69.623]],["parent/2032",[771,4.184]],["name/2033",[780,74.741]],["parent/2033",[771,4.184]],["name/2034",[781,74.741]],["parent/2034",[771,4.184]],["name/2035",[24,60.05]],["parent/2035",[771,4.184]],["name/2036",[26,61.724]],["parent/2036",[771,4.184]],["name/2037",[30,56.248]],["parent/2037",[771,4.184]],["name/2038",[743,66.252]],["parent/2038",[771,4.184]],["name/2039",[744,66.252]],["parent/2039",[771,4.184]],["name/2040",[255,61.724]],["parent/2040",[771,4.184]],["name/2041",[745,66.252]],["parent/2041",[771,4.184]],["name/2042",[32,61.724]],["parent/2042",[771,4.184]],["name/2043",[746,66.252]],["parent/2043",[771,4.184]],["name/2044",[747,66.252]],["parent/2044",[771,4.184]],["name/2045",[748,66.252]],["parent/2045",[771,4.184]],["name/2046",[749,66.252]],["parent/2046",[771,4.184]],["name/2047",[750,66.252]],["parent/2047",[771,4.184]],["name/2048",[751,66.252]],["parent/2048",[771,4.184]],["name/2049",[752,66.252]],["parent/2049",[771,4.184]],["name/2050",[753,66.252]],["parent/2050",[771,4.184]],["name/2051",[754,66.252]],["parent/2051",[771,4.184]],["name/2052",[755,66.252]],["parent/2052",[771,4.184]],["name/2053",[756,66.252]],["parent/2053",[771,4.184]],["name/2054",[757,66.252]],["parent/2054",[771,4.184]],["name/2055",[758,66.252]],["parent/2055",[771,4.184]],["name/2056",[759,66.252]],["parent/2056",[771,4.184]],["name/2057",[760,66.252]],["parent/2057",[771,4.184]],["name/2058",[741,66.252]],["parent/2058",[771,4.184]],["name/2059",[6,37.536]],["parent/2059",[771,4.184]],["name/2060",[742,66.252]],["parent/2060",[771,4.184]],["name/2061",[782,69.623]],["parent/2061",[]],["name/2062",[712,58.617]],["parent/2062",[782,6.855]],["name/2063",[2,36.456]],["parent/2063",[783,6.077]],["name/2064",[784,74.741]],["parent/2064",[783,6.077]],["name/2065",[6,37.536]],["parent/2065",[783,6.077]],["name/2066",[7,41.005]],["parent/2066",[783,6.077]],["name/2067",[768,69.623]],["parent/2067",[783,6.077]],["name/2068",[785,69.623]],["parent/2068",[]],["name/2069",[238,63.734]],["parent/2069",[785,6.855]],["name/2070",[2,36.456]],["parent/2070",[786,5.191]],["name/2071",[787,74.741]],["parent/2071",[786,5.191]],["name/2072",[73,36.167]],["parent/2072",[786,5.191]],["name/2073",[788,74.741]],["parent/2073",[786,5.191]],["name/2074",[789,74.741]],["parent/2074",[786,5.191]],["name/2075",[39,69.623]],["parent/2075",[786,5.191]],["name/2076",[49,63.734]],["parent/2076",[786,5.191]],["name/2077",[790,74.741]],["parent/2077",[786,5.191]],["name/2078",[791,74.741]],["parent/2078",[786,5.191]],["name/2079",[418,69.623]],["parent/2079",[786,5.191]],["name/2080",[792,74.741]],["parent/2080",[786,5.191]],["name/2081",[403,63.734]],["parent/2081",[786,5.191]],["name/2082",[793,74.741]],["parent/2082",[786,5.191]],["name/2083",[794,69.623]],["parent/2083",[]],["name/2084",[267,47.174]],["parent/2084",[794,6.855]],["name/2085",[795,63.734]],["parent/2085",[796,5.267]],["name/2086",[797,63.734]],["parent/2086",[796,5.267]],["name/2087",[798,63.734]],["parent/2087",[796,5.267]],["name/2088",[2,36.456]],["parent/2088",[796,5.267]],["name/2089",[799,52.012]],["parent/2089",[796,5.267]],["name/2090",[151,44.896]],["parent/2090",[796,5.267]],["name/2091",[800,60.05]],["parent/2091",[796,5.267]],["name/2092",[267,47.174]],["parent/2092",[796,5.267]],["name/2093",[81,53.499]],["parent/2093",[796,5.267]],["name/2094",[258,49.044]],["parent/2094",[796,5.267]],["name/2095",[332,58.617]],["parent/2095",[796,5.267]],["name/2096",[269,48.065]],["parent/2096",[796,5.267]],["name/2097",[801,69.623]],["parent/2097",[]],["name/2098",[802,69.623]],["parent/2098",[801,6.855]],["name/2099",[795,63.734]],["parent/2099",[803,4.88]],["name/2100",[797,63.734]],["parent/2100",[803,4.88]],["name/2101",[798,63.734]],["parent/2101",[803,4.88]],["name/2102",[2,36.456]],["parent/2102",[803,4.88]],["name/2103",[6,37.536]],["parent/2103",[803,4.88]],["name/2104",[7,41.005]],["parent/2104",[803,4.88]],["name/2105",[804,74.741]],["parent/2105",[803,4.88]],["name/2106",[805,74.741]],["parent/2106",[803,4.88]],["name/2107",[806,74.741]],["parent/2107",[803,4.88]],["name/2108",[49,63.734]],["parent/2108",[803,4.88]],["name/2109",[799,52.012]],["parent/2109",[803,4.88]],["name/2110",[151,44.896]],["parent/2110",[803,4.88]],["name/2111",[800,60.05]],["parent/2111",[803,4.88]],["name/2112",[267,47.174]],["parent/2112",[803,4.88]],["name/2113",[81,53.499]],["parent/2113",[803,4.88]],["name/2114",[258,49.044]],["parent/2114",[803,4.88]],["name/2115",[332,58.617]],["parent/2115",[803,4.88]],["name/2116",[269,48.065]],["parent/2116",[803,4.88]],["name/2117",[807,69.623]],["parent/2117",[]],["name/2118",[808,74.741]],["parent/2118",[807,6.855]],["name/2119",[795,63.734]],["parent/2119",[809,5.267]],["name/2120",[797,63.734]],["parent/2120",[809,5.267]],["name/2121",[798,63.734]],["parent/2121",[809,5.267]],["name/2122",[2,36.456]],["parent/2122",[809,5.267]],["name/2123",[799,52.012]],["parent/2123",[809,5.267]],["name/2124",[151,44.896]],["parent/2124",[809,5.267]],["name/2125",[800,60.05]],["parent/2125",[809,5.267]],["name/2126",[267,47.174]],["parent/2126",[809,5.267]],["name/2127",[81,53.499]],["parent/2127",[809,5.267]],["name/2128",[258,49.044]],["parent/2128",[809,5.267]],["name/2129",[332,58.617]],["parent/2129",[809,5.267]],["name/2130",[269,48.065]],["parent/2130",[809,5.267]],["name/2131",[810,69.623]],["parent/2131",[]],["name/2132",[811,74.741]],["parent/2132",[810,6.855]],["name/2133",[795,63.734]],["parent/2133",[812,4.993]],["name/2134",[797,63.734]],["parent/2134",[812,4.993]],["name/2135",[798,63.734]],["parent/2135",[812,4.993]],["name/2136",[2,36.456]],["parent/2136",[812,4.993]],["name/2137",[813,74.741]],["parent/2137",[812,4.993]],["name/2138",[814,74.741]],["parent/2138",[812,4.993]],["name/2139",[493,69.623]],["parent/2139",[812,4.993]],["name/2140",[494,69.623]],["parent/2140",[812,4.993]],["name/2141",[799,52.012]],["parent/2141",[812,4.993]],["name/2142",[151,44.896]],["parent/2142",[812,4.993]],["name/2143",[800,60.05]],["parent/2143",[812,4.993]],["name/2144",[267,47.174]],["parent/2144",[812,4.993]],["name/2145",[81,53.499]],["parent/2145",[812,4.993]],["name/2146",[258,49.044]],["parent/2146",[812,4.993]],["name/2147",[332,58.617]],["parent/2147",[812,4.993]],["name/2148",[269,48.065]],["parent/2148",[812,4.993]],["name/2149",[120,63.734]],["parent/2149",[]],["name/2150",[815,74.741]],["parent/2150",[120,6.275]],["name/2151",[816,74.741]],["parent/2151",[817,6.077]],["name/2152",[818,74.741]],["parent/2152",[817,6.077]],["name/2153",[6,37.536]],["parent/2153",[819,5.055]],["name/2154",[7,41.005]],["parent/2154",[819,5.055]],["name/2155",[820,69.623]],["parent/2155",[819,5.055]],["name/2156",[311,60.05]],["parent/2156",[821,5.648]],["name/2157",[265,61.724]],["parent/2157",[821,5.648]],["name/2158",[354,63.734]],["parent/2158",[821,5.648]],["name/2159",[358,63.734]],["parent/2159",[821,5.648]],["name/2160",[8,58.617]],["parent/2160",[821,5.648]],["name/2161",[822,69.623]],["parent/2161",[821,5.648]],["name/2162",[327,60.05]],["parent/2162",[823,6.855]],["name/2163",[155,54.334]],["parent/2163",[823,6.855]],["name/2164",[395,61.724]],["parent/2164",[821,5.648]],["name/2165",[182,56.248]],["parent/2165",[824,6.855]],["name/2166",[370,57.363]],["parent/2166",[824,6.855]],["name/2167",[708,58.617]],["parent/2167",[821,5.648]],["name/2168",[315,61.724]],["parent/2168",[825,7.359]],["name/2169",[826,69.623]],["parent/2169",[819,5.055]],["name/2170",[149,63.734]],["parent/2170",[827,6.855]],["name/2171",[828,69.623]],["parent/2171",[827,6.855]],["name/2172",[166,63.734]],["parent/2172",[829,6.855]],["name/2173",[171,63.734]],["parent/2173",[829,6.855]],["name/2174",[708,58.617]],["parent/2174",[819,5.055]],["name/2175",[453,60.05]],["parent/2175",[830,6.077]],["name/2176",[188,58.617]],["parent/2176",[830,6.077]],["name/2177",[113,60.05]],["parent/2177",[830,6.077]],["name/2178",[238,63.734]],["parent/2178",[830,6.077]],["name/2179",[253,63.734]],["parent/2179",[830,6.077]],["name/2180",[831,69.623]],["parent/2180",[819,5.055]],["name/2181",[339,66.252]],["parent/2181",[832,6.523]],["name/2182",[735,66.252]],["parent/2182",[832,6.523]],["name/2183",[634,66.252]],["parent/2183",[832,6.523]],["name/2184",[712,58.617]],["parent/2184",[819,5.055]],["name/2185",[712,58.617]],["parent/2185",[833,6.275]],["name/2186",[770,66.252]],["parent/2186",[833,6.275]],["name/2187",[762,66.252]],["parent/2187",[833,6.275]],["name/2188",[766,66.252]],["parent/2188",[833,6.275]],["name/2189",[704,66.252]],["parent/2189",[819,5.055]],["name/2190",[67,60.05]],["parent/2190",[834,7.359]],["name/2191",[280,48.065]],["parent/2191",[819,5.055]],["name/2192",[272,48.543]],["parent/2192",[835,6.275]],["name/2193",[603,63.734]],["parent/2193",[835,6.275]],["name/2194",[599,63.734]],["parent/2194",[835,6.275]],["name/2195",[836,60.05]],["parent/2195",[835,6.275]],["name/2196",[274,48.543]],["parent/2196",[837,6.855]],["name/2197",[573,63.734]],["parent/2197",[837,6.855]],["name/2198",[836,60.05]],["parent/2198",[819,5.055]],["name/2199",[563,63.734]],["parent/2199",[838,6.275]],["name/2200",[569,63.734]],["parent/2200",[838,6.275]],["name/2201",[267,47.174]],["parent/2201",[838,6.275]],["name/2202",[390,55.246]],["parent/2202",[838,6.275]],["name/2203",[474,57.363]],["parent/2203",[819,5.055]],["name/2204",[474,57.363]],["parent/2204",[839,6.855]],["name/2205",[486,61.724]],["parent/2205",[839,6.855]],["name/2206",[730,63.734]],["parent/2206",[819,5.055]],["name/2207",[508,66.252]],["parent/2207",[840,7.359]],["name/2208",[841,69.623]],["parent/2208",[819,5.055]],["name/2209",[447,63.734]],["parent/2209",[842,7.359]],["name/2210",[411,60.05]],["parent/2210",[819,5.055]],["name/2211",[411,60.05]],["parent/2211",[843,6.275]],["name/2212",[416,61.724]],["parent/2212",[843,6.275]],["name/2213",[436,61.724]],["parent/2213",[843,6.275]],["name/2214",[836,60.05]],["parent/2214",[843,6.275]],["name/2215",[4,52.728]],["parent/2215",[844,6.855]],["name/2216",[434,66.252]],["parent/2216",[844,6.855]],["name/2217",[1,58.617]],["parent/2217",[819,5.055]],["name/2218",[1,58.617]],["parent/2218",[845,6.077]],["name/2219",[35,63.734]],["parent/2219",[845,6.077]],["name/2220",[41,66.252]],["parent/2220",[845,6.077]],["name/2221",[53,66.252]],["parent/2221",[845,6.077]],["name/2222",[59,63.734]],["parent/2222",[845,6.077]],["name/2223",[846,74.741]],["parent/2223",[817,6.077]],["name/2224",[6,37.536]],["parent/2224",[847,5.055]],["name/2225",[7,41.005]],["parent/2225",[847,5.055]],["name/2226",[820,69.623]],["parent/2226",[847,5.055]],["name/2227",[311,60.05]],["parent/2227",[848,5.648]],["name/2228",[265,61.724]],["parent/2228",[848,5.648]],["name/2229",[354,63.734]],["parent/2229",[848,5.648]],["name/2230",[358,63.734]],["parent/2230",[848,5.648]],["name/2231",[8,58.617]],["parent/2231",[848,5.648]],["name/2232",[822,69.623]],["parent/2232",[848,5.648]],["name/2233",[327,60.05]],["parent/2233",[849,6.855]],["name/2234",[155,54.334]],["parent/2234",[849,6.855]],["name/2235",[395,61.724]],["parent/2235",[848,5.648]],["name/2236",[182,56.248]],["parent/2236",[850,6.855]],["name/2237",[370,57.363]],["parent/2237",[850,6.855]],["name/2238",[708,58.617]],["parent/2238",[848,5.648]],["name/2239",[315,61.724]],["parent/2239",[851,7.359]],["name/2240",[826,69.623]],["parent/2240",[847,5.055]],["name/2241",[149,63.734]],["parent/2241",[852,6.855]],["name/2242",[828,69.623]],["parent/2242",[852,6.855]],["name/2243",[166,63.734]],["parent/2243",[853,6.855]],["name/2244",[171,63.734]],["parent/2244",[853,6.855]],["name/2245",[708,58.617]],["parent/2245",[847,5.055]],["name/2246",[453,60.05]],["parent/2246",[854,6.077]],["name/2247",[188,58.617]],["parent/2247",[854,6.077]],["name/2248",[113,60.05]],["parent/2248",[854,6.077]],["name/2249",[238,63.734]],["parent/2249",[854,6.077]],["name/2250",[253,63.734]],["parent/2250",[854,6.077]],["name/2251",[831,69.623]],["parent/2251",[847,5.055]],["name/2252",[339,66.252]],["parent/2252",[855,6.523]],["name/2253",[735,66.252]],["parent/2253",[855,6.523]],["name/2254",[634,66.252]],["parent/2254",[855,6.523]],["name/2255",[712,58.617]],["parent/2255",[847,5.055]],["name/2256",[712,58.617]],["parent/2256",[856,6.275]],["name/2257",[770,66.252]],["parent/2257",[856,6.275]],["name/2258",[762,66.252]],["parent/2258",[856,6.275]],["name/2259",[766,66.252]],["parent/2259",[856,6.275]],["name/2260",[704,66.252]],["parent/2260",[847,5.055]],["name/2261",[67,60.05]],["parent/2261",[857,7.359]],["name/2262",[280,48.065]],["parent/2262",[847,5.055]],["name/2263",[272,48.543]],["parent/2263",[858,6.275]],["name/2264",[603,63.734]],["parent/2264",[858,6.275]],["name/2265",[599,63.734]],["parent/2265",[858,6.275]],["name/2266",[836,60.05]],["parent/2266",[858,6.275]],["name/2267",[274,48.543]],["parent/2267",[859,6.855]],["name/2268",[573,63.734]],["parent/2268",[859,6.855]],["name/2269",[836,60.05]],["parent/2269",[847,5.055]],["name/2270",[563,63.734]],["parent/2270",[860,6.275]],["name/2271",[569,63.734]],["parent/2271",[860,6.275]],["name/2272",[267,47.174]],["parent/2272",[860,6.275]],["name/2273",[390,55.246]],["parent/2273",[860,6.275]],["name/2274",[474,57.363]],["parent/2274",[847,5.055]],["name/2275",[474,57.363]],["parent/2275",[861,6.855]],["name/2276",[486,61.724]],["parent/2276",[861,6.855]],["name/2277",[730,63.734]],["parent/2277",[847,5.055]],["name/2278",[508,66.252]],["parent/2278",[862,7.359]],["name/2279",[841,69.623]],["parent/2279",[847,5.055]],["name/2280",[447,63.734]],["parent/2280",[863,7.359]],["name/2281",[411,60.05]],["parent/2281",[847,5.055]],["name/2282",[411,60.05]],["parent/2282",[864,6.275]],["name/2283",[416,61.724]],["parent/2283",[864,6.275]],["name/2284",[436,61.724]],["parent/2284",[864,6.275]],["name/2285",[836,60.05]],["parent/2285",[864,6.275]],["name/2286",[4,52.728]],["parent/2286",[865,6.855]],["name/2287",[434,66.252]],["parent/2287",[865,6.855]],["name/2288",[1,58.617]],["parent/2288",[847,5.055]],["name/2289",[1,58.617]],["parent/2289",[866,6.077]],["name/2290",[35,63.734]],["parent/2290",[866,6.077]],["name/2291",[41,66.252]],["parent/2291",[866,6.077]],["name/2292",[53,66.252]],["parent/2292",[866,6.077]],["name/2293",[59,63.734]],["parent/2293",[866,6.077]],["name/2294",[867,74.741]],["parent/2294",[817,6.077]],["name/2295",[868,74.741]],["parent/2295",[869,7.359]],["name/2296",[157,47.174]],["parent/2296",[870,7.359]],["name/2297",[73,36.167]],["parent/2297",[871,7.359]],["name/2298",[315,61.724]],["parent/2298",[872,5.771]],["name/2299",[311,60.05]],["parent/2299",[872,5.771]],["name/2300",[327,60.05]],["parent/2300",[872,5.771]],["name/2301",[182,56.248]],["parent/2301",[872,5.771]],["name/2302",[370,57.363]],["parent/2302",[872,5.771]],["name/2303",[873,74.741]],["parent/2303",[872,5.771]],["name/2304",[874,74.741]],["parent/2304",[872,5.771]],["name/2305",[875,74.741]],["parent/2305",[817,6.077]],["name/2306",[311,60.05]],["parent/2306",[876,4.526]],["name/2307",[877,74.741]],["parent/2307",[876,4.526]],["name/2308",[878,74.741]],["parent/2308",[876,4.526]],["name/2309",[151,44.896]],["parent/2309",[879,5.912]],["name/2310",[157,47.174]],["parent/2310",[879,5.912]],["name/2311",[156,47.174]],["parent/2311",[879,5.912]],["name/2312",[6,37.536]],["parent/2312",[879,5.912]],["name/2313",[163,48.065]],["parent/2313",[879,5.912]],["name/2314",[158,48.065]],["parent/2314",[879,5.912]],["name/2315",[6,37.536]],["parent/2315",[876,4.526]],["name/2316",[235,69.623]],["parent/2316",[880,6.275]],["name/2317",[881,74.741]],["parent/2317",[882,6.855]],["name/2318",[883,74.741]],["parent/2318",[882,6.855]],["name/2319",[5,54.334]],["parent/2319",[880,6.275]],["name/2320",[237,69.623]],["parent/2320",[884,4.829]],["name/2321",[885,69.623]],["parent/2321",[884,4.829]],["name/2322",[886,74.741]],["parent/2322",[884,4.829]],["name/2323",[189,61.724]],["parent/2323",[884,4.829]],["name/2324",[190,61.724]],["parent/2324",[884,4.829]],["name/2325",[887,74.741]],["parent/2325",[884,4.829]],["name/2326",[280,48.065]],["parent/2326",[884,4.829]],["name/2327",[73,36.167]],["parent/2327",[884,4.829]],["name/2328",[276,49.571]],["parent/2328",[888,5.912]],["name/2329",[325,69.623]],["parent/2329",[888,5.912]],["name/2330",[889,74.741]],["parent/2330",[888,5.912]],["name/2331",[130,66.252]],["parent/2331",[888,5.912]],["name/2332",[890,74.741]],["parent/2332",[884,4.829]],["name/2333",[891,74.741]],["parent/2333",[884,4.829]],["name/2334",[81,53.499]],["parent/2334",[884,4.829]],["name/2335",[130,66.252]],["parent/2335",[884,4.829]],["name/2336",[892,74.741]],["parent/2336",[884,4.829]],["name/2337",[252,69.623]],["parent/2337",[884,4.829]],["name/2338",[73,36.167]],["parent/2338",[884,4.829]],["name/2339",[893,74.741]],["parent/2339",[888,5.912]],["name/2340",[894,74.741]],["parent/2340",[888,5.912]],["name/2341",[895,74.741]],["parent/2341",[884,4.829]],["name/2342",[896,74.741]],["parent/2342",[884,4.829]],["name/2343",[141,69.623]],["parent/2343",[884,4.829]],["name/2344",[667,69.623]],["parent/2344",[884,4.829]],["name/2345",[132,63.734]],["parent/2345",[880,6.275]],["name/2346",[248,69.623]],["parent/2346",[897,6.855]],["name/2347",[885,69.623]],["parent/2347",[897,6.855]],["name/2348",[898,74.741]],["parent/2348",[880,6.275]],["name/2349",[899,61.724]],["parent/2349",[900,6.523]],["name/2350",[901,74.741]],["parent/2350",[900,6.523]],["name/2351",[400,66.252]],["parent/2351",[900,6.523]],["name/2352",[664,69.623]],["parent/2352",[876,4.526]],["name/2353",[902,74.741]],["parent/2353",[903,7.359]],["name/2354",[7,41.005]],["parent/2354",[904,6.855]],["name/2355",[905,74.741]],["parent/2355",[904,6.855]],["name/2356",[708,58.617]],["parent/2356",[876,4.526]],["name/2357",[81,53.499]],["parent/2357",[906,7.359]],["name/2358",[907,74.741]],["parent/2358",[908,6.855]],["name/2359",[909,74.741]],["parent/2359",[908,6.855]],["name/2360",[272,48.543]],["parent/2360",[876,4.526]],["name/2361",[910,74.741]],["parent/2361",[911,6.855]],["name/2362",[912,74.741]],["parent/2362",[911,6.855]],["name/2363",[712,58.617]],["parent/2363",[876,4.526]],["name/2364",[913,74.741]],["parent/2364",[914,6.523]],["name/2365",[915,74.741]],["parent/2365",[916,6.523]],["name/2366",[917,74.741]],["parent/2366",[916,6.523]],["name/2367",[4,52.728]],["parent/2367",[916,6.523]],["name/2368",[918,74.741]],["parent/2368",[914,6.523]],["name/2369",[919,74.741]],["parent/2369",[920,6.275]],["name/2370",[779,69.623]],["parent/2370",[920,6.275]],["name/2371",[921,74.741]],["parent/2371",[920,6.275]],["name/2372",[255,61.724]],["parent/2372",[920,6.275]],["name/2373",[922,74.741]],["parent/2373",[914,6.523]],["name/2374",[923,74.741]],["parent/2374",[876,4.526]],["name/2375",[924,74.741]],["parent/2375",[925,6.275]],["name/2376",[926,74.741]],["parent/2376",[925,6.275]],["name/2377",[927,74.741]],["parent/2377",[925,6.275]],["name/2378",[928,74.741]],["parent/2378",[929,4.935]],["name/2379",[930,74.741]],["parent/2379",[929,4.935]],["name/2380",[516,52.728]],["parent/2380",[929,4.935]],["name/2381",[517,53.499]],["parent/2381",[929,4.935]],["name/2382",[931,74.741]],["parent/2382",[929,4.935]],["name/2383",[932,74.741]],["parent/2383",[929,4.935]],["name/2384",[933,74.741]],["parent/2384",[929,4.935]],["name/2385",[934,74.741]],["parent/2385",[929,4.935]],["name/2386",[935,74.741]],["parent/2386",[929,4.935]],["name/2387",[936,74.741]],["parent/2387",[929,4.935]],["name/2388",[937,69.623]],["parent/2388",[929,4.935]],["name/2389",[938,69.623]],["parent/2389",[929,4.935]],["name/2390",[939,69.623]],["parent/2390",[929,4.935]],["name/2391",[940,69.623]],["parent/2391",[929,4.935]],["name/2392",[941,69.623]],["parent/2392",[929,4.935]],["name/2393",[942,69.623]],["parent/2393",[929,4.935]],["name/2394",[943,69.623]],["parent/2394",[929,4.935]],["name/2395",[944,74.741]],["parent/2395",[925,6.275]],["name/2396",[516,52.728]],["parent/2396",[945,4.935]],["name/2397",[265,61.724]],["parent/2397",[945,4.935]],["name/2398",[946,74.741]],["parent/2398",[945,4.935]],["name/2399",[947,74.741]],["parent/2399",[945,4.935]],["name/2400",[948,74.741]],["parent/2400",[945,4.935]],["name/2401",[949,74.741]],["parent/2401",[945,4.935]],["name/2402",[950,74.741]],["parent/2402",[945,4.935]],["name/2403",[951,74.741]],["parent/2403",[945,4.935]],["name/2404",[952,74.741]],["parent/2404",[945,4.935]],["name/2405",[271,50.128]],["parent/2405",[945,4.935]],["name/2406",[937,69.623]],["parent/2406",[945,4.935]],["name/2407",[938,69.623]],["parent/2407",[945,4.935]],["name/2408",[939,69.623]],["parent/2408",[945,4.935]],["name/2409",[940,69.623]],["parent/2409",[945,4.935]],["name/2410",[941,69.623]],["parent/2410",[945,4.935]],["name/2411",[942,69.623]],["parent/2411",[945,4.935]],["name/2412",[943,69.623]],["parent/2412",[945,4.935]],["name/2413",[395,61.724]],["parent/2413",[876,4.526]],["name/2414",[370,57.363]],["parent/2414",[953,6.855]],["name/2415",[5,54.334]],["parent/2415",[954,7.359]],["name/2416",[516,52.728]],["parent/2416",[955,6.077]],["name/2417",[517,53.499]],["parent/2417",[955,6.077]],["name/2418",[956,74.741]],["parent/2418",[955,6.077]],["name/2419",[957,74.741]],["parent/2419",[955,6.077]],["name/2420",[73,36.167]],["parent/2420",[955,6.077]],["name/2421",[958,74.741]],["parent/2421",[959,6.077]],["name/2422",[698,69.623]],["parent/2422",[959,6.077]],["name/2423",[391,69.623]],["parent/2423",[959,6.077]],["name/2424",[960,74.741]],["parent/2424",[959,6.077]],["name/2425",[961,74.741]],["parent/2425",[959,6.077]],["name/2426",[182,56.248]],["parent/2426",[953,6.855]],["name/2427",[152,47.61]],["parent/2427",[962,6.077]],["name/2428",[963,69.623]],["parent/2428",[962,6.077]],["name/2429",[964,74.741]],["parent/2429",[962,6.077]],["name/2430",[516,52.728]],["parent/2430",[965,6.523]],["name/2431",[517,53.499]],["parent/2431",[965,6.523]],["name/2432",[799,52.012]],["parent/2432",[965,6.523]],["name/2433",[966,74.741]],["parent/2433",[962,6.077]],["name/2434",[73,36.167]],["parent/2434",[967,7.359]],["name/2435",[968,69.623]],["parent/2435",[962,6.077]],["name/2436",[799,52.012]],["parent/2436",[969,6.855]],["name/2437",[899,61.724]],["parent/2437",[969,6.855]],["name/2438",[188,58.617]],["parent/2438",[876,4.526]],["name/2439",[407,69.623]],["parent/2439",[970,6.523]],["name/2440",[963,69.623]],["parent/2440",[970,6.523]],["name/2441",[968,69.623]],["parent/2441",[970,6.523]],["name/2442",[899,61.724]],["parent/2442",[971,6.855]],["name/2443",[799,52.012]],["parent/2443",[971,6.855]],["name/2444",[155,54.334]],["parent/2444",[876,4.526]],["name/2445",[972,74.741]],["parent/2445",[973,6.855]],["name/2446",[974,74.741]],["parent/2446",[973,6.855]],["name/2447",[975,74.741]],["parent/2447",[976,6.523]],["name/2448",[168,66.252]],["parent/2448",[976,6.523]],["name/2449",[977,74.741]],["parent/2449",[976,6.523]],["name/2450",[113,60.05]],["parent/2450",[876,4.526]],["name/2451",[978,74.741]],["parent/2451",[979,5.912]],["name/2452",[980,74.741]],["parent/2452",[979,5.912]],["name/2453",[799,52.012]],["parent/2453",[981,6.855]],["name/2454",[899,61.724]],["parent/2454",[981,6.855]],["name/2455",[982,74.741]],["parent/2455",[979,5.912]],["name/2456",[983,74.741]],["parent/2456",[979,5.912]],["name/2457",[799,52.012]],["parent/2457",[984,5.267]],["name/2458",[985,74.741]],["parent/2458",[984,5.267]],["name/2459",[96,69.623]],["parent/2459",[984,5.267]],["name/2460",[73,36.167]],["parent/2460",[984,5.267]],["name/2461",[516,52.728]],["parent/2461",[986,6.855]],["name/2462",[517,53.499]],["parent/2462",[986,6.855]],["name/2463",[899,61.724]],["parent/2463",[984,5.267]],["name/2464",[987,74.741]],["parent/2464",[984,5.267]],["name/2465",[988,74.741]],["parent/2465",[984,5.267]],["name/2466",[989,74.741]],["parent/2466",[984,5.267]],["name/2467",[990,74.741]],["parent/2467",[984,5.267]],["name/2468",[991,74.741]],["parent/2468",[984,5.267]],["name/2469",[992,74.741]],["parent/2469",[984,5.267]],["name/2470",[993,74.741]],["parent/2470",[984,5.267]],["name/2471",[115,69.623]],["parent/2471",[979,5.912]],["name/2472",[122,69.623]],["parent/2472",[994,6.523]],["name/2473",[73,36.167]],["parent/2473",[994,6.523]],["name/2474",[995,74.741]],["parent/2474",[996,5.912]],["name/2475",[73,36.167]],["parent/2475",[996,5.912]],["name/2476",[516,52.728]],["parent/2476",[997,5.538]],["name/2477",[517,53.499]],["parent/2477",[997,5.538]],["name/2478",[998,74.741]],["parent/2478",[996,5.912]],["name/2479",[999,74.741]],["parent/2479",[996,5.912]],["name/2480",[73,36.167]],["parent/2480",[996,5.912]],["name/2481",[1000,74.741]],["parent/2481",[997,5.538]],["name/2482",[164,63.734]],["parent/2482",[997,5.538]],["name/2483",[71,69.623]],["parent/2483",[997,5.538]],["name/2484",[1001,74.741]],["parent/2484",[997,5.538]],["name/2485",[73,36.167]],["parent/2485",[997,5.538]],["name/2486",[516,52.728]],["parent/2486",[1002,6.855]],["name/2487",[517,53.499]],["parent/2487",[1002,6.855]],["name/2488",[1003,74.741]],["parent/2488",[997,5.538]],["name/2489",[1004,74.741]],["parent/2489",[997,5.538]],["name/2490",[1005,74.741]],["parent/2490",[996,5.912]],["name/2491",[116,69.623]],["parent/2491",[994,6.523]],["name/2492",[5,54.334]],["parent/2492",[979,5.912]],["name/2493",[703,66.252]],["parent/2493",[1006,6.275]],["name/2494",[119,69.623]],["parent/2494",[1006,6.275]],["name/2495",[118,69.623]],["parent/2495",[1006,6.275]],["name/2496",[117,69.623]],["parent/2496",[1006,6.275]],["name/2497",[486,61.724]],["parent/2497",[876,4.526]],["name/2498",[474,57.363]],["parent/2498",[1007,6.855]],["name/2499",[1008,74.741]],["parent/2499",[1007,6.855]],["name/2500",[1009,74.741]],["parent/2500",[876,4.526]],["name/2501",[84,49.044]],["parent/2501",[1010,6.855]],["name/2502",[69,48.543]],["parent/2502",[1011,6.275]],["name/2503",[73,36.167]],["parent/2503",[1011,6.275]],["name/2504",[516,52.728]],["parent/2504",[1012,6.855]],["name/2505",[517,53.499]],["parent/2505",[1012,6.855]],["name/2506",[79,47.61]],["parent/2506",[1011,6.275]],["name/2507",[80,47.61]],["parent/2507",[1011,6.275]],["name/2508",[280,48.065]],["parent/2508",[1010,6.855]],["name/2509",[1013,74.741]],["parent/2509",[1014,7.359]],["name/2510",[453,60.05]],["parent/2510",[876,4.526]],["name/2511",[1015,74.741]],["parent/2511",[1016,6.523]],["name/2512",[1017,74.741]],["parent/2512",[1016,6.523]],["name/2513",[799,52.012]],["parent/2513",[1018,6.523]],["name/2514",[696,66.252]],["parent/2514",[1018,6.523]],["name/2515",[4,52.728]],["parent/2515",[1018,6.523]],["name/2516",[1019,74.741]],["parent/2516",[1016,6.523]],["name/2517",[800,60.05]],["parent/2517",[1020,6.275]],["name/2518",[799,52.012]],["parent/2518",[1020,6.275]],["name/2519",[696,66.252]],["parent/2519",[1020,6.275]],["name/2520",[4,52.728]],["parent/2520",[1020,6.275]],["name/2521",[267,47.174]],["parent/2521",[876,4.526]],["name/2522",[799,52.012]],["parent/2522",[1021,6.855]],["name/2523",[800,60.05]],["parent/2523",[1021,6.855]],["name/2524",[599,63.734]],["parent/2524",[876,4.526]],["name/2525",[799,52.012]],["parent/2525",[1022,5.912]],["name/2526",[5,54.334]],["parent/2526",[1022,5.912]],["name/2527",[799,52.012]],["parent/2527",[1023,7.359]],["name/2528",[1024,74.741]],["parent/2528",[1022,5.912]],["name/2529",[1025,74.741]],["parent/2529",[1026,6.855]],["name/2530",[588,69.623]],["parent/2530",[1026,6.855]],["name/2531",[1027,74.741]],["parent/2531",[1022,5.912]],["name/2532",[1028,74.741]],["parent/2532",[1022,5.912]],["name/2533",[1029,74.741]],["parent/2533",[1022,5.912]],["name/2534",[1,58.617]],["parent/2534",[876,4.526]],["name/2535",[5,54.334]],["parent/2535",[1030,6.855]],["name/2536",[4,52.728]],["parent/2536",[1031,5.771]],["name/2537",[12,69.623]],["parent/2537",[1031,5.771]],["name/2538",[1032,74.741]],["parent/2538",[1031,5.771]],["name/2539",[10,69.623]],["parent/2539",[1031,5.771]],["name/2540",[1033,74.741]],["parent/2540",[1031,5.771]],["name/2541",[1034,74.741]],["parent/2541",[1031,5.771]],["name/2542",[1035,74.741]],["parent/2542",[1031,5.771]],["name/2543",[1036,74.741]],["parent/2543",[1030,6.855]],["name/2544",[37,69.623]],["parent/2544",[1037,6.855]],["name/2545",[38,69.623]],["parent/2545",[1037,6.855]],["name/2546",[59,63.734]],["parent/2546",[876,4.526]],["name/2547",[1038,74.741]],["parent/2547",[1039,6.523]],["name/2548",[1040,74.741]],["parent/2548",[1041,6.523]],["name/2549",[1042,74.741]],["parent/2549",[1041,6.523]],["name/2550",[1043,74.741]],["parent/2550",[1041,6.523]],["name/2551",[1044,74.741]],["parent/2551",[1039,6.523]],["name/2552",[4,52.728]],["parent/2552",[1045,6.523]],["name/2553",[56,66.252]],["parent/2553",[1045,6.523]],["name/2554",[55,69.623]],["parent/2554",[1045,6.523]],["name/2555",[5,54.334]],["parent/2555",[1039,6.523]],["name/2556",[1046,74.741]],["parent/2556",[1047,6.855]],["name/2557",[57,66.252]],["parent/2557",[1047,6.855]],["name/2558",[416,61.724]],["parent/2558",[876,4.526]],["name/2559",[1048,74.741]],["parent/2559",[1049,7.359]],["name/2560",[426,69.623]],["parent/2560",[1050,5.912]],["name/2561",[427,63.734]],["parent/2561",[1050,5.912]],["name/2562",[1051,74.741]],["parent/2562",[1050,5.912]],["name/2563",[1052,74.741]],["parent/2563",[1050,5.912]],["name/2564",[1053,74.741]],["parent/2564",[1050,5.912]],["name/2565",[1054,74.741]],["parent/2565",[1050,5.912]],["name/2566",[436,61.724]],["parent/2566",[876,4.526]],["name/2567",[1055,74.741]],["parent/2567",[1056,7.359]],["name/2568",[182,56.248]],["parent/2568",[1057,6.077]],["name/2569",[427,63.734]],["parent/2569",[1057,6.077]],["name/2570",[1058,74.741]],["parent/2570",[1057,6.077]],["name/2571",[1059,74.741]],["parent/2571",[1057,6.077]],["name/2572",[1060,74.741]],["parent/2572",[1057,6.077]],["name/2573",[67,60.05]],["parent/2573",[876,4.526]],["name/2574",[1061,74.741]],["parent/2574",[1062,7.359]],["name/2575",[1063,74.741]],["parent/2575",[1064,6.855]],["name/2576",[1065,74.741]],["parent/2576",[1064,6.855]],["name/2577",[802,69.623]],["parent/2577",[876,4.526]],["name/2578",[1066,74.741]],["parent/2578",[1067,6.855]],["name/2579",[4,52.728]],["parent/2579",[1068,6.077]],["name/2580",[516,52.728]],["parent/2580",[1068,6.077]],["name/2581",[517,53.499]],["parent/2581",[1068,6.077]],["name/2582",[79,47.61]],["parent/2582",[1068,6.077]],["name/2583",[80,47.61]],["parent/2583",[1068,6.077]],["name/2584",[1069,74.741]],["parent/2584",[1067,6.855]],["name/2585",[400,66.252]],["parent/2585",[1070,6.855]],["name/2586",[1071,74.741]],["parent/2586",[1070,6.855]],["name/2587",[730,63.734]],["parent/2587",[876,4.526]],["name/2588",[1072,74.741]],["parent/2588",[1073,6.523]],["name/2589",[516,52.728]],["parent/2589",[1074,6.855]],["name/2590",[517,53.499]],["parent/2590",[1074,6.855]],["name/2591",[1075,74.741]],["parent/2591",[1073,6.523]],["name/2592",[516,52.728]],["parent/2592",[1076,6.855]],["name/2593",[517,53.499]],["parent/2593",[1076,6.855]],["name/2594",[1077,74.741]],["parent/2594",[1073,6.523]],["name/2595",[79,47.61]],["parent/2595",[1078,6.275]],["name/2596",[80,47.61]],["parent/2596",[1078,6.275]],["name/2597",[516,52.728]],["parent/2597",[1078,6.275]],["name/2598",[517,53.499]],["parent/2598",[1078,6.275]],["name/2599",[1079,74.741]],["parent/2599",[876,4.526]],["name/2600",[1080,74.741]],["parent/2600",[1081,7.359]],["name/2601",[1082,74.741]],["parent/2601",[120,6.275]],["name/2602",[73,36.167]],["parent/2602",[1083,7.359]],["name/2603",[6,37.536]],["parent/2603",[1084,6.855]],["name/2604",[7,41.005]],["parent/2604",[1084,6.855]]],"invertedIndex":[["__tick",{"_index":445,"name":{"1329":{},"1725":{},"1946":{}},"parent":{}}],["__type",{"_index":73,"name":{"95":{},"156":{},"158":{},"245":{},"251":{},"253":{},"258":{},"262":{},"267":{},"289":{},"293":{},"301":{},"309":{},"332":{},"337":{},"343":{},"349":{},"372":{},"424":{},"484":{},"544":{},"626":{},"722":{},"782":{},"847":{},"911":{},"975":{},"1035":{},"1095":{},"1160":{},"1220":{},"1284":{},"1320":{},"1363":{},"1540":{},"1599":{},"1690":{},"1782":{},"1862":{},"1864":{},"1866":{},"1869":{},"1871":{},"1879":{},"1882":{},"1890":{},"1897":{},"1903":{},"1907":{},"1911":{},"1915":{},"1920":{},"1922":{},"1926":{},"1930":{},"1935":{},"1939":{},"2072":{},"2297":{},"2327":{},"2338":{},"2420":{},"2434":{},"2460":{},"2473":{},"2475":{},"2480":{},"2485":{},"2503":{},"2602":{}},"parent":{}}],["_draw",{"_index":163,"name":{"192":{},"203":{},"227":{},"397":{},"461":{},"517":{},"597":{},"695":{},"755":{},"819":{},"883":{},"952":{},"1008":{},"1068":{},"1132":{},"1197":{},"1335":{},"1428":{},"1448":{},"1652":{},"2313":{}},"parent":{}}],["_update",{"_index":285,"name":{"429":{},"489":{},"549":{},"598":{},"727":{},"787":{},"852":{},"916":{},"980":{},"1040":{},"1100":{},"1165":{},"1225":{},"1368":{},"1576":{},"1634":{},"1653":{},"1695":{}},"parent":{}}],["a",{"_index":928,"name":{"2378":{}},"parent":{}}],["abs",{"_index":555,"name":{"1535":{}},"parent":{}}],["acceleratevelocity",{"_index":294,"name":{"438":{},"498":{},"558":{},"639":{},"736":{},"796":{},"861":{},"925":{},"989":{},"1049":{},"1109":{},"1174":{},"1234":{},"1377":{},"1612":{},"1704":{}},"parent":{}}],["add",{"_index":47,"name":{"50":{},"259":{},"350":{},"373":{},"1256":{},"1497":{},"1550":{},"1562":{},"1865":{}},"parent":{}}],["addbody",{"_index":579,"name":{"1577":{}},"parent":{}}],["addcollider",{"_index":281,"name":{"425":{},"485":{},"545":{},"627":{},"723":{},"783":{},"848":{},"912":{},"976":{},"1036":{},"1096":{},"1161":{},"1221":{},"1364":{},"1600":{},"1691":{}},"parent":{}}],["addhitbox",{"_index":283,"name":{"426":{},"486":{},"546":{},"628":{},"724":{},"784":{},"849":{},"913":{},"977":{},"1037":{},"1097":{},"1162":{},"1222":{},"1365":{},"1601":{},"1692":{}},"parent":{}}],["addkey",{"_index":419,"name":{"1285":{}},"parent":{}}],["addkeys",{"_index":420,"name":{"1286":{}},"parent":{}}],["addmice",{"_index":441,"name":{"1322":{}},"parent":{}}],["addmouse",{"_index":440,"name":{"1321":{}},"parent":{}}],["addnumber",{"_index":520,"name":{"1498":{}},"parent":{}}],["affect",{"_index":985,"name":{"2458":{}},"parent":{}}],["age",{"_index":331,"name":{"596":{}},"parent":{}}],["alpha",{"_index":449,"name":{"1334":{}},"parent":{}}],["amount",{"_index":339,"name":{"669":{},"2181":{},"2252":{}},"parent":{}}],["anglebetween",{"_index":528,"name":{"1506":{}},"parent":{}}],["angleto",{"_index":529,"name":{"1507":{}},"parent":{}}],["animation",{"_index":1,"name":{"1":{},"71":{},"2217":{},"2218":{},"2288":{},"2289":{},"2534":{}},"parent":{}}],["animationframe",{"_index":35,"name":{"34":{},"360":{},"2219":{},"2290":{}},"parent":{}}],["animationmanager",{"_index":41,"name":{"41":{},"2220":{},"2291":{}},"parent":{}}],["animationnormaltimer",{"_index":14,"name":{"13":{}},"parent":{}}],["animationreversetimer",{"_index":15,"name":{"14":{}},"parent":{}}],["animations",{"_index":43,"name":{"46":{},"79":{}},"parent":{}}],["animationstate",{"_index":53,"name":{"68":{},"2221":{},"2292":{}},"parent":{}}],["anims",{"_index":365,"name":{"817":{}},"parent":{}}],["applyfriction",{"_index":295,"name":{"439":{},"499":{},"559":{},"640":{},"737":{},"797":{},"862":{},"926":{},"990":{},"1050":{},"1110":{},"1175":{},"1235":{},"1378":{},"1613":{},"1705":{}},"parent":{}}],["applygravity",{"_index":296,"name":{"440":{},"500":{},"560":{},"641":{},"738":{},"798":{},"863":{},"927":{},"991":{},"1051":{},"1111":{},"1176":{},"1236":{},"1379":{},"1614":{},"1706":{}},"parent":{}}],["applyscale",{"_index":91,"name":{"112":{}},"parent":{}}],["applytranslation",{"_index":92,"name":{"113":{}},"parent":{}}],["area",{"_index":573,"name":{"1570":{},"1880":{},"2197":{},"2268":{}},"parent":{}}],["args",{"_index":901,"name":{"2350":{}},"parent":{}}],["aspectratio",{"_index":82,"name":{"103":{}},"parent":{}}],["at",{"_index":408,"name":{"1267":{}},"parent":{}}],["atlas",{"_index":1008,"name":{"2499":{}},"parent":{}}],["atop",{"_index":644,"name":{"1786":{},"1790":{}},"parent":{}}],["attachchild",{"_index":288,"name":{"432":{},"492":{},"552":{},"633":{},"730":{},"790":{},"855":{},"919":{},"983":{},"1043":{},"1103":{},"1168":{},"1228":{},"1371":{},"1606":{},"1698":{}},"parent":{}}],["attachedbody",{"_index":1024,"name":{"2528":{}},"parent":{}}],["attachedchildren",{"_index":278,"name":{"421":{},"481":{},"541":{},"623":{},"719":{},"779":{},"844":{},"908":{},"972":{},"1032":{},"1092":{},"1157":{},"1217":{},"1360":{},"1596":{},"1687":{}},"parent":{}}],["attachoffset",{"_index":279,"name":{"422":{},"482":{},"542":{},"624":{},"720":{},"780":{},"845":{},"909":{},"973":{},"1033":{},"1093":{},"1158":{},"1218":{},"1361":{},"1597":{},"1688":{}},"parent":{}}],["attachto",{"_index":287,"name":{"431":{},"491":{},"551":{},"632":{},"729":{},"789":{},"854":{},"918":{},"982":{},"1042":{},"1102":{},"1167":{},"1227":{},"1370":{},"1605":{},"1697":{}},"parent":{}}],["audiobuffer",{"_index":774,"name":{"2027":{}},"parent":{}}],["audiobufferstack",{"_index":461,"name":{"1404":{}},"parent":{}}],["audiostack",{"_index":460,"name":{"1403":{}},"parent":{}}],["auto",{"_index":594,"name":{"1657":{}},"parent":{}}],["autoadvance",{"_index":55,"name":{"72":{},"2554":{}},"parent":{}}],["autocanvas",{"_index":816,"name":{"2151":{}},"parent":{}}],["autocull",{"_index":109,"name":{"130":{}},"parent":{}}],["autofithitbox",{"_index":299,"name":{"443":{},"503":{},"563":{},"644":{},"741":{},"801":{},"866":{},"930":{},"994":{},"1054":{},"1114":{},"1179":{},"1239":{},"1382":{},"1617":{},"1709":{}},"parent":{}}],["autoplay",{"_index":919,"name":{"2369":{}},"parent":{}}],["b",{"_index":930,"name":{"2379":{}},"parent":{}}],["background",{"_index":895,"name":{"2341":{}},"parent":{}}],["base",{"_index":831,"name":{"2180":{},"2251":{}},"parent":{}}],["baserenderer",{"_index":612,"name":{"1733":{}},"parent":{}}],["basesoundplayer",{"_index":739,"name":{"1955":{}},"parent":{}}],["begin",{"_index":87,"name":{"108":{}},"parent":{}}],["black",{"_index":694,"name":{"1841":{}},"parent":{}}],["blendmodes",{"_index":637,"name":{"1781":{}},"parent":{}}],["blue",{"_index":687,"name":{"1834":{}},"parent":{}}],["blur",{"_index":190,"name":{"269":{},"298":{},"306":{},"311":{},"2324":{}},"parent":{}}],["bodies",{"_index":576,"name":{"1573":{}},"parent":{}}],["body",{"_index":1025,"name":{"2529":{}},"parent":{}}],["bodyisinarea",{"_index":581,"name":{"1579":{}},"parent":{}}],["bottom",{"_index":78,"name":{"99":{}},"parent":{}}],["bouncevelocitybounds",{"_index":297,"name":{"441":{},"501":{},"561":{},"642":{},"739":{},"799":{},"864":{},"928":{},"992":{},"1052":{},"1112":{},"1177":{},"1237":{},"1380":{},"1615":{},"1707":{}},"parent":{}}],["bounciness",{"_index":1013,"name":{"2509":{}},"parent":{}}],["bounds",{"_index":84,"name":{"105":{},"418":{},"478":{},"538":{},"577":{},"620":{},"716":{},"776":{},"841":{},"905":{},"969":{},"1029":{},"1089":{},"1154":{},"1214":{},"1357":{},"1593":{},"1684":{},"2501":{}},"parent":{}}],["boundslike",{"_index":1077,"name":{"2594":{}},"parent":{}}],["browser",{"_index":254,"name":{"381":{}},"parent":{}}],["burn",{"_index":654,"name":{"1800":{}},"parent":{}}],["button",{"_index":182,"name":{"252":{},"878":{},"1307":{},"1884":{},"2165":{},"2236":{},"2301":{},"2426":{},"2568":{}},"parent":{}}],["buttonevents",{"_index":223,"name":{"336":{}},"parent":{}}],["cache",{"_index":787,"name":{"2071":{}},"parent":{}}],["cachemanager",{"_index":238,"name":{"361":{},"2069":{},"2178":{},"2249":{}},"parent":{}}],["call",{"_index":561,"name":{"1543":{}},"parent":{}}],["callbacks",{"_index":178,"name":{"244":{}},"parent":{}}],["camera",{"_index":67,"name":{"87":{},"142":{},"1887":{},"2190":{},"2261":{},"2573":{}},"parent":{}}],["camerafollow",{"_index":991,"name":{"2468":{}},"parent":{}}],["camerafollowlerpx",{"_index":992,"name":{"2469":{}},"parent":{}}],["camerafollowlerpy",{"_index":993,"name":{"2470":{}},"parent":{}}],["cameraintervalms",{"_index":988,"name":{"2465":{}},"parent":{}}],["cameras",{"_index":704,"name":{"1856":{},"2189":{},"2260":{}},"parent":{}}],["camerasettings",{"_index":999,"name":{"2479":{}},"parent":{}}],["cameratimems",{"_index":989,"name":{"2466":{}},"parent":{}}],["cameravalue",{"_index":987,"name":{"2464":{}},"parent":{}}],["cantravel",{"_index":65,"name":{"85":{}},"parent":{}}],["canvas",{"_index":237,"name":{"357":{},"2320":{}},"parent":{}}],["canvasmodulate",{"_index":315,"name":{"515":{},"1872":{},"2168":{},"2239":{},"2298":{}},"parent":{}}],["canvasrenderer",{"_index":630,"name":{"1755":{}},"parent":{}}],["circle",{"_index":265,"name":{"395":{},"1876":{},"2157":{},"2228":{},"2397":{}},"parent":{}}],["circlerectcollision",{"_index":606,"name":{"1727":{}},"parent":{}}],["circletorectintersect",{"_index":729,"name":{"1937":{}},"parent":{}}],["clamp",{"_index":500,"name":{"1474":{},"1530":{},"1942":{}},"parent":{}}],["clampmax",{"_index":552,"name":{"1532":{}},"parent":{}}],["clampmin",{"_index":551,"name":{"1531":{}},"parent":{}}],["classes",{"_index":818,"name":{"2152":{}},"parent":{}}],["clear",{"_index":51,"name":{"54":{}},"parent":{}}],["clear_frame",{"_index":199,"name":{"280":{},"291":{},"322":{},"334":{}},"parent":{}}],["clearframe",{"_index":614,"name":{"1736":{},"1772":{}},"parent":{}}],["clearrect",{"_index":635,"name":{"1773":{}},"parent":{}}],["click",{"_index":184,"name":{"254":{},"338":{}},"parent":{}}],["clone",{"_index":530,"name":{"1508":{}},"parent":{}}],["col",{"_index":37,"name":{"36":{},"2544":{}},"parent":{}}],["collidehitboxes",{"_index":585,"name":{"1635":{}},"parent":{}}],["collider",{"_index":272,"name":{"414":{},"474":{},"534":{},"616":{},"712":{},"772":{},"837":{},"901":{},"965":{},"1025":{},"1085":{},"1150":{},"1210":{},"1353":{},"1589":{},"1629":{},"1680":{},"2192":{},"2263":{},"2360":{}},"parent":{}}],["collideswith",{"_index":273,"name":{"415":{},"475":{},"535":{},"617":{},"713":{},"773":{},"838":{},"902":{},"966":{},"1026":{},"1086":{},"1151":{},"1211":{},"1354":{},"1590":{},"1632":{},"1681":{}},"parent":{}}],["collisionfilter",{"_index":575,"name":{"1572":{}},"parent":{}}],["collisionresponsetype",{"_index":912,"name":{"2362":{}},"parent":{}}],["collisionstate",{"_index":591,"name":{"1651":{}},"parent":{}}],["color",{"_index":390,"name":{"1130":{},"1333":{},"1799":{},"1800":{},"1807":{},"1820":{},"1867":{},"1910":{},"2202":{},"2273":{}},"parent":{}}],["cols",{"_index":494,"name":{"1466":{},"2140":{}},"parent":{}}],["config",{"_index":5,"name":{"4":{},"78":{},"136":{},"356":{},"1129":{},"2319":{},"2415":{},"2492":{},"2526":{},"2535":{},"2555":{}},"parent":{}}],["connectionbase",{"_index":1038,"name":{"2547":{}},"parent":{}}],["connectionbasevalue",{"_index":1044,"name":{"2551":{}},"parent":{}}],["connections",{"_index":57,"name":{"74":{},"80":{},"2557":{}},"parent":{}}],["connectloop",{"_index":63,"name":{"83":{}},"parent":{}}],["connectto",{"_index":62,"name":{"82":{}},"parent":{}}],["conntype",{"_index":1043,"name":{"2550":{}},"parent":{}}],["constructor",{"_index":2,"name":{"2":{},"35":{},"42":{},"69":{},"77":{},"88":{},"135":{},"164":{},"177":{},"197":{},"219":{},"243":{},"355":{},"396":{},"456":{},"516":{},"576":{},"585":{},"593":{},"657":{},"664":{},"694":{},"754":{},"814":{},"879":{},"943":{},"1007":{},"1067":{},"1127":{},"1192":{},"1252":{},"1272":{},"1279":{},"1292":{},"1306":{},"1315":{},"1326":{},"1332":{},"1395":{},"1418":{},"1431":{},"1438":{},"1447":{},"1461":{},"1492":{},"1538":{},"1547":{},"1560":{},"1571":{},"1630":{},"1638":{},"1670":{},"1722":{},"1734":{},"1756":{},"1811":{},"1843":{},"1849":{},"1956":{},"1985":{},"2015":{},"2024":{},"2063":{},"2070":{},"2088":{},"2102":{},"2122":{},"2136":{}},"parent":{}}],["containedparticlecomponent",{"_index":319,"name":{"575":{}},"parent":{}}],["container",{"_index":374,"name":{"942":{}},"parent":{}}],["context",{"_index":772,"name":{"2025":{}},"parent":{}}],["context_lost",{"_index":205,"name":{"286":{},"328":{}},"parent":{}}],["context_restored",{"_index":206,"name":{"287":{},"329":{}},"parent":{}}],["convert",{"_index":722,"name":{"1919":{}},"parent":{}}],["copy",{"_index":647,"name":{"1792":{}},"parent":{}}],["core/animation/animation",{"_index":0,"name":{"0":{}},"parent":{"1":{}}}],["core/animation/animation.animation",{"_index":3,"name":{},"parent":{"2":{},"3":{},"4":{},"5":{},"6":{},"7":{},"8":{},"9":{},"10":{},"11":{},"12":{},"13":{},"14":{},"15":{},"16":{},"17":{},"18":{},"19":{},"20":{},"21":{},"22":{},"23":{},"24":{},"25":{},"26":{},"27":{},"28":{},"29":{},"30":{},"31":{},"32":{}}}],["core/animation/animationframe",{"_index":34,"name":{"33":{}},"parent":{"34":{}}}],["core/animation/animationframe.animationframe",{"_index":36,"name":{},"parent":{"35":{},"36":{},"37":{},"38":{},"39":{}}}],["core/animation/animationmanager",{"_index":40,"name":{"40":{}},"parent":{"41":{}}}],["core/animation/animationmanager.animationmanager",{"_index":42,"name":{},"parent":{"42":{},"43":{},"44":{},"45":{},"46":{},"47":{},"48":{},"49":{},"50":{},"51":{},"52":{},"53":{},"54":{},"55":{},"56":{},"57":{},"58":{},"59":{},"60":{},"61":{},"62":{},"63":{},"64":{},"65":{},"66":{}}}],["core/animation/animationstate",{"_index":52,"name":{"67":{}},"parent":{"68":{}}}],["core/animation/animationstate.animationstate",{"_index":54,"name":{},"parent":{"69":{},"70":{},"71":{},"72":{},"73":{},"74":{}}}],["core/animation/statemachine",{"_index":58,"name":{"75":{}},"parent":{"76":{}}}],["core/animation/statemachine.statemachine",{"_index":60,"name":{},"parent":{"77":{},"78":{},"79":{},"80":{},"81":{},"82":{},"83":{},"84":{},"85":{}}}],["core/camera/camera",{"_index":66,"name":{"86":{}},"parent":{"87":{}}}],["core/camera/camera.camera",{"_index":68,"name":{},"parent":{"88":{},"89":{},"90":{},"91":{},"92":{},"93":{},"94":{},"95":{},"103":{},"104":{},"105":{},"106":{},"107":{},"108":{},"109":{},"110":{},"111":{},"112":{},"113":{},"114":{},"115":{},"116":{},"117":{},"118":{},"119":{},"120":{},"121":{},"122":{},"123":{},"124":{},"125":{},"126":{},"127":{},"128":{},"129":{},"130":{},"131":{},"132":{}}}],["core/camera/camera.camera.__type",{"_index":75,"name":{},"parent":{"96":{},"97":{},"98":{},"99":{},"100":{},"101":{},"102":{}}}],["core/cutscene/cutscene",{"_index":112,"name":{"133":{}},"parent":{"134":{}}}],["core/cutscene/cutscene.cutscene",{"_index":114,"name":{},"parent":{"135":{},"136":{},"137":{},"138":{},"139":{},"140":{},"141":{},"142":{},"143":{},"144":{},"145":{},"146":{},"147":{},"148":{},"149":{},"150":{},"151":{},"152":{},"153":{}}}],["core/debug/debug",{"_index":129,"name":{"154":{}},"parent":{"155":{}}}],["core/debug/debug.debug",{"_index":131,"name":{},"parent":{"156":{}}}],["core/debug/debug.debug.__type",{"_index":133,"name":{},"parent":{"157":{},"158":{},"159":{},"160":{},"161":{}}}],["core/display/displaymanager",{"_index":137,"name":{"162":{}},"parent":{"163":{}}}],["core/display/displaymanager.displaymanager",{"_index":139,"name":{},"parent":{"164":{},"165":{},"166":{},"167":{},"168":{},"169":{},"170":{},"171":{},"172":{},"173":{},"174":{}}}],["core/effect/effect",{"_index":148,"name":{"175":{}},"parent":{"176":{}}}],["core/effect/effect.effect",{"_index":150,"name":{},"parent":{"177":{},"178":{},"179":{},"180":{},"181":{},"182":{},"183":{},"184":{},"185":{},"186":{},"187":{},"188":{},"189":{},"190":{},"191":{},"192":{},"193":{},"194":{}}}],["core/effect/preset/explosion",{"_index":165,"name":{"195":{}},"parent":{"196":{}}}],["core/effect/preset/explosion.explosioneffect",{"_index":167,"name":{},"parent":{"197":{},"198":{},"199":{},"200":{},"201":{},"202":{},"203":{},"204":{},"205":{},"206":{},"207":{},"208":{},"209":{},"210":{},"211":{},"212":{},"213":{},"214":{},"215":{},"216":{}}}],["core/effect/preset/smoke",{"_index":170,"name":{"217":{}},"parent":{"218":{}}}],["core/effect/preset/smoke.smokeeffect",{"_index":172,"name":{},"parent":{"219":{},"220":{},"221":{},"222":{},"223":{},"224":{},"225":{},"226":{},"227":{},"228":{},"229":{},"230":{},"231":{},"232":{},"233":{},"234":{},"235":{},"236":{},"237":{},"238":{},"239":{},"240":{}}}],["core/events/eventemitter",{"_index":176,"name":{"241":{}},"parent":{"242":{}}}],["core/events/eventemitter.eventemitter",{"_index":177,"name":{},"parent":{"243":{},"244":{},"245":{},"246":{},"247":{},"248":{}}}],["core/events/events",{"_index":179,"name":{"249":{}},"parent":{"250":{}}}],["core/events/events.events",{"_index":181,"name":{},"parent":{"251":{}}}],["core/events/events.events.__type",{"_index":183,"name":{},"parent":{"252":{},"253":{},"257":{},"258":{},"261":{},"262":{},"266":{},"267":{},"288":{},"289":{},"292":{},"293":{}}}],["core/events/events.events.__type.__type",{"_index":185,"name":{},"parent":{"254":{},"255":{},"256":{},"259":{},"260":{},"263":{},"264":{},"265":{},"268":{},"269":{},"270":{},"271":{},"272":{},"273":{},"274":{},"275":{},"276":{},"277":{},"278":{},"279":{},"280":{},"281":{},"282":{},"283":{},"284":{},"285":{},"286":{},"287":{},"290":{},"291":{},"294":{},"295":{},"296":{},"297":{},"298":{}}}],["core/events/main/displayevents",{"_index":210,"name":{"299":{}},"parent":{"300":{}}}],["core/events/main/displayevents.displayevents",{"_index":212,"name":{},"parent":{"301":{}}}],["core/events/main/displayevents.displayevents.__type",{"_index":213,"name":{},"parent":{"302":{},"303":{},"304":{},"305":{},"306":{}}}],["core/events/main/gameevents",{"_index":214,"name":{"307":{}},"parent":{"308":{}}}],["core/events/main/gameevents.gameevents",{"_index":216,"name":{},"parent":{"309":{}}}],["core/events/main/gameevents.gameevents.__type",{"_index":217,"name":{},"parent":{"310":{},"311":{},"312":{},"313":{},"314":{},"315":{},"316":{},"317":{},"318":{},"319":{},"320":{},"321":{},"322":{},"323":{},"324":{},"325":{},"326":{},"327":{},"328":{},"329":{}}}],["core/events/main/rendererevents",{"_index":218,"name":{"330":{}},"parent":{"331":{}}}],["core/events/main/rendererevents.rendererevents",{"_index":220,"name":{},"parent":{"332":{}}}],["core/events/main/rendererevents.rendererevents.__type",{"_index":221,"name":{},"parent":{"333":{},"334":{}}}],["core/events/other/buttonevents",{"_index":222,"name":{"335":{}},"parent":{"336":{}}}],["core/events/other/buttonevents.buttonevents",{"_index":224,"name":{},"parent":{"337":{}}}],["core/events/other/buttonevents.buttonevents.__type",{"_index":225,"name":{},"parent":{"338":{},"339":{},"340":{}}}],["core/events/other/cutsceneevents",{"_index":226,"name":{"341":{}},"parent":{"342":{}}}],["core/events/other/cutsceneevents.cutsceneevents",{"_index":228,"name":{},"parent":{"343":{}}}],["core/events/other/cutsceneevents.cutsceneevents.__type",{"_index":229,"name":{},"parent":{"344":{},"345":{},"346":{}}}],["core/events/other/groupevents",{"_index":230,"name":{"347":{}},"parent":{"348":{}}}],["core/events/other/groupevents.groupevents",{"_index":232,"name":{},"parent":{"349":{}}}],["core/events/other/groupevents.groupevents.__type",{"_index":233,"name":{},"parent":{"350":{},"351":{}}}],["core/game",{"_index":234,"name":{"352":{}},"parent":{"353":{}}}],["core/game.game",{"_index":236,"name":{},"parent":{"354":{},"355":{},"356":{},"357":{},"358":{},"359":{},"360":{},"361":{},"362":{},"363":{},"364":{},"365":{},"366":{},"367":{},"368":{},"369":{},"370":{},"371":{},"372":{},"375":{},"376":{},"377":{},"378":{},"379":{},"380":{},"381":{},"382":{},"383":{},"384":{},"385":{},"386":{},"387":{},"388":{},"389":{},"390":{},"391":{},"392":{},"393":{}}}],["core/game.game.__type",{"_index":249,"name":{},"parent":{"373":{},"374":{}}}],["core/gameobjects/circle",{"_index":264,"name":{"394":{}},"parent":{"395":{}}}],["core/gameobjects/circle.circle",{"_index":266,"name":{},"parent":{"396":{},"397":{},"398":{},"399":{},"400":{},"401":{},"402":{},"403":{},"404":{},"405":{},"406":{},"407":{},"408":{},"409":{},"410":{},"411":{},"412":{},"413":{},"414":{},"415":{},"416":{},"417":{},"418":{},"419":{},"420":{},"421":{},"422":{},"423":{},"424":{},"428":{},"429":{},"430":{},"431":{},"432":{},"433":{},"434":{},"435":{},"436":{},"437":{},"438":{},"439":{},"440":{},"441":{},"442":{},"443":{},"444":{},"445":{},"446":{},"447":{},"448":{},"449":{},"450":{},"451":{},"452":{},"453":{}}}],["core/gameobjects/circle.circle.__type",{"_index":282,"name":{},"parent":{"425":{},"426":{},"427":{}}}],["core/gameobjects/gameobject",{"_index":310,"name":{"454":{}},"parent":{"455":{}}}],["core/gameobjects/gameobject.gameobject",{"_index":312,"name":{},"parent":{"456":{},"457":{},"458":{},"459":{},"460":{},"461":{},"462":{},"463":{},"464":{},"465":{},"466":{},"467":{},"468":{},"469":{},"470":{},"471":{},"472":{},"473":{},"474":{},"475":{},"476":{},"477":{},"478":{},"479":{},"480":{},"481":{},"482":{},"483":{},"484":{},"488":{},"489":{},"490":{},"491":{},"492":{},"493":{},"494":{},"495":{},"496":{},"497":{},"498":{},"499":{},"500":{},"501":{},"502":{},"503":{},"504":{},"505":{},"506":{},"507":{},"508":{},"509":{},"510":{},"511":{},"512":{},"513":{}}}],["core/gameobjects/gameobject.gameobject.__type",{"_index":313,"name":{},"parent":{"485":{},"486":{},"487":{}}}],["core/gameobjects/misc/canvasmodulate",{"_index":314,"name":{"514":{}},"parent":{"515":{}}}],["core/gameobjects/misc/canvasmodulate.canvasmodulate",{"_index":316,"name":{},"parent":{"516":{},"517":{},"518":{},"519":{},"520":{},"521":{},"522":{},"523":{},"524":{},"525":{},"526":{},"527":{},"528":{},"529":{},"530":{},"531":{},"532":{},"533":{},"534":{},"535":{},"536":{},"537":{},"538":{},"539":{},"540":{},"541":{},"542":{},"543":{},"544":{},"548":{},"549":{},"550":{},"551":{},"552":{},"553":{},"554":{},"555":{},"556":{},"557":{},"558":{},"559":{},"560":{},"561":{},"562":{},"563":{},"564":{},"565":{},"566":{},"567":{},"568":{},"569":{},"570":{},"571":{},"572":{},"573":{}}}],["core/gameobjects/misc/canvasmodulate.canvasmodulate.__type",{"_index":317,"name":{},"parent":{"545":{},"546":{},"547":{}}}],["core/gameobjects/particles/components/containedparticlecomponent",{"_index":318,"name":{"574":{}},"parent":{"575":{}}}],["core/gameobjects/particles/components/containedparticlecomponent.containedparticlecomponent",{"_index":320,"name":{},"parent":{"576":{},"577":{},"578":{},"579":{},"580":{},"581":{},"582":{}}}],["core/gameobjects/particles/components/gravityparticlecomponent",{"_index":322,"name":{"583":{}},"parent":{"584":{}}}],["core/gameobjects/particles/components/gravityparticlecomponent.gravityparticlecomponent",{"_index":324,"name":{},"parent":{"585":{},"586":{},"587":{},"588":{},"589":{},"590":{}}}],["core/gameobjects/particles/particle",{"_index":326,"name":{"591":{}},"parent":{"592":{}}}],["core/gameobjects/particles/particle.particle",{"_index":328,"name":{},"parent":{"593":{},"594":{},"595":{},"596":{},"597":{},"598":{},"599":{},"600":{},"601":{},"602":{},"603":{},"604":{},"605":{},"606":{},"607":{},"608":{},"609":{},"610":{},"611":{},"612":{},"613":{},"614":{},"615":{},"616":{},"617":{},"618":{},"619":{},"620":{},"621":{},"622":{},"623":{},"624":{},"625":{},"626":{},"630":{},"631":{},"632":{},"633":{},"634":{},"635":{},"636":{},"637":{},"638":{},"639":{},"640":{},"641":{},"642":{},"643":{},"644":{},"645":{},"646":{},"647":{},"648":{},"649":{},"650":{},"651":{},"652":{},"653":{},"654":{}}}],["core/gameobjects/particles/particle.particle.__type",{"_index":333,"name":{},"parent":{"627":{},"628":{},"629":{}}}],["core/gameobjects/particles/particlecomponent",{"_index":334,"name":{"655":{}},"parent":{"656":{}}}],["core/gameobjects/particles/particlecomponent.particlecomponent",{"_index":336,"name":{},"parent":{"657":{},"658":{},"659":{},"660":{},"661":{}}}],["core/gameobjects/particles/particleemitter",{"_index":337,"name":{"662":{}},"parent":{"663":{}}}],["core/gameobjects/particles/particleemitter.particleemitter",{"_index":338,"name":{},"parent":{"664":{},"665":{},"666":{},"667":{},"668":{},"669":{},"670":{},"671":{},"672":{},"673":{},"674":{},"675":{},"676":{},"677":{},"678":{},"679":{},"680":{},"681":{},"682":{},"683":{},"684":{},"685":{},"686":{},"687":{},"688":{},"689":{},"690":{},"691":{}}}],["core/gameobjects/rect",{"_index":353,"name":{"692":{}},"parent":{"693":{}}}],["core/gameobjects/rect.rect",{"_index":355,"name":{},"parent":{"694":{},"695":{},"696":{},"697":{},"698":{},"699":{},"700":{},"701":{},"702":{},"703":{},"704":{},"705":{},"706":{},"707":{},"708":{},"709":{},"710":{},"711":{},"712":{},"713":{},"714":{},"715":{},"716":{},"717":{},"718":{},"719":{},"720":{},"721":{},"722":{},"726":{},"727":{},"728":{},"729":{},"730":{},"731":{},"732":{},"733":{},"734":{},"735":{},"736":{},"737":{},"738":{},"739":{},"740":{},"741":{},"742":{},"743":{},"744":{},"745":{},"746":{},"747":{},"748":{},"749":{},"750":{},"751":{}}}],["core/gameobjects/rect.rect.__type",{"_index":356,"name":{},"parent":{"723":{},"724":{},"725":{}}}],["core/gameobjects/roundrect",{"_index":357,"name":{"752":{}},"parent":{"753":{}}}],["core/gameobjects/roundrect.roundrect",{"_index":359,"name":{},"parent":{"754":{},"755":{},"756":{},"757":{},"758":{},"759":{},"760":{},"761":{},"762":{},"763":{},"764":{},"765":{},"766":{},"767":{},"768":{},"769":{},"770":{},"771":{},"772":{},"773":{},"774":{},"775":{},"776":{},"777":{},"778":{},"779":{},"780":{},"781":{},"782":{},"786":{},"787":{},"788":{},"789":{},"790":{},"791":{},"792":{},"793":{},"794":{},"795":{},"796":{},"797":{},"798":{},"799":{},"800":{},"801":{},"802":{},"803":{},"804":{},"805":{},"806":{},"807":{},"808":{},"809":{},"810":{},"811":{}}}],["core/gameobjects/roundrect.roundrect.__type",{"_index":360,"name":{},"parent":{"783":{},"784":{},"785":{}}}],["core/gameobjects/sprite",{"_index":361,"name":{"812":{}},"parent":{"813":{}}}],["core/gameobjects/sprite.sprite",{"_index":362,"name":{},"parent":{"814":{},"815":{},"816":{},"817":{},"818":{},"819":{},"820":{},"821":{},"822":{},"823":{},"824":{},"825":{},"826":{},"827":{},"828":{},"829":{},"830":{},"831":{},"832":{},"833":{},"834":{},"835":{},"836":{},"837":{},"838":{},"839":{},"840":{},"841":{},"842":{},"843":{},"844":{},"845":{},"846":{},"847":{},"851":{},"852":{},"853":{},"854":{},"855":{},"856":{},"857":{},"858":{},"859":{},"860":{},"861":{},"862":{},"863":{},"864":{},"865":{},"866":{},"867":{},"868":{},"869":{},"870":{},"871":{},"872":{},"873":{},"874":{},"875":{},"876":{}}}],["core/gameobjects/sprite.sprite.__type",{"_index":367,"name":{},"parent":{"848":{},"849":{},"850":{}}}],["core/gameobjects/ui/button",{"_index":368,"name":{"877":{}},"parent":{"878":{}}}],["core/gameobjects/ui/button.button",{"_index":369,"name":{},"parent":{"879":{},"880":{},"881":{},"882":{},"883":{},"884":{},"885":{},"886":{},"887":{},"888":{},"889":{},"890":{},"891":{},"892":{},"893":{},"894":{},"895":{},"896":{},"897":{},"898":{},"899":{},"900":{},"901":{},"902":{},"903":{},"904":{},"905":{},"906":{},"907":{},"908":{},"909":{},"910":{},"911":{},"915":{},"916":{},"917":{},"918":{},"919":{},"920":{},"921":{},"922":{},"923":{},"924":{},"925":{},"926":{},"927":{},"928":{},"929":{},"930":{},"931":{},"932":{},"933":{},"934":{},"935":{},"936":{},"937":{},"938":{},"939":{},"940":{}}}],["core/gameobjects/ui/button.button.__type",{"_index":372,"name":{},"parent":{"912":{},"913":{},"914":{}}}],["core/gameobjects/ui/container",{"_index":373,"name":{"941":{}},"parent":{"942":{}}}],["core/gameobjects/ui/container.container",{"_index":375,"name":{},"parent":{"943":{},"944":{},"945":{},"946":{},"947":{},"948":{},"949":{},"950":{},"951":{},"952":{},"953":{},"954":{},"955":{},"956":{},"957":{},"958":{},"959":{},"960":{},"961":{},"962":{},"963":{},"964":{},"965":{},"966":{},"967":{},"968":{},"969":{},"970":{},"971":{},"972":{},"973":{},"974":{},"975":{},"979":{},"980":{},"981":{},"982":{},"983":{},"984":{},"985":{},"986":{},"987":{},"988":{},"989":{},"990":{},"991":{},"992":{},"993":{},"994":{},"995":{},"996":{},"997":{},"998":{},"999":{},"1000":{},"1001":{},"1002":{},"1003":{},"1004":{}}}],["core/gameobjects/ui/container.container.__type",{"_index":379,"name":{},"parent":{"976":{},"977":{},"978":{}}}],["core/gameobjects/ui/imagerect",{"_index":380,"name":{"1005":{}},"parent":{"1006":{}}}],["core/gameobjects/ui/imagerect.imagerect",{"_index":382,"name":{},"parent":{"1007":{},"1008":{},"1009":{},"1010":{},"1011":{},"1012":{},"1013":{},"1014":{},"1015":{},"1016":{},"1017":{},"1018":{},"1019":{},"1020":{},"1021":{},"1022":{},"1023":{},"1024":{},"1025":{},"1026":{},"1027":{},"1028":{},"1029":{},"1030":{},"1031":{},"1032":{},"1033":{},"1034":{},"1035":{},"1039":{},"1040":{},"1041":{},"1042":{},"1043":{},"1044":{},"1045":{},"1046":{},"1047":{},"1048":{},"1049":{},"1050":{},"1051":{},"1052":{},"1053":{},"1054":{},"1055":{},"1056":{},"1057":{},"1058":{},"1059":{},"1060":{},"1061":{},"1062":{},"1063":{},"1064":{}}}],["core/gameobjects/ui/imagerect.imagerect.__type",{"_index":383,"name":{},"parent":{"1036":{},"1037":{},"1038":{}}}],["core/gameobjects/ui/panel",{"_index":384,"name":{"1065":{}},"parent":{"1066":{}}}],["core/gameobjects/ui/panel.panel",{"_index":386,"name":{},"parent":{"1067":{},"1068":{},"1069":{},"1070":{},"1071":{},"1072":{},"1073":{},"1074":{},"1075":{},"1076":{},"1077":{},"1078":{},"1079":{},"1080":{},"1081":{},"1082":{},"1083":{},"1084":{},"1085":{},"1086":{},"1087":{},"1088":{},"1089":{},"1090":{},"1091":{},"1092":{},"1093":{},"1094":{},"1095":{},"1099":{},"1100":{},"1101":{},"1102":{},"1103":{},"1104":{},"1105":{},"1106":{},"1107":{},"1108":{},"1109":{},"1110":{},"1111":{},"1112":{},"1113":{},"1114":{},"1115":{},"1116":{},"1117":{},"1118":{},"1119":{},"1120":{},"1121":{},"1122":{},"1123":{},"1124":{}}}],["core/gameobjects/ui/panel.panel.__type",{"_index":387,"name":{},"parent":{"1096":{},"1097":{},"1098":{}}}],["core/gameobjects/ui/text",{"_index":388,"name":{"1125":{}},"parent":{"1126":{}}}],["core/gameobjects/ui/text.text",{"_index":389,"name":{},"parent":{"1127":{},"1128":{},"1129":{},"1130":{},"1131":{},"1132":{},"1133":{},"1134":{},"1135":{},"1136":{},"1137":{},"1138":{},"1139":{},"1140":{},"1141":{},"1142":{},"1143":{},"1144":{},"1145":{},"1146":{},"1147":{},"1148":{},"1149":{},"1150":{},"1151":{},"1152":{},"1153":{},"1154":{},"1155":{},"1156":{},"1157":{},"1158":{},"1159":{},"1160":{},"1164":{},"1165":{},"1166":{},"1167":{},"1168":{},"1169":{},"1170":{},"1171":{},"1172":{},"1173":{},"1174":{},"1175":{},"1176":{},"1177":{},"1178":{},"1179":{},"1180":{},"1181":{},"1182":{},"1183":{},"1184":{},"1185":{},"1186":{},"1187":{},"1188":{},"1189":{}}}],["core/gameobjects/ui/text.text.__type",{"_index":393,"name":{},"parent":{"1161":{},"1162":{},"1163":{}}}],["core/gameobjects/ui/ui",{"_index":394,"name":{"1190":{}},"parent":{"1191":{}}}],["core/gameobjects/ui/ui.ui",{"_index":396,"name":{},"parent":{"1192":{},"1193":{},"1194":{},"1195":{},"1196":{},"1197":{},"1198":{},"1199":{},"1200":{},"1201":{},"1202":{},"1203":{},"1204":{},"1205":{},"1206":{},"1207":{},"1208":{},"1209":{},"1210":{},"1211":{},"1212":{},"1213":{},"1214":{},"1215":{},"1216":{},"1217":{},"1218":{},"1219":{},"1220":{},"1224":{},"1225":{},"1226":{},"1227":{},"1228":{},"1229":{},"1230":{},"1231":{},"1232":{},"1233":{},"1234":{},"1235":{},"1236":{},"1237":{},"1238":{},"1239":{},"1240":{},"1241":{},"1242":{},"1243":{},"1244":{},"1245":{},"1246":{},"1247":{},"1248":{},"1249":{}}}],["core/gameobjects/ui/ui.ui.__type",{"_index":397,"name":{},"parent":{"1221":{},"1222":{},"1223":{}}}],["core/group/group",{"_index":398,"name":{"1250":{}},"parent":{"1251":{}}}],["core/group/group.group",{"_index":399,"name":{},"parent":{"1252":{},"1253":{},"1254":{},"1255":{},"1256":{},"1257":{},"1258":{},"1259":{},"1260":{},"1261":{},"1262":{},"1263":{},"1264":{},"1265":{},"1266":{},"1267":{},"1268":{},"1269":{}}}],["core/input/input",{"_index":410,"name":{"1270":{}},"parent":{"1271":{}}}],["core/input/input.input",{"_index":412,"name":{},"parent":{"1272":{},"1273":{},"1274":{},"1275":{},"1276":{}}}],["core/input/keyboardinput",{"_index":415,"name":{"1277":{}},"parent":{"1278":{}}}],["core/input/keyboardinput.keyboardinput",{"_index":417,"name":{},"parent":{"1279":{},"1280":{},"1281":{},"1282":{},"1283":{},"1284":{},"1285":{},"1286":{},"1287":{},"1288":{},"1289":{}}}],["core/input/models/key",{"_index":424,"name":{"1290":{}},"parent":{"1291":{}}}],["core/input/models/key.key",{"_index":425,"name":{},"parent":{"1292":{},"1293":{},"1294":{},"1295":{},"1296":{},"1297":{},"1298":{},"1299":{},"1300":{},"1301":{},"1302":{},"1303":{}}}],["core/input/models/mouse",{"_index":433,"name":{"1304":{}},"parent":{"1305":{}}}],["core/input/models/mouse.mouse",{"_index":435,"name":{},"parent":{"1306":{},"1307":{},"1308":{},"1309":{},"1310":{},"1311":{},"1312":{}}}],["core/input/mouseinput",{"_index":437,"name":{"1313":{}},"parent":{"1314":{}}}],["core/input/mouseinput.mouseinput",{"_index":438,"name":{},"parent":{"1315":{},"1316":{},"1317":{},"1318":{},"1319":{},"1320":{},"1321":{},"1322":{},"1323":{}}}],["core/input/server/inputserver",{"_index":442,"name":{"1324":{}},"parent":{"1325":{}}}],["core/input/server/inputserver.inputserver",{"_index":444,"name":{},"parent":{"1326":{},"1327":{},"1328":{},"1329":{}}}],["core/lights/staticlight",{"_index":446,"name":{"1330":{}},"parent":{"1331":{}}}],["core/lights/staticlight.staticlight",{"_index":448,"name":{},"parent":{"1332":{},"1333":{},"1334":{},"1335":{},"1336":{},"1337":{},"1338":{},"1339":{},"1340":{},"1341":{},"1342":{},"1343":{},"1344":{},"1345":{},"1346":{},"1347":{},"1348":{},"1349":{},"1350":{},"1351":{},"1352":{},"1353":{},"1354":{},"1355":{},"1356":{},"1357":{},"1358":{},"1359":{},"1360":{},"1361":{},"1362":{},"1363":{},"1367":{},"1368":{},"1369":{},"1370":{},"1371":{},"1372":{},"1373":{},"1374":{},"1375":{},"1376":{},"1377":{},"1378":{},"1379":{},"1380":{},"1381":{},"1382":{},"1383":{},"1384":{},"1385":{},"1386":{},"1387":{},"1388":{},"1389":{},"1390":{},"1391":{},"1392":{}}}],["core/lights/staticlight.staticlight.__type",{"_index":451,"name":{},"parent":{"1364":{},"1365":{},"1366":{}}}],["core/loader/loader",{"_index":452,"name":{"1393":{}},"parent":{"1394":{}}}],["core/loader/loader.loader",{"_index":454,"name":{},"parent":{"1395":{},"1396":{},"1397":{},"1398":{},"1399":{},"1400":{},"1401":{},"1402":{},"1403":{},"1404":{},"1405":{},"1406":{},"1407":{},"1408":{},"1409":{},"1410":{},"1411":{},"1412":{},"1413":{},"1414":{},"1415":{}}}],["core/map/map",{"_index":473,"name":{"1416":{}},"parent":{"1417":{}}}],["core/map/map.map",{"_index":475,"name":{},"parent":{"1418":{},"1419":{},"1420":{},"1421":{},"1422":{},"1423":{},"1424":{},"1425":{},"1426":{},"1427":{},"1428":{}}}],["core/map/tile",{"_index":478,"name":{"1429":{}},"parent":{"1430":{}}}],["core/map/tile.tile",{"_index":480,"name":{},"parent":{"1431":{},"1432":{},"1433":{},"1434":{},"1435":{}}}],["core/map/tilelayer",{"_index":481,"name":{"1436":{}},"parent":{"1437":{}}}],["core/map/tilelayer.tilelayer",{"_index":483,"name":{},"parent":{"1438":{},"1439":{},"1440":{},"1441":{},"1442":{},"1443":{},"1444":{}}}],["core/map/tilemap",{"_index":485,"name":{"1445":{}},"parent":{"1446":{}}}],["core/map/tilemap.tilemap",{"_index":487,"name":{},"parent":{"1447":{},"1448":{},"1449":{},"1450":{},"1451":{},"1452":{},"1453":{},"1454":{},"1455":{},"1456":{},"1457":{},"1458":{}}}],["core/map/tileset",{"_index":489,"name":{"1459":{}},"parent":{"1460":{}}}],["core/map/tileset.tileset",{"_index":490,"name":{},"parent":{"1461":{},"1462":{},"1463":{},"1464":{},"1465":{},"1466":{},"1467":{},"1468":{},"1469":{},"1470":{},"1471":{},"1472":{}}}],["core/math/clamp",{"_index":499,"name":{"1473":{}},"parent":{"1474":{}}}],["core/math/lerp",{"_index":501,"name":{"1475":{}},"parent":{"1476":{}}}],["core/math/randomfloat",{"_index":503,"name":{"1477":{}},"parent":{"1478":{}}}],["core/math/randomint",{"_index":505,"name":{"1479":{}},"parent":{"1480":{}}}],["core/math/vector2",{"_index":507,"name":{"1481":{}},"parent":{"1482":{}}}],["core/math/vector2.vector2",{"_index":510,"name":{},"parent":{"1483":{},"1484":{},"1485":{},"1486":{},"1487":{},"1488":{},"1489":{},"1490":{},"1491":{},"1492":{},"1493":{},"1494":{},"1495":{},"1496":{},"1497":{},"1498":{},"1499":{},"1500":{},"1501":{},"1502":{},"1503":{},"1504":{},"1505":{},"1506":{},"1507":{},"1508":{},"1509":{},"1510":{},"1511":{},"1512":{},"1513":{},"1514":{},"1515":{},"1516":{},"1517":{},"1518":{},"1519":{},"1520":{},"1521":{},"1522":{},"1523":{},"1524":{},"1525":{},"1526":{},"1527":{},"1528":{},"1529":{},"1530":{},"1531":{},"1532":{},"1533":{},"1534":{},"1535":{}}}],["core/misc/pluginmanager",{"_index":556,"name":{"1536":{}},"parent":{"1537":{}}}],["core/misc/pluginmanager.pluginmanager",{"_index":557,"name":{},"parent":{"1538":{},"1539":{},"1540":{},"1541":{},"1542":{},"1543":{},"1544":{}}}],["core/models/displaylist",{"_index":562,"name":{"1545":{}},"parent":{"1546":{}}}],["core/models/displaylist.displaylist",{"_index":564,"name":{},"parent":{"1547":{},"1548":{},"1549":{},"1550":{},"1551":{},"1552":{},"1553":{},"1554":{},"1555":{},"1556":{},"1557":{}}}],["core/models/physicslist",{"_index":568,"name":{"1558":{}},"parent":{"1559":{}}}],["core/models/physicslist.physicslist",{"_index":570,"name":{},"parent":{"1560":{},"1561":{},"1562":{},"1563":{},"1564":{},"1565":{},"1566":{},"1567":{},"1568":{}}}],["core/physics/models/area",{"_index":572,"name":{"1569":{}},"parent":{"1570":{}}}],["core/physics/models/area.area",{"_index":574,"name":{},"parent":{"1571":{},"1572":{},"1573":{},"1574":{},"1575":{},"1576":{},"1577":{},"1578":{},"1579":{},"1580":{},"1581":{},"1582":{},"1583":{},"1584":{},"1585":{},"1586":{},"1587":{},"1588":{},"1589":{},"1590":{},"1591":{},"1592":{},"1593":{},"1594":{},"1595":{},"1596":{},"1597":{},"1598":{},"1599":{},"1603":{},"1604":{},"1605":{},"1606":{},"1607":{},"1608":{},"1609":{},"1610":{},"1611":{},"1612":{},"1613":{},"1614":{},"1615":{},"1616":{},"1617":{},"1618":{},"1619":{},"1620":{},"1621":{},"1622":{},"1623":{},"1624":{},"1625":{},"1626":{},"1627":{}}}],["core/physics/models/area.area.__type",{"_index":582,"name":{},"parent":{"1600":{},"1601":{},"1602":{}}}],["core/physics/models/collider",{"_index":583,"name":{"1628":{}},"parent":{"1629":{}}}],["core/physics/models/collider.collider",{"_index":584,"name":{},"parent":{"1630":{},"1631":{},"1632":{},"1633":{},"1634":{},"1635":{}}}],["core/physics/models/hitbox",{"_index":586,"name":{"1636":{}},"parent":{"1637":{}}}],["core/physics/models/hitbox.hitbox",{"_index":587,"name":{},"parent":{"1638":{},"1639":{},"1640":{},"1641":{},"1642":{},"1643":{},"1644":{},"1645":{},"1646":{},"1647":{},"1648":{},"1649":{},"1650":{},"1651":{},"1652":{},"1653":{},"1654":{},"1655":{},"1656":{},"1657":{},"1658":{},"1659":{},"1660":{},"1661":{},"1662":{},"1663":{},"1664":{},"1665":{},"1666":{},"1667":{}}}],["core/physics/physicsbody",{"_index":598,"name":{"1668":{}},"parent":{"1669":{}}}],["core/physics/physicsbody.physicsbody",{"_index":600,"name":{},"parent":{"1670":{},"1671":{},"1672":{},"1673":{},"1674":{},"1675":{},"1676":{},"1677":{},"1678":{},"1679":{},"1680":{},"1681":{},"1682":{},"1683":{},"1684":{},"1685":{},"1686":{},"1687":{},"1688":{},"1689":{},"1690":{},"1694":{},"1695":{},"1696":{},"1697":{},"1698":{},"1699":{},"1700":{},"1701":{},"1702":{},"1703":{},"1704":{},"1705":{},"1706":{},"1707":{},"1708":{},"1709":{},"1710":{},"1711":{},"1712":{},"1713":{},"1714":{},"1715":{},"1716":{},"1717":{},"1718":{},"1719":{}}}],["core/physics/physicsbody.physicsbody.__type",{"_index":601,"name":{},"parent":{"1691":{},"1692":{},"1693":{}}}],["core/physics/server/physicsserver",{"_index":602,"name":{"1720":{}},"parent":{"1721":{}}}],["core/physics/server/physicsserver.physicsserver",{"_index":604,"name":{},"parent":{"1722":{},"1723":{},"1724":{},"1725":{}}}],["core/physics/utils/circletorectintersect",{"_index":605,"name":{"1726":{}},"parent":{"1727":{}}}],["core/physics/utils/hitboxfaceintersect",{"_index":607,"name":{"1728":{}},"parent":{"1729":{}}}],["core/physics/utils/recttorectintersect",{"_index":609,"name":{"1730":{}},"parent":{"1731":{}}}],["core/renderer/baserenderer",{"_index":611,"name":{"1732":{}},"parent":{"1733":{}}}],["core/renderer/baserenderer.baserenderer",{"_index":613,"name":{},"parent":{"1734":{},"1735":{},"1736":{},"1737":{},"1738":{},"1739":{},"1740":{},"1741":{},"1742":{},"1743":{},"1744":{},"1745":{},"1746":{},"1747":{},"1748":{},"1749":{},"1750":{},"1751":{},"1752":{},"1753":{}}}],["core/renderer/canvas/canvasrenderer",{"_index":629,"name":{"1754":{}},"parent":{"1755":{}}}],["core/renderer/canvas/canvasrenderer.canvasrenderer",{"_index":631,"name":{},"parent":{"1756":{},"1757":{},"1758":{},"1759":{},"1760":{},"1761":{},"1762":{},"1763":{},"1764":{},"1765":{},"1766":{},"1767":{},"1768":{},"1769":{},"1770":{},"1771":{},"1772":{},"1773":{},"1774":{},"1775":{},"1776":{},"1777":{},"1778":{},"1779":{}}}],["core/renderer/canvas/const/blendmodes",{"_index":636,"name":{"1780":{}},"parent":{"1781":{}}}],["core/renderer/canvas/const/blendmodes.blendmodes",{"_index":638,"name":{},"parent":{"1782":{}}}],["core/renderer/canvas/const/blendmodes.blendmodes.__type",{"_index":641,"name":{},"parent":{"1783":{},"1784":{},"1785":{},"1786":{},"1787":{},"1788":{},"1789":{},"1790":{},"1791":{},"1792":{},"1793":{},"1794":{},"1795":{},"1796":{},"1797":{},"1798":{},"1799":{},"1800":{},"1801":{},"1802":{},"1803":{},"1804":{},"1805":{},"1806":{},"1807":{},"1808":{}}}],["core/renderer/canvas/pipeline/rendererpipeline",{"_index":663,"name":{"1809":{}},"parent":{"1810":{}}}],["core/renderer/canvas/pipeline/rendererpipeline.rendererpipeline",{"_index":665,"name":{},"parent":{"1811":{},"1812":{},"1813":{},"1814":{},"1815":{},"1816":{},"1817":{},"1818":{}}}],["core/renderer/models/color",{"_index":672,"name":{"1819":{}},"parent":{"1820":{}}}],["core/renderer/models/color.color",{"_index":674,"name":{},"parent":{"1821":{},"1822":{},"1823":{},"1824":{},"1825":{},"1826":{},"1827":{},"1828":{},"1829":{},"1830":{},"1831":{},"1832":{},"1833":{},"1834":{},"1835":{},"1836":{},"1837":{},"1838":{},"1839":{},"1840":{},"1841":{},"1842":{},"1843":{},"1844":{},"1845":{},"1846":{}}}],["core/scene",{"_index":699,"name":{"1847":{}},"parent":{"1848":{}}}],["core/scene.scene",{"_index":700,"name":{},"parent":{"1849":{},"1850":{},"1851":{},"1852":{},"1853":{},"1854":{},"1855":{},"1856":{},"1857":{},"1858":{},"1859":{},"1860":{},"1861":{},"1862":{},"1863":{},"1864":{},"1865":{},"1866":{},"1906":{},"1907":{},"1946":{},"1947":{},"1948":{},"1949":{},"1950":{},"1951":{},"1952":{},"1953":{}}}],["core/scene.scene.__type",{"_index":707,"name":{},"parent":{"1867":{},"1868":{},"1869":{},"1878":{},"1879":{},"1881":{},"1882":{},"1885":{},"1886":{},"1887":{},"1888":{},"1889":{},"1890":{},"1892":{},"1893":{},"1894":{},"1895":{},"1896":{},"1897":{},"1901":{},"1902":{},"1903":{},"1908":{},"1909":{},"1910":{},"1911":{},"1934":{},"1935":{},"1938":{},"1939":{}}}],["core/scene.scene.__type.__type",{"_index":709,"name":{},"parent":{"1870":{},"1871":{},"1873":{},"1874":{},"1875":{},"1876":{},"1877":{},"1880":{},"1883":{},"1884":{},"1891":{},"1898":{},"1899":{},"1900":{},"1904":{},"1905":{},"1912":{},"1913":{},"1914":{},"1915":{},"1919":{},"1920":{},"1936":{},"1937":{},"1940":{},"1941":{},"1942":{},"1943":{},"1944":{},"1945":{}}}],["core/scene.scene.__type.__type.__type",{"_index":710,"name":{},"parent":{"1872":{},"1916":{},"1917":{},"1918":{},"1921":{},"1922":{},"1925":{},"1926":{},"1929":{},"1930":{}}}],["core/scene.scene.__type.__type.__type.__type",{"_index":724,"name":{},"parent":{"1923":{},"1924":{},"1927":{},"1928":{},"1931":{},"1932":{},"1933":{}}}],["core/sound/models/basesoundplayer",{"_index":738,"name":{"1954":{}},"parent":{"1955":{}}}],["core/sound/models/basesoundplayer.basesoundplayer",{"_index":740,"name":{},"parent":{"1956":{},"1957":{},"1958":{},"1959":{},"1960":{},"1961":{},"1962":{},"1963":{},"1964":{},"1965":{},"1966":{},"1967":{},"1968":{},"1969":{},"1970":{},"1971":{},"1972":{},"1973":{},"1974":{},"1975":{},"1976":{},"1977":{},"1978":{},"1979":{},"1980":{},"1981":{},"1982":{}}}],["core/sound/models/htmlsoundplayer",{"_index":761,"name":{"1983":{}},"parent":{"1984":{}}}],["core/sound/models/htmlsoundplayer.htmlsoundplayer",{"_index":763,"name":{},"parent":{"1985":{},"1986":{},"1987":{},"1988":{},"1989":{},"1990":{},"1991":{},"1992":{},"1993":{},"1994":{},"1995":{},"1996":{},"1997":{},"1998":{},"1999":{},"2000":{},"2001":{},"2002":{},"2003":{},"2004":{},"2005":{},"2006":{},"2007":{},"2008":{},"2009":{},"2010":{},"2011":{},"2012":{}}}],["core/sound/models/misc/soundsprite",{"_index":765,"name":{"2013":{}},"parent":{"2014":{}}}],["core/sound/models/misc/soundsprite.soundsprite",{"_index":767,"name":{},"parent":{"2015":{},"2016":{},"2017":{},"2018":{},"2019":{},"2020":{},"2021":{}}}],["core/sound/models/websoundplayer",{"_index":769,"name":{"2022":{}},"parent":{"2023":{}}}],["core/sound/models/websoundplayer.websoundplayer",{"_index":771,"name":{},"parent":{"2024":{},"2025":{},"2026":{},"2027":{},"2028":{},"2029":{},"2030":{},"2031":{},"2032":{},"2033":{},"2034":{},"2035":{},"2036":{},"2037":{},"2038":{},"2039":{},"2040":{},"2041":{},"2042":{},"2043":{},"2044":{},"2045":{},"2046":{},"2047":{},"2048":{},"2049":{},"2050":{},"2051":{},"2052":{},"2053":{},"2054":{},"2055":{},"2056":{},"2057":{},"2058":{},"2059":{},"2060":{}}}],["core/sound/sound",{"_index":782,"name":{"2061":{}},"parent":{"2062":{}}}],["core/sound/sound.sound",{"_index":783,"name":{},"parent":{"2063":{},"2064":{},"2065":{},"2066":{},"2067":{}}}],["core/storage/cachemanager",{"_index":785,"name":{"2068":{}},"parent":{"2069":{}}}],["core/storage/cachemanager.cachemanager",{"_index":786,"name":{},"parent":{"2070":{},"2071":{},"2072":{},"2073":{},"2074":{},"2075":{},"2076":{},"2077":{},"2078":{},"2079":{},"2080":{},"2081":{},"2082":{}}}],["core/texture/texture",{"_index":794,"name":{"2083":{}},"parent":{"2084":{}}}],["core/texture/texture.texture",{"_index":796,"name":{},"parent":{"2085":{},"2086":{},"2087":{},"2088":{},"2089":{},"2090":{},"2091":{},"2092":{},"2093":{},"2094":{},"2095":{},"2096":{}}}],["core/texture/textureatlas",{"_index":801,"name":{"2097":{}},"parent":{"2098":{}}}],["core/texture/textureatlas.textureatlas",{"_index":803,"name":{},"parent":{"2099":{},"2100":{},"2101":{},"2102":{},"2103":{},"2104":{},"2105":{},"2106":{},"2107":{},"2108":{},"2109":{},"2110":{},"2111":{},"2112":{},"2113":{},"2114":{},"2115":{},"2116":{}}}],["core/texture/texturebase",{"_index":807,"name":{"2117":{}},"parent":{"2118":{}}}],["core/texture/texturebase.texturebase",{"_index":809,"name":{},"parent":{"2119":{},"2120":{},"2121":{},"2122":{},"2123":{},"2124":{},"2125":{},"2126":{},"2127":{},"2128":{},"2129":{},"2130":{}}}],["core/texture/texturesheet",{"_index":810,"name":{"2131":{}},"parent":{"2132":{}}}],["core/texture/texturesheet.texturesheet",{"_index":812,"name":{},"parent":{"2133":{},"2134":{},"2135":{},"2136":{},"2137":{},"2138":{},"2139":{},"2140":{},"2141":{},"2142":{},"2143":{},"2144":{},"2145":{},"2146":{},"2147":{},"2148":{}}}],["countby",{"_index":9,"name":{"8":{}},"parent":{}}],["create",{"_index":344,"name":{"677":{},"1488":{}},"parent":{}}],["createframes",{"_index":19,"name":{"18":{}},"parent":{}}],["createkeyboardinput",{"_index":413,"name":{"1275":{}},"parent":{}}],["createmouseinput",{"_index":414,"name":{"1276":{}},"parent":{}}],["createone",{"_index":345,"name":{"678":{}},"parent":{}}],["createsoundsprite",{"_index":752,"name":{"1974":{},"1996":{},"2049":{}},"parent":{}}],["createstatemachine",{"_index":45,"name":{"48":{}},"parent":{}}],["createtile",{"_index":497,"name":{"1471":{}},"parent":{}}],["createtimer",{"_index":737,"name":{"1953":{}},"parent":{}}],["createvector",{"_index":731,"name":{"1940":{}},"parent":{}}],["crossproduct",{"_index":534,"name":{"1512":{}},"parent":{}}],["ctx",{"_index":632,"name":{"1757":{}},"parent":{}}],["cull",{"_index":108,"name":{"129":{}},"parent":{}}],["culled",{"_index":158,"name":{"186":{},"212":{},"236":{},"401":{},"460":{},"521":{},"603":{},"699":{},"759":{},"826":{},"889":{},"951":{},"1012":{},"1072":{},"1137":{},"1196":{},"1340":{},"1427":{},"1458":{},"1650":{},"2314":{}},"parent":{}}],["cullingoptions",{"_index":1061,"name":{"2574":{}},"parent":{}}],["currentanimation",{"_index":44,"name":{"47":{}},"parent":{}}],["currentcamera",{"_index":702,"name":{"1854":{}},"parent":{}}],["currentcol",{"_index":364,"name":{"816":{}},"parent":{}}],["currentframe",{"_index":18,"name":{"17":{}},"parent":{}}],["currentindex",{"_index":17,"name":{"16":{}},"parent":{}}],["currentrow",{"_index":363,"name":{"815":{}},"parent":{}}],["currentstate",{"_index":61,"name":{"81":{}},"parent":{}}],["currenttime",{"_index":760,"name":{"1982":{},"2009":{},"2057":{}},"parent":{}}],["currentvolume",{"_index":757,"name":{"1979":{},"2006":{},"2054":{}},"parent":{}}],["customtick",{"_index":889,"name":{"2330":{}},"parent":{}}],["cutscene",{"_index":113,"name":{"134":{},"261":{},"1895":{},"2177":{},"2248":{},"2450":{}},"parent":{}}],["cutsceneevents",{"_index":227,"name":{"342":{}},"parent":{}}],["d_pad_down",{"_index":940,"name":{"2391":{},"2409":{}},"parent":{}}],["d_pad_left",{"_index":941,"name":{"2392":{},"2410":{}},"parent":{}}],["d_pad_right",{"_index":942,"name":{"2393":{},"2411":{}},"parent":{}}],["d_pad_up",{"_index":939,"name":{"2390":{},"2408":{}},"parent":{}}],["darkblue",{"_index":688,"name":{"1835":{}},"parent":{}}],["darken",{"_index":651,"name":{"1797":{}},"parent":{}}],["darkgreen",{"_index":685,"name":{"1832":{}},"parent":{}}],["darkorange",{"_index":679,"name":{"1826":{}},"parent":{}}],["darkpurple",{"_index":691,"name":{"1838":{}},"parent":{}}],["darkred",{"_index":676,"name":{"1823":{}},"parent":{}}],["darkyellow",{"_index":682,"name":{"1829":{}},"parent":{}}],["data",{"_index":1071,"name":{"2586":{}},"parent":{}}],["datatype",{"_index":800,"name":{"2091":{},"2111":{},"2125":{},"2143":{},"2517":{},"2523":{}},"parent":{}}],["date",{"_index":883,"name":{"2318":{}},"parent":{}}],["debug",{"_index":130,"name":{"155":{},"2331":{},"2335":{}},"parent":{}}],["debugcolor",{"_index":590,"name":{"1647":{}},"parent":{}}],["debugrendering",{"_index":892,"name":{"2336":{}},"parent":{}}],["default",{"_index":701,"name":{"1852":{}},"parent":{}}],["defaultanim",{"_index":366,"name":{"818":{}},"parent":{}}],["defaultfov",{"_index":111,"name":{"132":{}},"parent":{}}],["defaultscene",{"_index":885,"name":{"2321":{},"2347":{}},"parent":{}}],["defaultstate",{"_index":1046,"name":{"2556":{}},"parent":{}}],["defaultzoom",{"_index":110,"name":{"131":{}},"parent":{}}],["delay",{"_index":1034,"name":{"2541":{}},"parent":{}}],["delaytimer",{"_index":16,"name":{"15":{}},"parent":{}}],["delete",{"_index":790,"name":{"2077":{}},"parent":{}}],["deltatime",{"_index":240,"name":{"363":{}},"parent":{}}],["deltatimearray",{"_index":239,"name":{"362":{}},"parent":{}}],["depthsort",{"_index":565,"name":{"1552":{}},"parent":{}}],["descriptor",{"_index":427,"name":{"1294":{},"1308":{},"2561":{},"2569":{}},"parent":{}}],["destination",{"_index":645,"name":{"1787":{},"1788":{},"1789":{},"1790":{}},"parent":{}}],["detachchild",{"_index":290,"name":{"434":{},"494":{},"554":{},"635":{},"732":{},"792":{},"857":{},"921":{},"985":{},"1045":{},"1105":{},"1170":{},"1230":{},"1373":{},"1608":{},"1700":{}},"parent":{}}],["detachfrom",{"_index":289,"name":{"433":{},"493":{},"553":{},"634":{},"731":{},"791":{},"856":{},"920":{},"984":{},"1044":{},"1104":{},"1169":{},"1229":{},"1372":{},"1607":{},"1699":{}},"parent":{}}],["difference",{"_index":658,"name":{"1803":{}},"parent":{}}],["display",{"_index":209,"name":{"292":{}},"parent":{}}],["displayevents",{"_index":211,"name":{"300":{}},"parent":{}}],["displaylist",{"_index":563,"name":{"1546":{},"1857":{},"2199":{},"2270":{}},"parent":{}}],["displaymanager",{"_index":138,"name":{"163":{},"380":{}},"parent":{}}],["distance",{"_index":531,"name":{"1509":{}},"parent":{}}],["distancesqr",{"_index":532,"name":{"1510":{}},"parent":{}}],["divide",{"_index":525,"name":{"1503":{}},"parent":{}}],["dividenumber",{"_index":526,"name":{"1504":{}},"parent":{}}],["dodge",{"_index":653,"name":{"1799":{}},"parent":{}}],["dot",{"_index":533,"name":{"1511":{}},"parent":{}}],["down",{"_index":512,"name":{"1485":{}},"parent":{}}],["dprscale",{"_index":141,"name":{"168":{},"2343":{}},"parent":{}}],["draw_splash",{"_index":198,"name":{"279":{},"321":{}},"parent":{}}],["drawcircle",{"_index":616,"name":{"1738":{},"1775":{}},"parent":{}}],["drawrect",{"_index":615,"name":{"1737":{},"1774":{}},"parent":{}}],["drawroundrect",{"_index":617,"name":{"1739":{},"1776":{}},"parent":{}}],["drawsplashscreen",{"_index":256,"name":{"385":{}},"parent":{}}],["drawsprite",{"_index":618,"name":{"1740":{},"1777":{}},"parent":{}}],["drawtext",{"_index":624,"name":{"1748":{},"1770":{}},"parent":{}}],["duck",{"_index":815,"name":{"2150":{}},"parent":{}}],["duckengine",{"_index":1082,"name":{"2601":{}},"parent":{}}],["duration",{"_index":754,"name":{"1976":{},"2003":{},"2051":{}},"parent":{}}],["each",{"_index":403,"name":{"1260":{},"1554":{},"1564":{},"2081":{}},"parent":{}}],["effect",{"_index":149,"name":{"176":{},"1901":{},"2170":{},"2241":{}},"parent":{}}],["effects",{"_index":826,"name":{"2169":{},"2240":{}},"parent":{}}],["element",{"_index":764,"name":{"1986":{}},"parent":{}}],["elements",{"_index":376,"name":{"944":{}},"parent":{}}],["emit",{"_index":160,"name":{"189":{},"200":{},"224":{},"248":{},"679":{}},"parent":{}}],["emitfor",{"_index":162,"name":{"191":{},"202":{},"226":{},"681":{}},"parent":{}}],["emitting",{"_index":341,"name":{"673":{}},"parent":{}}],["enabled",{"_index":276,"name":{"419":{},"479":{},"539":{},"621":{},"674":{},"717":{},"777":{},"842":{},"906":{},"970":{},"1030":{},"1090":{},"1155":{},"1215":{},"1358":{},"1594":{},"1685":{},"2328":{}},"parent":{}}],["enabledfilter",{"_index":571,"name":{"1565":{}},"parent":{}}],["end",{"_index":90,"name":{"111":{},"264":{},"345":{},"2018":{}},"parent":{}}],["endinmilliseconds",{"_index":917,"name":{"2366":{}},"parent":{}}],["entries",{"_index":793,"name":{"2082":{}},"parent":{}}],["equals",{"_index":535,"name":{"1513":{}},"parent":{}}],["error",{"_index":134,"name":{"159":{}},"parent":{}}],["eventemitter",{"_index":140,"name":{"166":{},"242":{},"378":{},"1282":{},"1318":{}},"parent":{}}],["events",{"_index":180,"name":{"250":{}},"parent":{}}],["exclusion",{"_index":659,"name":{"1804":{}},"parent":{}}],["existing",{"_index":711,"name":{"1873":{}},"parent":{}}],["explosioneffect",{"_index":166,"name":{"196":{},"1904":{},"2172":{},"2243":{}},"parent":{}}],["extraduration",{"_index":894,"name":{"2340":{}},"parent":{}}],["fades",{"_index":874,"name":{"2304":{}},"parent":{}}],["fadevolume",{"_index":747,"name":{"1969":{},"1999":{},"2044":{}},"parent":{}}],["fadevolumeandpause",{"_index":749,"name":{"1971":{},"2001":{},"2046":{}},"parent":{}}],["fadevolumeandplay",{"_index":748,"name":{"1970":{},"2000":{},"2045":{}},"parent":{}}],["fadevolumeandstop",{"_index":750,"name":{"1972":{},"2002":{},"2047":{}},"parent":{}}],["fieldofview",{"_index":70,"name":{"92":{}},"parent":{}}],["fillcolor",{"_index":960,"name":{"2424":{}},"parent":{}}],["filter",{"_index":407,"name":{"1264":{},"2439":{}},"parent":{}}],["find",{"_index":401,"name":{"1258":{},"1544":{}},"parent":{}}],["fixedlengtharray",{"_index":1080,"name":{"2600":{}},"parent":{}}],["float",{"_index":352,"name":{"689":{}},"parent":{}}],["floatrangex",{"_index":342,"name":{"675":{}},"parent":{}}],["floatrangey",{"_index":343,"name":{"676":{}},"parent":{}}],["floatvelocity",{"_index":329,"name":{"594":{}},"parent":{}}],["focus",{"_index":189,"name":{"268":{},"297":{},"305":{},"310":{},"2323":{}},"parent":{}}],["follow",{"_index":164,"name":{"193":{},"215":{},"239":{},"2482":{}},"parent":{}}],["followcircle",{"_index":89,"name":{"110":{}},"parent":{}}],["following",{"_index":85,"name":{"106":{},"187":{},"213":{},"237":{}},"parent":{}}],["followlerpx",{"_index":1003,"name":{"2488":{}},"parent":{}}],["followlerpy",{"_index":1004,"name":{"2489":{}},"parent":{}}],["followrect",{"_index":88,"name":{"109":{}},"parent":{}}],["fontcss",{"_index":958,"name":{"2421":{}},"parent":{}}],["fontstack",{"_index":459,"name":{"1402":{}},"parent":{}}],["fov",{"_index":1000,"name":{"2481":{}},"parent":{}}],["fps",{"_index":244,"name":{"367":{}},"parent":{}}],["framebase",{"_index":1036,"name":{"2543":{}},"parent":{}}],["framedata",{"_index":1066,"name":{"2578":{}},"parent":{}}],["frameheight",{"_index":814,"name":{"2138":{}},"parent":{}}],["framerate",{"_index":1032,"name":{"2538":{}},"parent":{}}],["frames",{"_index":12,"name":{"11":{},"2537":{}},"parent":{}}],["framewidth",{"_index":813,"name":{"2137":{}},"parent":{}}],["from",{"_index":1040,"name":{"2548":{}},"parent":{}}],["fromcolor",{"_index":795,"name":{"2085":{},"2099":{},"2119":{},"2133":{}},"parent":{}}],["fromeither",{"_index":798,"name":{"2087":{},"2101":{},"2121":{},"2135":{}},"parent":{}}],["fromtexture",{"_index":797,"name":{"2086":{},"2100":{},"2120":{},"2134":{}},"parent":{}}],["fromvec",{"_index":515,"name":{"1491":{}},"parent":{}}],["fromvector2like",{"_index":513,"name":{"1489":{}},"parent":{}}],["fullscreen",{"_index":146,"name":{"173":{},"295":{},"303":{}},"parent":{}}],["func",{"_index":899,"name":{"2349":{},"2437":{},"2442":{},"2454":{},"2463":{}},"parent":{}}],["gainnode",{"_index":775,"name":{"2028":{}},"parent":{}}],["game",{"_index":6,"name":{"5":{},"43":{},"89":{},"138":{},"165":{},"183":{},"209":{},"233":{},"266":{},"353":{},"412":{},"472":{},"532":{},"580":{},"588":{},"614":{},"658":{},"671":{},"710":{},"770":{},"835":{},"899":{},"963":{},"1023":{},"1083":{},"1148":{},"1208":{},"1254":{},"1273":{},"1280":{},"1295":{},"1309":{},"1316":{},"1327":{},"1351":{},"1396":{},"1423":{},"1441":{},"1454":{},"1467":{},"1548":{},"1587":{},"1633":{},"1644":{},"1678":{},"1723":{},"1735":{},"1779":{},"1812":{},"1853":{},"1958":{},"2011":{},"2020":{},"2059":{},"2065":{},"2103":{},"2153":{},"2224":{},"2312":{},"2315":{},"2603":{}},"parent":{}}],["gameevents",{"_index":215,"name":{"308":{}},"parent":{}}],["gameobject",{"_index":311,"name":{"455":{},"1868":{},"2156":{},"2227":{},"2299":{},"2306":{}},"parent":{}}],["gameobjects",{"_index":820,"name":{"2155":{},"2226":{}},"parent":{}}],["gamepadinput",{"_index":923,"name":{"2374":{}},"parent":{}}],["generatetiles",{"_index":496,"name":{"1470":{}},"parent":{}}],["get",{"_index":49,"name":{"52":{},"946":{},"2076":{},"2108":{}},"parent":{}}],["getbottom",{"_index":302,"name":{"446":{},"506":{},"566":{},"647":{},"744":{},"804":{},"869":{},"933":{},"997":{},"1057":{},"1117":{},"1182":{},"1242":{},"1385":{},"1620":{},"1662":{},"1712":{}},"parent":{}}],["getbyid",{"_index":378,"name":{"947":{}},"parent":{}}],["getcenter",{"_index":305,"name":{"449":{},"509":{},"569":{},"650":{},"747":{},"807":{},"872":{},"936":{},"1000":{},"1060":{},"1120":{},"1185":{},"1245":{},"1388":{},"1623":{},"1665":{},"1715":{}},"parent":{}}],["getcenterx",{"_index":307,"name":{"451":{},"511":{},"571":{},"652":{},"749":{},"809":{},"874":{},"938":{},"1002":{},"1062":{},"1122":{},"1187":{},"1247":{},"1390":{},"1625":{},"1667":{},"1717":{}},"parent":{}}],["getcentery",{"_index":306,"name":{"450":{},"510":{},"570":{},"651":{},"748":{},"808":{},"873":{},"937":{},"1001":{},"1061":{},"1121":{},"1186":{},"1246":{},"1389":{},"1624":{},"1666":{},"1716":{}},"parent":{}}],["getindex",{"_index":50,"name":{"53":{}},"parent":{}}],["getleft",{"_index":303,"name":{"447":{},"507":{},"567":{},"648":{},"745":{},"805":{},"870":{},"934":{},"998":{},"1058":{},"1118":{},"1183":{},"1243":{},"1386":{},"1621":{},"1663":{},"1713":{}},"parent":{}}],["getnormal",{"_index":539,"name":{"1517":{}},"parent":{}}],["getright",{"_index":304,"name":{"448":{},"508":{},"568":{},"649":{},"746":{},"806":{},"871":{},"935":{},"999":{},"1059":{},"1119":{},"1184":{},"1244":{},"1387":{},"1622":{},"1664":{},"1714":{}},"parent":{}}],["gettile",{"_index":498,"name":{"1472":{}},"parent":{}}],["gettop",{"_index":301,"name":{"445":{},"505":{},"565":{},"646":{},"743":{},"803":{},"868":{},"932":{},"996":{},"1056":{},"1116":{},"1181":{},"1241":{},"1384":{},"1619":{},"1661":{},"1711":{}},"parent":{}}],["graphicdebug",{"_index":873,"name":{"2303":{}},"parent":{}}],["gravity",{"_index":325,"name":{"586":{},"2329":{}},"parent":{}}],["gravityparticlecomponent",{"_index":323,"name":{"584":{}},"parent":{}}],["gray",{"_index":693,"name":{"1840":{}},"parent":{}}],["green",{"_index":684,"name":{"1831":{}},"parent":{}}],["group",{"_index":188,"name":{"257":{},"1251":{},"1268":{},"1892":{},"2176":{},"2247":{},"2438":{}},"parent":{}}],["groupevents",{"_index":231,"name":{"348":{}},"parent":{}}],["groupintersectsfacewith",{"_index":597,"name":{"1660":{}},"parent":{}}],["h",{"_index":80,"name":{"101":{},"409":{},"469":{},"529":{},"611":{},"707":{},"767":{},"832":{},"896":{},"960":{},"1020":{},"1080":{},"1145":{},"1205":{},"1348":{},"1435":{},"1584":{},"1643":{},"1675":{},"2507":{},"2583":{},"2596":{}},"parent":{}}],["hard",{"_index":655,"name":{"1801":{}},"parent":{}}],["has",{"_index":791,"name":{"2078":{}},"parent":{}}],["height",{"_index":909,"name":{"2359":{}},"parent":{}}],["helper",{"_index":1079,"name":{"2599":{}},"parent":{}}],["hex",{"_index":719,"name":{"1916":{},"1929":{}},"parent":{}}],["hidesplashscreen",{"_index":257,"name":{"386":{}},"parent":{}}],["hitbox",{"_index":274,"name":{"416":{},"476":{},"536":{},"618":{},"714":{},"774":{},"839":{},"903":{},"967":{},"1027":{},"1087":{},"1152":{},"1212":{},"1355":{},"1591":{},"1631":{},"1637":{},"1682":{},"2196":{},"2267":{}},"parent":{}}],["hitboxfaceintersect",{"_index":608,"name":{"1729":{}},"parent":{}}],["hover",{"_index":186,"name":{"255":{},"339":{}},"parent":{}}],["hovering",{"_index":371,"name":{"882":{}},"parent":{}}],["hsl",{"_index":720,"name":{"1917":{}},"parent":{}}],["htmlsoundplayer",{"_index":762,"name":{"1984":{},"2187":{},"2258":{}},"parent":{}}],["htmlstack",{"_index":457,"name":{"1400":{}},"parent":{}}],["hue",{"_index":660,"name":{"1805":{}},"parent":{}}],["id",{"_index":151,"name":{"178":{},"204":{},"228":{},"405":{},"465":{},"525":{},"607":{},"665":{},"703":{},"763":{},"828":{},"893":{},"956":{},"1016":{},"1076":{},"1141":{},"1201":{},"1344":{},"1419":{},"1432":{},"1450":{},"1580":{},"1639":{},"1671":{},"2090":{},"2110":{},"2124":{},"2142":{},"2309":{}},"parent":{}}],["imagerect",{"_index":381,"name":{"1006":{}},"parent":{}}],["img",{"_index":893,"name":{"2339":{}},"parent":{}}],["in",{"_index":642,"name":{"1784":{},"1788":{}},"parent":{}}],["includes",{"_index":377,"name":{"945":{}},"parent":{}}],["index",{"_index":120,"name":{"144":{},"2149":{}},"parent":{"2150":{},"2601":{}}}],["index.duck",{"_index":817,"name":{},"parent":{"2151":{},"2152":{},"2223":{},"2294":{},"2305":{}}}],["index.duck.classes",{"_index":819,"name":{},"parent":{"2153":{},"2154":{},"2155":{},"2169":{},"2174":{},"2180":{},"2184":{},"2189":{},"2191":{},"2198":{},"2203":{},"2206":{},"2208":{},"2210":{},"2217":{}}}],["index.duck.classes.animation",{"_index":845,"name":{},"parent":{"2218":{},"2219":{},"2220":{},"2221":{},"2222":{}}}],["index.duck.classes.base",{"_index":832,"name":{},"parent":{"2181":{},"2182":{},"2183":{}}}],["index.duck.classes.cameras",{"_index":834,"name":{},"parent":{"2190":{}}}],["index.duck.classes.effects",{"_index":827,"name":{},"parent":{"2170":{},"2171":{}}}],["index.duck.classes.effects.presets",{"_index":829,"name":{},"parent":{"2172":{},"2173":{}}}],["index.duck.classes.gameobjects",{"_index":821,"name":{},"parent":{"2156":{},"2157":{},"2158":{},"2159":{},"2160":{},"2161":{},"2164":{},"2167":{}}}],["index.duck.classes.gameobjects.misc",{"_index":825,"name":{},"parent":{"2168":{}}}],["index.duck.classes.gameobjects.particles",{"_index":823,"name":{},"parent":{"2162":{},"2163":{}}}],["index.duck.classes.gameobjects.ui",{"_index":824,"name":{},"parent":{"2165":{},"2166":{}}}],["index.duck.classes.input",{"_index":843,"name":{},"parent":{"2211":{},"2212":{},"2213":{},"2214":{}}}],["index.duck.classes.input.models",{"_index":844,"name":{},"parent":{"2215":{},"2216":{}}}],["index.duck.classes.lights",{"_index":842,"name":{},"parent":{"2209":{}}}],["index.duck.classes.map",{"_index":839,"name":{},"parent":{"2204":{},"2205":{}}}],["index.duck.classes.math",{"_index":840,"name":{},"parent":{"2207":{}}}],["index.duck.classes.misc",{"_index":830,"name":{},"parent":{"2175":{},"2176":{},"2177":{},"2178":{},"2179":{}}}],["index.duck.classes.models",{"_index":838,"name":{},"parent":{"2199":{},"2200":{},"2201":{},"2202":{}}}],["index.duck.classes.physics",{"_index":835,"name":{},"parent":{"2192":{},"2193":{},"2194":{},"2195":{}}}],["index.duck.classes.physics.models",{"_index":837,"name":{},"parent":{"2196":{},"2197":{}}}],["index.duck.classes.sound",{"_index":833,"name":{},"parent":{"2185":{},"2186":{},"2187":{},"2188":{}}}],["index.duck.layers",{"_index":869,"name":{},"parent":{"2295":{}}}],["index.duck.layers.rendering",{"_index":870,"name":{},"parent":{"2296":{}}}],["index.duck.layers.rendering.zindex",{"_index":871,"name":{},"parent":{"2297":{}}}],["index.duck.layers.rendering.zindex.__type",{"_index":872,"name":{},"parent":{"2298":{},"2299":{},"2300":{},"2301":{},"2302":{},"2303":{},"2304":{}}}],["index.duck.typeclasses",{"_index":847,"name":{},"parent":{"2224":{},"2225":{},"2226":{},"2240":{},"2245":{},"2251":{},"2255":{},"2260":{},"2262":{},"2269":{},"2274":{},"2277":{},"2279":{},"2281":{},"2288":{}}}],["index.duck.typeclasses.animation",{"_index":866,"name":{},"parent":{"2289":{},"2290":{},"2291":{},"2292":{},"2293":{}}}],["index.duck.typeclasses.base",{"_index":855,"name":{},"parent":{"2252":{},"2253":{},"2254":{}}}],["index.duck.typeclasses.cameras",{"_index":857,"name":{},"parent":{"2261":{}}}],["index.duck.typeclasses.effects",{"_index":852,"name":{},"parent":{"2241":{},"2242":{}}}],["index.duck.typeclasses.effects.presets",{"_index":853,"name":{},"parent":{"2243":{},"2244":{}}}],["index.duck.typeclasses.gameobjects",{"_index":848,"name":{},"parent":{"2227":{},"2228":{},"2229":{},"2230":{},"2231":{},"2232":{},"2235":{},"2238":{}}}],["index.duck.typeclasses.gameobjects.misc",{"_index":851,"name":{},"parent":{"2239":{}}}],["index.duck.typeclasses.gameobjects.particles",{"_index":849,"name":{},"parent":{"2233":{},"2234":{}}}],["index.duck.typeclasses.gameobjects.ui",{"_index":850,"name":{},"parent":{"2236":{},"2237":{}}}],["index.duck.typeclasses.input",{"_index":864,"name":{},"parent":{"2282":{},"2283":{},"2284":{},"2285":{}}}],["index.duck.typeclasses.input.models",{"_index":865,"name":{},"parent":{"2286":{},"2287":{}}}],["index.duck.typeclasses.lights",{"_index":863,"name":{},"parent":{"2280":{}}}],["index.duck.typeclasses.map",{"_index":861,"name":{},"parent":{"2275":{},"2276":{}}}],["index.duck.typeclasses.math",{"_index":862,"name":{},"parent":{"2278":{}}}],["index.duck.typeclasses.misc",{"_index":854,"name":{},"parent":{"2246":{},"2247":{},"2248":{},"2249":{},"2250":{}}}],["index.duck.typeclasses.models",{"_index":860,"name":{},"parent":{"2270":{},"2271":{},"2272":{},"2273":{}}}],["index.duck.typeclasses.physics",{"_index":858,"name":{},"parent":{"2263":{},"2264":{},"2265":{},"2266":{}}}],["index.duck.typeclasses.physics.models",{"_index":859,"name":{},"parent":{"2267":{},"2268":{}}}],["index.duck.typeclasses.sound",{"_index":856,"name":{},"parent":{"2256":{},"2257":{},"2258":{},"2259":{}}}],["index.duck.types",{"_index":876,"name":{},"parent":{"2306":{},"2307":{},"2308":{},"2315":{},"2352":{},"2356":{},"2360":{},"2363":{},"2374":{},"2413":{},"2438":{},"2444":{},"2450":{},"2497":{},"2500":{},"2510":{},"2521":{},"2524":{},"2534":{},"2546":{},"2558":{},"2566":{},"2573":{},"2577":{},"2587":{},"2599":{}}}],["index.duck.types.animation",{"_index":1030,"name":{},"parent":{"2535":{},"2543":{}}}],["index.duck.types.animation.config",{"_index":1031,"name":{},"parent":{"2536":{},"2537":{},"2538":{},"2539":{},"2540":{},"2541":{},"2542":{}}}],["index.duck.types.animation.framebase",{"_index":1037,"name":{},"parent":{"2544":{},"2545":{}}}],["index.duck.types.camera",{"_index":1062,"name":{},"parent":{"2574":{}}}],["index.duck.types.camera.cullingoptions",{"_index":1064,"name":{},"parent":{"2575":{},"2576":{}}}],["index.duck.types.collider",{"_index":911,"name":{},"parent":{"2361":{},"2362":{}}}],["index.duck.types.cutscene",{"_index":979,"name":{},"parent":{"2451":{},"2452":{},"2455":{},"2456":{},"2471":{},"2492":{}}}],["index.duck.types.cutscene.config",{"_index":1006,"name":{},"parent":{"2493":{},"2494":{},"2495":{},"2496":{}}}],["index.duck.types.cutscene.instructions",{"_index":994,"name":{},"parent":{"2472":{},"2473":{},"2491":{}}}],["index.duck.types.cutscene.instructions.__type",{"_index":996,"name":{},"parent":{"2474":{},"2475":{},"2478":{},"2479":{},"2480":{},"2490":{}}}],["index.duck.types.cutscene.instructions.__type.__type",{"_index":997,"name":{},"parent":{"2476":{},"2477":{},"2481":{},"2482":{},"2483":{},"2484":{},"2485":{},"2488":{},"2489":{}}}],["index.duck.types.cutscene.instructions.__type.__type.__type",{"_index":1002,"name":{},"parent":{"2486":{},"2487":{}}}],["index.duck.types.cutscene.onlistener",{"_index":981,"name":{},"parent":{"2453":{},"2454":{}}}],["index.duck.types.cutscene.step",{"_index":984,"name":{},"parent":{"2457":{},"2458":{},"2459":{},"2460":{},"2463":{},"2464":{},"2465":{},"2466":{},"2467":{},"2468":{},"2469":{},"2470":{}}}],["index.duck.types.cutscene.step.__type",{"_index":986,"name":{},"parent":{"2461":{},"2462":{}}}],["index.duck.types.game",{"_index":880,"name":{},"parent":{"2316":{},"2319":{},"2345":{},"2348":{}}}],["index.duck.types.game.config",{"_index":884,"name":{},"parent":{"2320":{},"2321":{},"2322":{},"2323":{},"2324":{},"2325":{},"2326":{},"2327":{},"2332":{},"2333":{},"2334":{},"2335":{},"2336":{},"2337":{},"2338":{},"2341":{},"2342":{},"2343":{},"2344":{}}}],["index.duck.types.game.config.__type",{"_index":888,"name":{},"parent":{"2328":{},"2329":{},"2330":{},"2331":{},"2339":{},"2340":{}}}],["index.duck.types.game.plugin",{"_index":900,"name":{},"parent":{"2349":{},"2350":{},"2351":{}}}],["index.duck.types.game.stack",{"_index":897,"name":{},"parent":{"2346":{},"2347":{}}}],["index.duck.types.game.versioninfo",{"_index":882,"name":{},"parent":{"2317":{},"2318":{}}}],["index.duck.types.gamepadinput",{"_index":925,"name":{},"parent":{"2375":{},"2376":{},"2377":{},"2395":{}}}],["index.duck.types.gamepadinput.playstationmapping",{"_index":945,"name":{},"parent":{"2396":{},"2397":{},"2398":{},"2399":{},"2400":{},"2401":{},"2402":{},"2403":{},"2404":{},"2405":{},"2406":{},"2407":{},"2408":{},"2409":{},"2410":{},"2411":{},"2412":{}}}],["index.duck.types.gamepadinput.xboxmapping",{"_index":929,"name":{},"parent":{"2378":{},"2379":{},"2380":{},"2381":{},"2382":{},"2383":{},"2384":{},"2385":{},"2386":{},"2387":{},"2388":{},"2389":{},"2390":{},"2391":{},"2392":{},"2393":{},"2394":{}}}],["index.duck.types.group",{"_index":970,"name":{},"parent":{"2439":{},"2440":{},"2441":{}}}],["index.duck.types.group.listener",{"_index":971,"name":{},"parent":{"2442":{},"2443":{}}}],["index.duck.types.helper",{"_index":1081,"name":{},"parent":{"2600":{}}}],["index.duck.types.keyboardinput",{"_index":1049,"name":{},"parent":{"2559":{}}}],["index.duck.types.keyboardinput.keybase",{"_index":1050,"name":{},"parent":{"2560":{},"2561":{},"2562":{},"2563":{},"2564":{},"2565":{}}}],["index.duck.types.loader",{"_index":1016,"name":{},"parent":{"2511":{},"2512":{},"2516":{}}}],["index.duck.types.loader.stackitem",{"_index":1018,"name":{},"parent":{"2513":{},"2514":{},"2515":{}}}],["index.duck.types.loader.texturestackitem",{"_index":1020,"name":{},"parent":{"2517":{},"2518":{},"2519":{},"2520":{}}}],["index.duck.types.math",{"_index":1073,"name":{},"parent":{"2588":{},"2591":{},"2594":{}}}],["index.duck.types.math.boundslike",{"_index":1078,"name":{},"parent":{"2595":{},"2596":{},"2597":{},"2598":{}}}],["index.duck.types.math.vector2like",{"_index":1074,"name":{},"parent":{"2589":{},"2590":{}}}],["index.duck.types.math.vector2likeoptional",{"_index":1076,"name":{},"parent":{"2592":{},"2593":{}}}],["index.duck.types.misc",{"_index":906,"name":{},"parent":{"2357":{}}}],["index.duck.types.misc.scale",{"_index":908,"name":{},"parent":{"2358":{},"2359":{}}}],["index.duck.types.mouseinput",{"_index":1056,"name":{},"parent":{"2567":{}}}],["index.duck.types.mouseinput.mousebase",{"_index":1057,"name":{},"parent":{"2568":{},"2569":{},"2570":{},"2571":{},"2572":{}}}],["index.duck.types.particlecontainer",{"_index":1010,"name":{},"parent":{"2501":{},"2508":{}}}],["index.duck.types.particlecontainer.bounds",{"_index":1011,"name":{},"parent":{"2502":{},"2503":{},"2506":{},"2507":{}}}],["index.duck.types.particlecontainer.bounds.__type",{"_index":1012,"name":{},"parent":{"2504":{},"2505":{}}}],["index.duck.types.particlecontainer.physics",{"_index":1014,"name":{},"parent":{"2509":{}}}],["index.duck.types.particleemitter",{"_index":973,"name":{},"parent":{"2445":{},"2446":{}}}],["index.duck.types.particleemitter.offloaders",{"_index":976,"name":{},"parent":{"2447":{},"2448":{},"2449":{}}}],["index.duck.types.physicsbody",{"_index":1022,"name":{},"parent":{"2525":{},"2526":{},"2528":{},"2531":{},"2532":{},"2533":{}}}],["index.duck.types.physicsbody.attachedbody",{"_index":1026,"name":{},"parent":{"2529":{},"2530":{}}}],["index.duck.types.physicsbody.config",{"_index":1023,"name":{},"parent":{"2527":{}}}],["index.duck.types.renderable",{"_index":879,"name":{},"parent":{"2309":{},"2310":{},"2311":{},"2312":{},"2313":{},"2314":{}}}],["index.duck.types.rendererpipeline",{"_index":903,"name":{},"parent":{"2353":{}}}],["index.duck.types.rendererpipeline.poolstackitem",{"_index":904,"name":{},"parent":{"2354":{},"2355":{}}}],["index.duck.types.sound",{"_index":914,"name":{},"parent":{"2364":{},"2368":{},"2373":{}}}],["index.duck.types.sound.soundconfig",{"_index":920,"name":{},"parent":{"2369":{},"2370":{},"2371":{},"2372":{}}}],["index.duck.types.sound.spritestruct",{"_index":916,"name":{},"parent":{"2365":{},"2366":{},"2367":{}}}],["index.duck.types.statemachine",{"_index":1039,"name":{},"parent":{"2547":{},"2551":{},"2555":{}}}],["index.duck.types.statemachine.config",{"_index":1047,"name":{},"parent":{"2556":{},"2557":{}}}],["index.duck.types.statemachine.connectionbase",{"_index":1041,"name":{},"parent":{"2548":{},"2549":{},"2550":{}}}],["index.duck.types.statemachine.connectionbasevalue",{"_index":1045,"name":{},"parent":{"2552":{},"2553":{},"2554":{}}}],["index.duck.types.texture",{"_index":1021,"name":{},"parent":{"2522":{},"2523":{}}}],["index.duck.types.textureatlas",{"_index":1067,"name":{},"parent":{"2578":{},"2584":{}}}],["index.duck.types.textureatlas.framedata",{"_index":1068,"name":{},"parent":{"2579":{},"2580":{},"2581":{},"2582":{},"2583":{}}}],["index.duck.types.textureatlas.jsonschema",{"_index":1070,"name":{},"parent":{"2585":{},"2586":{}}}],["index.duck.types.tilemap",{"_index":1007,"name":{},"parent":{"2498":{},"2499":{}}}],["index.duck.types.ui",{"_index":953,"name":{},"parent":{"2414":{},"2426":{}}}],["index.duck.types.ui.button",{"_index":962,"name":{},"parent":{"2427":{},"2428":{},"2429":{},"2433":{},"2435":{}}}],["index.duck.types.ui.button.listener",{"_index":969,"name":{},"parent":{"2436":{},"2437":{}}}],["index.duck.types.ui.button.listenerfunc",{"_index":967,"name":{},"parent":{"2434":{}}}],["index.duck.types.ui.button.listenerreturn",{"_index":965,"name":{},"parent":{"2430":{},"2431":{},"2432":{}}}],["index.duck.types.ui.text",{"_index":954,"name":{},"parent":{"2415":{}}}],["index.duck.types.ui.text.config",{"_index":955,"name":{},"parent":{"2416":{},"2417":{},"2418":{},"2419":{},"2420":{}}}],["index.duck.types.ui.text.config.__type",{"_index":959,"name":{},"parent":{"2421":{},"2422":{},"2423":{},"2424":{},"2425":{}}}],["index.duckengine",{"_index":1083,"name":{},"parent":{"2602":{}}}],["index.duckengine.__type",{"_index":1084,"name":{},"parent":{"2603":{},"2604":{}}}],["indexof",{"_index":402,"name":{"1259":{}},"parent":{}}],["init",{"_index":122,"name":{"146":{},"2472":{}},"parent":{}}],["input",{"_index":411,"name":{"1271":{},"1886":{},"2210":{},"2211":{},"2281":{},"2282":{}},"parent":{}}],["inputs",{"_index":423,"name":{"1289":{},"1323":{}},"parent":{}}],["inputserver",{"_index":443,"name":{"1325":{}},"parent":{}}],["instructions",{"_index":115,"name":{"137":{},"2471":{}},"parent":{}}],["intersectsfacewith",{"_index":596,"name":{"1659":{}},"parent":{}}],["intersectswith",{"_index":595,"name":{"1658":{}},"parent":{}}],["interval",{"_index":175,"name":{"223":{}},"parent":{}}],["is",{"_index":718,"name":{"1914":{}},"parent":{}}],["isattached",{"_index":277,"name":{"420":{},"480":{},"540":{},"622":{},"718":{},"778":{},"843":{},"907":{},"971":{},"1031":{},"1091":{},"1156":{},"1216":{},"1359":{},"1595":{},"1686":{}},"parent":{}}],["iscolliding",{"_index":308,"name":{"452":{},"512":{},"572":{},"653":{},"750":{},"810":{},"875":{},"939":{},"1003":{},"1063":{},"1123":{},"1188":{},"1248":{},"1391":{},"1626":{},"1718":{}},"parent":{}}],["iscollidinggroup",{"_index":309,"name":{"453":{},"513":{},"573":{},"654":{},"751":{},"811":{},"876":{},"940":{},"1004":{},"1064":{},"1124":{},"1189":{},"1249":{},"1392":{},"1627":{},"1719":{}},"parent":{}}],["isdown",{"_index":428,"name":{"1298":{}},"parent":{}}],["isinfullscreen",{"_index":245,"name":{"368":{}},"parent":{}}],["isjustpressed",{"_index":430,"name":{"1300":{}},"parent":{}}],["isloaded",{"_index":251,"name":{"376":{}},"parent":{}}],["islooping",{"_index":759,"name":{"1981":{},"2008":{},"2056":{}},"parent":{}}],["ismain",{"_index":83,"name":{"104":{}},"parent":{}}],["ismuted",{"_index":758,"name":{"1980":{},"2007":{},"2055":{}},"parent":{}}],["ispaused",{"_index":756,"name":{"1978":{},"2005":{},"2053":{}},"parent":{}}],["isplaying",{"_index":755,"name":{"1977":{},"2004":{},"2052":{}},"parent":{}}],["isrendering",{"_index":250,"name":{"375":{}},"parent":{}}],["isup",{"_index":429,"name":{"1299":{}},"parent":{}}],["iszero",{"_index":540,"name":{"1518":{}},"parent":{}}],["json",{"_index":804,"name":{"2105":{}},"parent":{}}],["jsonschema",{"_index":1069,"name":{"2584":{}},"parent":{}}],["jsonstack",{"_index":456,"name":{"1399":{}},"parent":{}}],["keepemitting",{"_index":347,"name":{"683":{}},"parent":{}}],["key",{"_index":4,"name":{"3":{},"70":{},"1291":{},"1850":{},"2016":{},"2215":{},"2286":{},"2367":{},"2515":{},"2520":{},"2536":{},"2552":{},"2579":{}},"parent":{}}],["keybase",{"_index":1048,"name":{"2559":{}},"parent":{}}],["keyboardinput",{"_index":416,"name":{"1278":{},"1297":{},"2212":{},"2283":{},"2558":{}},"parent":{}}],["keycode",{"_index":426,"name":{"1293":{},"2560":{}},"parent":{}}],["keydown",{"_index":1051,"name":{"2562":{}},"parent":{}}],["keyjustpressed",{"_index":1053,"name":{"2564":{}},"parent":{}}],["keys",{"_index":418,"name":{"1283":{},"2079":{}},"parent":{}}],["keystate",{"_index":1054,"name":{"2565":{}},"parent":{}}],["keyup",{"_index":1052,"name":{"2563":{}},"parent":{}}],["kinematicbody",{"_index":1027,"name":{"2531":{}},"parent":{}}],["l1",{"_index":948,"name":{"2400":{}},"parent":{}}],["l2",{"_index":950,"name":{"2402":{}},"parent":{}}],["layers",{"_index":867,"name":{"2294":{}},"parent":{}}],["lb",{"_index":931,"name":{"2382":{}},"parent":{}}],["left",{"_index":74,"name":{"96":{},"1486":{}},"parent":{}}],["left_stick_press",{"_index":937,"name":{"2388":{},"2406":{}},"parent":{}}],["length",{"_index":409,"name":{"1269":{},"1556":{},"1567":{}},"parent":{}}],["lerp",{"_index":502,"name":{"1476":{},"1943":{}},"parent":{}}],["lerpamount",{"_index":86,"name":{"107":{}},"parent":{}}],["light",{"_index":656,"name":{"1801":{},"1802":{},"1889":{}},"parent":{}}],["lightblue",{"_index":686,"name":{"1833":{}},"parent":{}}],["lighten",{"_index":652,"name":{"1798":{}},"parent":{}}],["lighter",{"_index":646,"name":{"1791":{}},"parent":{}}],["lightgreen",{"_index":683,"name":{"1830":{}},"parent":{}}],["lightorange",{"_index":677,"name":{"1824":{}},"parent":{}}],["lightpurple",{"_index":689,"name":{"1836":{}},"parent":{}}],["lightred",{"_index":673,"name":{"1821":{}},"parent":{}}],["lights",{"_index":841,"name":{"2208":{},"2279":{}},"parent":{}}],["lightyellow",{"_index":680,"name":{"1827":{}},"parent":{}}],["list",{"_index":340,"name":{"670":{},"1549":{},"1561":{}},"parent":{}}],["listener",{"_index":968,"name":{"2435":{},"2441":{}},"parent":{}}],["listenerfunc",{"_index":966,"name":{"2433":{}},"parent":{}}],["listenerreturn",{"_index":964,"name":{"2429":{}},"parent":{}}],["listenertype",{"_index":963,"name":{"2428":{},"2440":{}},"parent":{}}],["listitems",{"_index":567,"name":{"1557":{},"1568":{}},"parent":{}}],["load_begin",{"_index":191,"name":{"272":{},"314":{}},"parent":{}}],["load_finish",{"_index":192,"name":{"273":{},"315":{}},"parent":{}}],["load_scene",{"_index":195,"name":{"276":{},"318":{}},"parent":{}}],["loadaudio",{"_index":471,"name":{"1414":{}},"parent":{}}],["loadaudiobuffer",{"_index":472,"name":{"1415":{}},"parent":{}}],["loader",{"_index":453,"name":{"1394":{},"1859":{},"1908":{},"2175":{},"2246":{},"2510":{}},"parent":{}}],["loadfont",{"_index":470,"name":{"1413":{}},"parent":{}}],["loadhtml",{"_index":468,"name":{"1411":{}},"parent":{}}],["loadjson",{"_index":467,"name":{"1410":{}},"parent":{}}],["loadtexture",{"_index":464,"name":{"1407":{}},"parent":{}}],["loadtextureatlas",{"_index":466,"name":{"1409":{}},"parent":{}}],["loadtexturesheet",{"_index":465,"name":{"1408":{}},"parent":{}}],["loadxml",{"_index":469,"name":{"1412":{}},"parent":{}}],["lock_pointer",{"_index":203,"name":{"284":{},"326":{}},"parent":{}}],["lockpointer",{"_index":262,"name":{"392":{}},"parent":{}}],["log",{"_index":136,"name":{"161":{}},"parent":{}}],["logo",{"_index":943,"name":{"2394":{},"2412":{}},"parent":{}}],["loop",{"_index":255,"name":{"384":{},"1965":{},"1992":{},"2040":{},"2372":{}},"parent":{}}],["looping",{"_index":780,"name":{"2033":{}},"parent":{}}],["lt",{"_index":933,"name":{"2384":{}},"parent":{}}],["luminosity",{"_index":662,"name":{"1808":{}},"parent":{}}],["magnitude",{"_index":542,"name":{"1521":{}},"parent":{}}],["magnitudesqr",{"_index":543,"name":{"1522":{}},"parent":{}}],["maincamera",{"_index":703,"name":{"1855":{},"1888":{},"2493":{}},"parent":{}}],["mainobject",{"_index":117,"name":{"140":{},"2496":{}},"parent":{}}],["mainobjectpos",{"_index":995,"name":{"2474":{}},"parent":{}}],["map",{"_index":474,"name":{"1417":{},"1440":{},"1896":{},"2203":{},"2204":{},"2274":{},"2275":{},"2498":{}},"parent":{}}],["mapping",{"_index":926,"name":{"2376":{}},"parent":{}}],["mappingtype",{"_index":924,"name":{"2375":{}},"parent":{}}],["math",{"_index":730,"name":{"1938":{},"2206":{},"2277":{},"2587":{}},"parent":{}}],["maxage",{"_index":168,"name":{"198":{},"220":{},"2448":{}},"parent":{}}],["maxamount",{"_index":975,"name":{"2447":{}},"parent":{}}],["maxbounds",{"_index":977,"name":{"2449":{}},"parent":{}}],["maxwidth",{"_index":961,"name":{"2425":{}},"parent":{}}],["measuretext",{"_index":623,"name":{"1747":{},"1766":{}},"parent":{}}],["method",{"_index":956,"name":{"2418":{}},"parent":{}}],["mice",{"_index":439,"name":{"1319":{}},"parent":{}}],["misc",{"_index":708,"name":{"1870":{},"1878":{},"2167":{},"2174":{},"2238":{},"2245":{},"2356":{}},"parent":{}}],["models",{"_index":836,"name":{"2195":{},"2198":{},"2214":{},"2266":{},"2269":{},"2285":{}},"parent":{}}],["modifyphysicsenable",{"_index":1065,"name":{"2576":{}},"parent":{}}],["mouse",{"_index":434,"name":{"1305":{},"2216":{},"2287":{}},"parent":{}}],["mousebase",{"_index":1055,"name":{"2567":{}},"parent":{}}],["mousedown",{"_index":1058,"name":{"2570":{}},"parent":{}}],["mouseinput",{"_index":436,"name":{"1311":{},"1314":{},"2213":{},"2284":{},"2566":{}},"parent":{}}],["mousemove",{"_index":1060,"name":{"2572":{}},"parent":{}}],["mouseup",{"_index":1059,"name":{"2571":{}},"parent":{}}],["moveto",{"_index":96,"name":{"117":{},"2459":{}},"parent":{}}],["movetowards",{"_index":537,"name":{"1515":{}},"parent":{}}],["multiply",{"_index":523,"name":{"1501":{},"1794":{}},"parent":{}}],["multiplynumber",{"_index":524,"name":{"1502":{}},"parent":{}}],["mute",{"_index":743,"name":{"1963":{},"1989":{},"2038":{}},"parent":{}}],["muted",{"_index":778,"name":{"2031":{}},"parent":{}}],["name",{"_index":400,"name":{"1255":{},"2351":{},"2585":{}},"parent":{}}],["negate",{"_index":541,"name":{"1520":{}},"parent":{}}],["next",{"_index":125,"name":{"150":{},"265":{},"346":{}},"parent":{}}],["normalize",{"_index":538,"name":{"1516":{}},"parent":{}}],["normalstep",{"_index":20,"name":{"19":{}},"parent":{}}],["nothover",{"_index":187,"name":{"256":{},"340":{}},"parent":{}}],["now",{"_index":243,"name":{"366":{}},"parent":{}}],["off",{"_index":128,"name":{"153":{},"247":{},"885":{},"1266":{}},"parent":{}}],["offloadbounds",{"_index":349,"name":{"685":{}},"parent":{}}],["offloaders",{"_index":974,"name":{"2446":{}},"parent":{}}],["offloadmaxage",{"_index":350,"name":{"686":{}},"parent":{}}],["offloadmaxamount",{"_index":348,"name":{"684":{}},"parent":{}}],["offset",{"_index":588,"name":{"1641":{},"2530":{}},"parent":{}}],["oldheight",{"_index":247,"name":{"370":{}},"parent":{}}],["oldtime",{"_index":242,"name":{"365":{}},"parent":{}}],["oldwidth",{"_index":246,"name":{"369":{}},"parent":{}}],["on",{"_index":127,"name":{"152":{},"246":{},"884":{},"1265":{}},"parent":{}}],["onactive",{"_index":705,"name":{"1861":{}},"parent":{}}],["onbodyenter",{"_index":577,"name":{"1574":{}},"parent":{}}],["onbodyleave",{"_index":578,"name":{"1575":{}},"parent":{}}],["once",{"_index":735,"name":{"1951":{},"2182":{},"2253":{}},"parent":{}}],["oninactive",{"_index":706,"name":{"1863":{}},"parent":{}}],["oninput",{"_index":422,"name":{"1288":{},"1303":{}},"parent":{}}],["onlistener",{"_index":980,"name":{"2452":{}},"parent":{}}],["onlistenertype",{"_index":978,"name":{"2451":{}},"parent":{}}],["onpauserendering",{"_index":890,"name":{"2332":{}},"parent":{}}],["onresumerendering",{"_index":891,"name":{"2333":{}},"parent":{}}],["options",{"_index":271,"name":{"411":{},"471":{},"531":{},"613":{},"709":{},"769":{},"834":{},"898":{},"962":{},"1022":{},"1082":{},"1147":{},"1207":{},"1350":{},"1586":{},"1677":{},"2405":{}},"parent":{}}],["orange",{"_index":678,"name":{"1825":{}},"parent":{}}],["origin",{"_index":476,"name":{"1421":{},"1452":{}},"parent":{}}],["originalfillcolororimgpath",{"_index":330,"name":{"595":{}},"parent":{}}],["othercameras",{"_index":119,"name":{"143":{},"2494":{}},"parent":{}}],["othercamerasettings",{"_index":1005,"name":{"2490":{}},"parent":{}}],["otherobjectpos",{"_index":998,"name":{"2478":{}},"parent":{}}],["otherobjects",{"_index":118,"name":{"141":{},"2495":{}},"parent":{}}],["out",{"_index":643,"name":{"1785":{},"1789":{}},"parent":{}}],["over",{"_index":640,"name":{"1783":{},"1787":{}},"parent":{}}],["overlay",{"_index":650,"name":{"1796":{}},"parent":{}}],["panel",{"_index":385,"name":{"1066":{}},"parent":{}}],["parsejson",{"_index":806,"name":{"2107":{}},"parent":{}}],["particle",{"_index":327,"name":{"592":{},"666":{},"1893":{},"2162":{},"2233":{},"2300":{}},"parent":{}}],["particlecomponent",{"_index":335,"name":{"656":{}},"parent":{}}],["particlecontainer",{"_index":1009,"name":{"2500":{}},"parent":{}}],["particleemitter",{"_index":155,"name":{"182":{},"208":{},"232":{},"582":{},"590":{},"660":{},"663":{},"1894":{},"2163":{},"2234":{},"2444":{}},"parent":{}}],["particles",{"_index":822,"name":{"2161":{},"2232":{}},"parent":{}}],["path",{"_index":741,"name":{"1957":{},"2010":{},"2058":{}},"parent":{}}],["pathorkey",{"_index":784,"name":{"2064":{}},"parent":{}}],["pause",{"_index":26,"name":{"25":{},"59":{},"1961":{},"1988":{},"2036":{}},"parent":{}}],["paused",{"_index":777,"name":{"2030":{}},"parent":{}}],["pauserenderingonblur",{"_index":887,"name":{"2325":{}},"parent":{}}],["pausereverse",{"_index":27,"name":{"26":{},"60":{}},"parent":{}}],["perpendicular",{"_index":536,"name":{"1514":{}},"parent":{}}],["physics",{"_index":280,"name":{"423":{},"483":{},"543":{},"625":{},"721":{},"781":{},"846":{},"910":{},"974":{},"1034":{},"1094":{},"1159":{},"1219":{},"1362":{},"1598":{},"1689":{},"1934":{},"2191":{},"2262":{},"2326":{},"2508":{}},"parent":{}}],["physicsbody",{"_index":599,"name":{"1669":{},"2194":{},"2265":{},"2524":{}},"parent":{}}],["physicslist",{"_index":569,"name":{"1559":{},"1858":{},"2200":{},"2271":{}},"parent":{}}],["physicsobject",{"_index":589,"name":{"1646":{}},"parent":{}}],["physicsprocessmember",{"_index":877,"name":{"2307":{}},"parent":{}}],["physicsserver",{"_index":603,"name":{"1721":{},"1860":{},"2193":{},"2264":{}},"parent":{}}],["pink",{"_index":695,"name":{"1842":{}},"parent":{}}],["pipeline",{"_index":633,"name":{"1758":{}},"parent":{}}],["pipeline_pool",{"_index":208,"name":{"290":{},"333":{}},"parent":{}}],["play",{"_index":24,"name":{"23":{},"57":{},"1960":{},"1987":{},"2021":{},"2035":{}},"parent":{}}],["playreverse",{"_index":25,"name":{"24":{},"58":{}},"parent":{}}],["playsoundsprite",{"_index":751,"name":{"1973":{},"1995":{},"2048":{}},"parent":{}}],["playstationmapping",{"_index":944,"name":{"2395":{}},"parent":{}}],["plugin",{"_index":898,"name":{"2348":{}},"parent":{}}],["pluginmanager",{"_index":253,"name":{"379":{},"1537":{},"2179":{},"2250":{}},"parent":{}}],["plugins",{"_index":558,"name":{"1539":{}},"parent":{}}],["pool",{"_index":670,"name":{"1817":{}},"parent":{}}],["poolinginterval",{"_index":667,"name":{"1814":{},"2344":{}},"parent":{}}],["poolinterval",{"_index":666,"name":{"1813":{}},"parent":{}}],["poolstack",{"_index":668,"name":{"1815":{}},"parent":{}}],["poolstackitem",{"_index":902,"name":{"2353":{}},"parent":{}}],["pop",{"_index":404,"name":{"1261":{}},"parent":{}}],["pos",{"_index":1001,"name":{"2484":{}},"parent":{}}],["position",{"_index":69,"name":{"91":{},"407":{},"467":{},"527":{},"609":{},"705":{},"765":{},"830":{},"894":{},"958":{},"1018":{},"1078":{},"1143":{},"1203":{},"1346":{},"1433":{},"1582":{},"1640":{},"1673":{},"2502":{}},"parent":{}}],["preservevisibility",{"_index":1063,"name":{"2575":{}},"parent":{}}],["preseteffect",{"_index":713,"name":{"1902":{}},"parent":{}}],["presets",{"_index":828,"name":{"2171":{},"2242":{}},"parent":{}}],["purple",{"_index":690,"name":{"1837":{}},"parent":{}}],["r",{"_index":270,"name":{"410":{},"470":{},"530":{},"612":{},"708":{},"768":{},"833":{},"897":{},"961":{},"1021":{},"1081":{},"1146":{},"1206":{},"1349":{},"1585":{},"1676":{}},"parent":{}}],["r1",{"_index":949,"name":{"2401":{}},"parent":{}}],["r2",{"_index":951,"name":{"2403":{}},"parent":{}}],["random",{"_index":716,"name":{"1912":{}},"parent":{}}],["randomfloat",{"_index":504,"name":{"1478":{},"1945":{}},"parent":{}}],["randomint",{"_index":506,"name":{"1480":{},"1944":{}},"parent":{}}],["randommaxoffset",{"_index":159,"name":{"188":{},"214":{},"238":{}},"parent":{}}],["randomwithalpha",{"_index":717,"name":{"1913":{}},"parent":{}}],["range",{"_index":972,"name":{"2445":{}},"parent":{}}],["rangex",{"_index":153,"name":{"180":{},"206":{},"230":{},"667":{}},"parent":{}}],["rangey",{"_index":154,"name":{"181":{},"207":{},"231":{},"668":{}},"parent":{}}],["rb",{"_index":932,"name":{"2383":{}},"parent":{}}],["recreatenodes",{"_index":781,"name":{"2034":{}},"parent":{}}],["rect",{"_index":354,"name":{"693":{},"1875":{},"2158":{},"2229":{}},"parent":{}}],["recttorectintersect",{"_index":610,"name":{"1731":{},"1936":{}},"parent":{}}],["red",{"_index":675,"name":{"1822":{}},"parent":{}}],["reflect",{"_index":554,"name":{"1534":{}},"parent":{}}],["reflectvelocity",{"_index":298,"name":{"442":{},"502":{},"562":{},"643":{},"740":{},"800":{},"865":{},"929":{},"993":{},"1053":{},"1113":{},"1178":{},"1238":{},"1381":{},"1616":{},"1708":{}},"parent":{}}],["registerlisteners",{"_index":432,"name":{"1302":{},"1312":{}},"parent":{}}],["registerplugin",{"_index":559,"name":{"1541":{}},"parent":{}}],["remove",{"_index":48,"name":{"51":{},"260":{},"351":{},"374":{},"1257":{},"1551":{},"1563":{}},"parent":{}}],["removebody",{"_index":580,"name":{"1578":{}},"parent":{}}],["removekey",{"_index":421,"name":{"1287":{}},"parent":{}}],["removesoundsprite",{"_index":753,"name":{"1975":{},"1997":{},"2050":{}},"parent":{}}],["render",{"_index":634,"name":{"1759":{},"2183":{},"2254":{}},"parent":{}}],["renderable",{"_index":878,"name":{"2308":{}},"parent":{}}],["renderables",{"_index":905,"name":{"2355":{}},"parent":{}}],["renderer",{"_index":207,"name":{"288":{},"358":{}},"parent":{}}],["rendererevents",{"_index":219,"name":{"331":{}},"parent":{}}],["rendererpipeline",{"_index":664,"name":{"1810":{},"2352":{}},"parent":{}}],["rendering",{"_index":868,"name":{"2295":{}},"parent":{}}],["repeat",{"_index":10,"name":{"9":{},"2539":{}},"parent":{}}],["repeatcounter",{"_index":11,"name":{"10":{}},"parent":{}}],["resetfov",{"_index":103,"name":{"124":{}},"parent":{}}],["resetscale",{"_index":145,"name":{"172":{}},"parent":{}}],["resetzoom",{"_index":104,"name":{"125":{}},"parent":{}}],["restart",{"_index":32,"name":{"31":{},"65":{},"1967":{},"1994":{},"2042":{}},"parent":{}}],["restartreverse",{"_index":33,"name":{"32":{},"66":{}},"parent":{}}],["restitution",{"_index":321,"name":{"578":{}},"parent":{}}],["restore",{"_index":620,"name":{"1742":{},"1761":{}},"parent":{}}],["resume",{"_index":28,"name":{"27":{},"61":{}},"parent":{}}],["resumereverse",{"_index":29,"name":{"28":{},"62":{}},"parent":{}}],["reversedframes",{"_index":13,"name":{"12":{}},"parent":{}}],["reversestep",{"_index":21,"name":{"20":{}},"parent":{}}],["rgb",{"_index":721,"name":{"1918":{},"1921":{}},"parent":{}}],["rgba",{"_index":726,"name":{"1925":{}},"parent":{}}],["right",{"_index":76,"name":{"97":{},"1487":{}},"parent":{}}],["right_stick_press",{"_index":938,"name":{"2389":{},"2407":{}},"parent":{}}],["rigidbody",{"_index":1028,"name":{"2532":{}},"parent":{}}],["rotate",{"_index":553,"name":{"1533":{}},"parent":{}}],["round",{"_index":527,"name":{"1505":{}},"parent":{}}],["roundpixels",{"_index":886,"name":{"2322":{}},"parent":{}}],["roundrect",{"_index":358,"name":{"753":{},"1877":{},"2159":{},"2230":{}},"parent":{}}],["row",{"_index":38,"name":{"37":{},"2545":{}},"parent":{}}],["rows",{"_index":493,"name":{"1465":{},"2139":{}},"parent":{}}],["rt",{"_index":934,"name":{"2385":{}},"parent":{}}],["runamount",{"_index":736,"name":{"1952":{}},"parent":{}}],["running",{"_index":121,"name":{"145":{}},"parent":{}}],["saturation",{"_index":661,"name":{"1806":{}},"parent":{}}],["save",{"_index":619,"name":{"1741":{},"1760":{}},"parent":{}}],["savecache",{"_index":463,"name":{"1406":{}},"parent":{}}],["scale",{"_index":81,"name":{"102":{},"167":{},"1519":{},"1655":{},"1743":{},"1764":{},"2093":{},"2113":{},"2127":{},"2145":{},"2334":{},"2357":{}},"parent":{}}],["scaleaspectratio",{"_index":143,"name":{"170":{}},"parent":{}}],["scalehitbox",{"_index":300,"name":{"444":{},"504":{},"564":{},"645":{},"742":{},"802":{},"867":{},"931":{},"995":{},"1055":{},"1115":{},"1180":{},"1240":{},"1383":{},"1618":{},"1710":{}},"parent":{}}],["scaletomagnitude",{"_index":544,"name":{"1523":{}},"parent":{}}],["scaletowindow",{"_index":144,"name":{"171":{}},"parent":{}}],["scene",{"_index":7,"name":{"6":{},"44":{},"90":{},"413":{},"473":{},"533":{},"581":{},"589":{},"615":{},"659":{},"672":{},"711":{},"771":{},"836":{},"900":{},"964":{},"1024":{},"1084":{},"1149":{},"1209":{},"1274":{},"1281":{},"1296":{},"1310":{},"1317":{},"1328":{},"1352":{},"1397":{},"1424":{},"1442":{},"1455":{},"1468":{},"1588":{},"1645":{},"1679":{},"1724":{},"1848":{},"2066":{},"2104":{},"2154":{},"2225":{},"2354":{},"2604":{}},"parent":{}}],["scene_add",{"_index":193,"name":{"274":{},"316":{}},"parent":{}}],["scene_remove",{"_index":194,"name":{"275":{},"317":{}},"parent":{}}],["scenes",{"_index":248,"name":{"371":{},"2346":{}},"parent":{}}],["screen",{"_index":649,"name":{"1795":{}},"parent":{}}],["screentoworld",{"_index":99,"name":{"120":{}},"parent":{}}],["seek",{"_index":745,"name":{"1966":{},"1993":{},"2041":{}},"parent":{}}],["seekto",{"_index":776,"name":{"2029":{}},"parent":{}}],["set",{"_index":39,"name":{"39":{},"2075":{}},"parent":{}}],["set_background",{"_index":201,"name":{"282":{},"324":{}},"parent":{}}],["set_scale",{"_index":200,"name":{"281":{},"294":{},"302":{},"323":{}},"parent":{}}],["setbackground",{"_index":259,"name":{"389":{}},"parent":{}}],["setblendmode",{"_index":628,"name":{"1753":{},"1778":{}},"parent":{}}],["setbounds",{"_index":105,"name":{"126":{},"427":{},"487":{},"547":{},"629":{},"725":{},"785":{},"850":{},"914":{},"978":{},"1038":{},"1098":{},"1163":{},"1223":{},"1366":{},"1602":{},"1693":{}},"parent":{}}],["setcurrentanimation",{"_index":46,"name":{"49":{}},"parent":{}}],["setdebugcolor",{"_index":592,"name":{"1654":{}},"parent":{}}],["setenabled",{"_index":284,"name":{"428":{},"488":{},"548":{},"630":{},"726":{},"786":{},"851":{},"915":{},"979":{},"1039":{},"1099":{},"1164":{},"1224":{},"1367":{},"1603":{},"1694":{}},"parent":{}}],["setfillcolor",{"_index":269,"name":{"404":{},"464":{},"524":{},"606":{},"690":{},"702":{},"762":{},"822":{},"892":{},"955":{},"1015":{},"1075":{},"1140":{},"1200":{},"1343":{},"1750":{},"1767":{},"2096":{},"2116":{},"2130":{},"2148":{}},"parent":{}}],["setfillcoloralpha",{"_index":450,"name":{"1336":{}},"parent":{}}],["setfont",{"_index":622,"name":{"1746":{},"1765":{}},"parent":{}}],["setfov",{"_index":101,"name":{"122":{}},"parent":{}}],["setfovsmooth",{"_index":102,"name":{"123":{}},"parent":{}}],["setimagepath",{"_index":332,"name":{"599":{},"691":{},"821":{},"2095":{},"2115":{},"2129":{},"2147":{}},"parent":{}}],["setlinewidth",{"_index":627,"name":{"1752":{},"1769":{}},"parent":{}}],["setmaincamera",{"_index":734,"name":{"1950":{}},"parent":{}}],["setposition",{"_index":593,"name":{"1656":{}},"parent":{}}],["setrange",{"_index":346,"name":{"682":{}},"parent":{}}],["setrepeat",{"_index":22,"name":{"21":{},"55":{}},"parent":{}}],["setrepeatreverse",{"_index":23,"name":{"22":{},"56":{}},"parent":{}}],["setscale",{"_index":258,"name":{"388":{},"403":{},"463":{},"523":{},"605":{},"701":{},"761":{},"820":{},"891":{},"954":{},"1014":{},"1074":{},"1139":{},"1199":{},"1342":{},"2094":{},"2114":{},"2128":{},"2146":{}},"parent":{}}],["setstrokecolor",{"_index":626,"name":{"1751":{},"1768":{}},"parent":{}}],["settext",{"_index":392,"name":{"1133":{}},"parent":{}}],["settype",{"_index":286,"name":{"430":{},"490":{},"550":{},"631":{},"728":{},"788":{},"853":{},"917":{},"981":{},"1041":{},"1101":{},"1166":{},"1226":{},"1369":{},"1604":{},"1696":{}},"parent":{}}],["setvalues",{"_index":518,"name":{"1495":{}},"parent":{}}],["setvaluesvec",{"_index":519,"name":{"1496":{}},"parent":{}}],["setvelocity",{"_index":291,"name":{"435":{},"495":{},"555":{},"636":{},"687":{},"733":{},"793":{},"858":{},"922":{},"986":{},"1046":{},"1106":{},"1171":{},"1231":{},"1374":{},"1609":{},"1701":{}},"parent":{}}],["setvelocityx",{"_index":292,"name":{"436":{},"496":{},"556":{},"637":{},"734":{},"794":{},"859":{},"923":{},"987":{},"1047":{},"1107":{},"1172":{},"1232":{},"1375":{},"1610":{},"1702":{}},"parent":{}}],["setvelocityy",{"_index":293,"name":{"437":{},"497":{},"557":{},"638":{},"735":{},"795":{},"860":{},"924":{},"988":{},"1048":{},"1108":{},"1173":{},"1233":{},"1376":{},"1611":{},"1703":{}},"parent":{}}],["setvisible",{"_index":268,"name":{"402":{},"462":{},"522":{},"604":{},"700":{},"760":{},"827":{},"890":{},"953":{},"1013":{},"1073":{},"1138":{},"1198":{},"1341":{},"1947":{}},"parent":{}}],["setvolume",{"_index":746,"name":{"1968":{},"1998":{},"2043":{}},"parent":{}}],["setzoom",{"_index":94,"name":{"115":{}},"parent":{}}],["setzoomsmooth",{"_index":95,"name":{"116":{}},"parent":{}}],["shake",{"_index":106,"name":{"127":{}},"parent":{}}],["shakedir",{"_index":107,"name":{"128":{}},"parent":{}}],["shape",{"_index":152,"name":{"179":{},"205":{},"229":{},"406":{},"466":{},"526":{},"608":{},"704":{},"764":{},"829":{},"880":{},"957":{},"1017":{},"1077":{},"1142":{},"1202":{},"1345":{},"1420":{},"1451":{},"1581":{},"1672":{},"2427":{}},"parent":{}}],["shapestring",{"_index":910,"name":{"2361":{}},"parent":{}}],["share",{"_index":952,"name":{"2404":{}},"parent":{}}],["shift",{"_index":405,"name":{"1262":{}},"parent":{}}],["show_address_bar",{"_index":935,"name":{"2386":{}},"parent":{}}],["show_menu",{"_index":936,"name":{"2387":{}},"parent":{}}],["show_scene",{"_index":197,"name":{"278":{},"320":{}},"parent":{}}],["showscene",{"_index":261,"name":{"391":{}},"parent":{}}],["sleep",{"_index":126,"name":{"151":{},"387":{}},"parent":{}}],["sleepvalue",{"_index":990,"name":{"2467":{}},"parent":{}}],["smallcorrectionscale",{"_index":142,"name":{"169":{}},"parent":{}}],["smartscale",{"_index":896,"name":{"2342":{}},"parent":{}}],["smokeeffect",{"_index":171,"name":{"218":{},"1905":{},"2173":{},"2244":{}},"parent":{}}],["smoothdeltatime",{"_index":241,"name":{"364":{}},"parent":{}}],["soft",{"_index":657,"name":{"1802":{}},"parent":{}}],["sorttilelayers",{"_index":488,"name":{"1449":{}},"parent":{}}],["sound",{"_index":712,"name":{"1885":{},"2062":{},"2184":{},"2185":{},"2255":{},"2256":{},"2363":{}},"parent":{}}],["soundconfig",{"_index":918,"name":{"2368":{}},"parent":{}}],["soundplayer",{"_index":768,"name":{"2019":{},"2067":{}},"parent":{}}],["soundplayertype",{"_index":922,"name":{"2373":{}},"parent":{}}],["soundsprite",{"_index":766,"name":{"2014":{},"2188":{},"2259":{}},"parent":{}}],["soundsprites",{"_index":742,"name":{"1959":{},"2012":{},"2060":{}},"parent":{}}],["source",{"_index":639,"name":{"1783":{},"1784":{},"1785":{},"1786":{}},"parent":{}}],["sourcenode",{"_index":773,"name":{"2026":{}},"parent":{}}],["speedrange",{"_index":169,"name":{"199":{}},"parent":{}}],["speedrangex",{"_index":173,"name":{"221":{}},"parent":{}}],["speedrangey",{"_index":174,"name":{"222":{}},"parent":{}}],["splashscreen",{"_index":252,"name":{"377":{},"2337":{}},"parent":{}}],["splice",{"_index":406,"name":{"1263":{},"1555":{},"1566":{}},"parent":{}}],["sprite",{"_index":8,"name":{"7":{},"38":{},"45":{},"813":{},"1874":{},"2160":{},"2231":{}},"parent":{}}],["spritestruct",{"_index":913,"name":{"2364":{}},"parent":{}}],["spritestructs",{"_index":921,"name":{"2371":{}},"parent":{}}],["square",{"_index":946,"name":{"2398":{}},"parent":{}}],["stack",{"_index":132,"name":{"157":{},"359":{},"1253":{},"2345":{}},"parent":{}}],["stackitem",{"_index":1017,"name":{"2512":{}},"parent":{}}],["stackitemtype",{"_index":1015,"name":{"2511":{}},"parent":{}}],["start",{"_index":123,"name":{"147":{},"263":{},"270":{},"312":{},"344":{},"382":{},"2017":{}},"parent":{}}],["startfollow",{"_index":97,"name":{"118":{}},"parent":{}}],["startinmilliseconds",{"_index":915,"name":{"2365":{}},"parent":{}}],["state",{"_index":431,"name":{"1301":{}},"parent":{}}],["statemachine",{"_index":59,"name":{"76":{},"2222":{},"2293":{},"2546":{}},"parent":{}}],["staticbody",{"_index":1029,"name":{"2533":{}},"parent":{}}],["staticcolor",{"_index":715,"name":{"1909":{}},"parent":{}}],["staticlight",{"_index":447,"name":{"1331":{},"1891":{},"2209":{},"2280":{}},"parent":{}}],["step",{"_index":983,"name":{"2456":{}},"parent":{}}],["steps",{"_index":116,"name":{"139":{},"2491":{}},"parent":{}}],["steptype",{"_index":982,"name":{"2455":{}},"parent":{}}],["stop",{"_index":30,"name":{"29":{},"63":{},"148":{},"271":{},"313":{},"383":{},"1962":{},"1991":{},"2037":{}},"parent":{}}],["stopemit",{"_index":161,"name":{"190":{},"201":{},"225":{},"680":{}},"parent":{}}],["stopfollow",{"_index":98,"name":{"119":{},"194":{},"216":{},"240":{}},"parent":{}}],["stopreverse",{"_index":31,"name":{"30":{},"64":{}},"parent":{}}],["storageidentifier",{"_index":788,"name":{"2073":{}},"parent":{}}],["stroke",{"_index":697,"name":{"1845":{}},"parent":{}}],["strokecolor",{"_index":391,"name":{"1131":{},"2423":{}},"parent":{}}],["stroketext",{"_index":625,"name":{"1749":{},"1771":{}},"parent":{}}],["strokewidth",{"_index":698,"name":{"1846":{},"2422":{}},"parent":{}}],["styles",{"_index":957,"name":{"2419":{}},"parent":{}}],["subtract",{"_index":521,"name":{"1499":{}},"parent":{}}],["subtractnumber",{"_index":522,"name":{"1500":{}},"parent":{}}],["switch_scene",{"_index":196,"name":{"277":{},"319":{}},"parent":{}}],["switchcamera",{"_index":732,"name":{"1948":{}},"parent":{}}],["switchscene",{"_index":260,"name":{"390":{}},"parent":{}}],["switchtomaincamera",{"_index":733,"name":{"1949":{}},"parent":{}}],["sync",{"_index":789,"name":{"2074":{}},"parent":{}}],["sync_cache",{"_index":202,"name":{"283":{},"325":{}},"parent":{}}],["text",{"_index":370,"name":{"881":{},"1126":{},"1128":{},"1883":{},"2166":{},"2237":{},"2302":{},"2414":{}},"parent":{}}],["texture",{"_index":267,"name":{"398":{},"457":{},"518":{},"600":{},"696":{},"756":{},"823":{},"886":{},"948":{},"1009":{},"1069":{},"1134":{},"1193":{},"1337":{},"1462":{},"2084":{},"2092":{},"2112":{},"2126":{},"2144":{},"2201":{},"2272":{},"2521":{}},"parent":{}}],["textureatlas",{"_index":802,"name":{"2098":{},"2577":{}},"parent":{}}],["texturebase",{"_index":808,"name":{"2118":{}},"parent":{}}],["texturesheet",{"_index":811,"name":{"2132":{}},"parent":{}}],["texturestack",{"_index":455,"name":{"1398":{}},"parent":{}}],["texturestackitem",{"_index":1019,"name":{"2516":{}},"parent":{}}],["tile",{"_index":479,"name":{"1430":{}},"parent":{}}],["tileh",{"_index":492,"name":{"1464":{}},"parent":{}}],["tilelayer",{"_index":482,"name":{"1437":{},"1900":{}},"parent":{}}],["tilelayers",{"_index":477,"name":{"1422":{},"1453":{}},"parent":{}}],["tilemap",{"_index":486,"name":{"1446":{},"1898":{},"2205":{},"2276":{},"2497":{}},"parent":{}}],["tiles",{"_index":495,"name":{"1469":{}},"parent":{}}],["tileset",{"_index":484,"name":{"1439":{},"1460":{},"1899":{}},"parent":{}}],["tilew",{"_index":491,"name":{"1463":{}},"parent":{}}],["to",{"_index":1042,"name":{"2549":{}},"parent":{}}],["tohsl",{"_index":723,"name":{"1923":{},"1933":{}},"parent":{}}],["tohsla",{"_index":727,"name":{"1927":{}},"parent":{}}],["tools",{"_index":714,"name":{"1906":{}},"parent":{}}],["top",{"_index":77,"name":{"98":{}},"parent":{}}],["toprecision",{"_index":546,"name":{"1525":{}},"parent":{}}],["torgb",{"_index":728,"name":{"1928":{},"1932":{}},"parent":{}}],["torgba",{"_index":725,"name":{"1924":{},"1931":{}},"parent":{}}],["tostring",{"_index":545,"name":{"1524":{}},"parent":{}}],["tovector2like",{"_index":514,"name":{"1490":{}},"parent":{}}],["transform",{"_index":621,"name":{"1745":{},"1763":{}},"parent":{}}],["translate",{"_index":547,"name":{"1526":{},"1744":{},"1762":{}},"parent":{}}],["translatex",{"_index":548,"name":{"1527":{}},"parent":{}}],["translatey",{"_index":549,"name":{"1528":{}},"parent":{}}],["travel",{"_index":64,"name":{"84":{}},"parent":{}}],["triangle",{"_index":947,"name":{"2399":{}},"parent":{}}],["tripleproduct",{"_index":550,"name":{"1529":{}},"parent":{}}],["trycache",{"_index":462,"name":{"1405":{}},"parent":{}}],["type",{"_index":799,"name":{"2089":{},"2109":{},"2123":{},"2141":{},"2432":{},"2436":{},"2443":{},"2453":{},"2457":{},"2513":{},"2518":{},"2522":{},"2525":{},"2527":{}},"parent":{}}],["typeclasses",{"_index":846,"name":{"2223":{}},"parent":{}}],["types",{"_index":875,"name":{"2305":{}},"parent":{}}],["ui",{"_index":395,"name":{"1191":{},"1881":{},"2164":{},"2235":{},"2413":{}},"parent":{}}],["unfullscreen",{"_index":147,"name":{"174":{},"296":{},"304":{}},"parent":{}}],["unlock_pointer",{"_index":204,"name":{"285":{},"327":{}},"parent":{}}],["unlockpointer",{"_index":263,"name":{"393":{}},"parent":{}}],["unmute",{"_index":744,"name":{"1964":{},"1990":{},"2039":{}},"parent":{}}],["unregisterplugin",{"_index":560,"name":{"1542":{}},"parent":{}}],["up",{"_index":511,"name":{"1484":{}},"parent":{}}],["update",{"_index":124,"name":{"149":{},"579":{},"587":{},"661":{}},"parent":{}}],["updatetime",{"_index":671,"name":{"1818":{}},"parent":{}}],["updatetimeinterval",{"_index":669,"name":{"1816":{}},"parent":{}}],["updateviewport",{"_index":93,"name":{"114":{}},"parent":{}}],["usedelta",{"_index":1035,"name":{"2542":{}},"parent":{}}],["validatejson",{"_index":805,"name":{"2106":{}},"parent":{}}],["value",{"_index":696,"name":{"1844":{},"2514":{},"2519":{}},"parent":{}}],["values",{"_index":792,"name":{"2080":{}},"parent":{}}],["vector",{"_index":56,"name":{"73":{},"1941":{},"2553":{}},"parent":{}}],["vector2",{"_index":508,"name":{"1482":{},"2207":{},"2278":{}},"parent":{}}],["vector2like",{"_index":1072,"name":{"2588":{}},"parent":{}}],["vector2likeoptional",{"_index":1075,"name":{"2591":{}},"parent":{}}],["velocity",{"_index":275,"name":{"417":{},"477":{},"537":{},"619":{},"715":{},"775":{},"840":{},"904":{},"968":{},"1028":{},"1088":{},"1153":{},"1213":{},"1356":{},"1592":{},"1683":{}},"parent":{}}],["version",{"_index":881,"name":{"2317":{}},"parent":{}}],["versioninfo",{"_index":235,"name":{"354":{},"2316":{}},"parent":{}}],["viewport",{"_index":72,"name":{"94":{}},"parent":{}}],["visibilityfilter",{"_index":566,"name":{"1553":{}},"parent":{}}],["visible",{"_index":156,"name":{"184":{},"210":{},"234":{},"399":{},"458":{},"519":{},"601":{},"697":{},"757":{},"824":{},"887":{},"949":{},"1010":{},"1070":{},"1135":{},"1194":{},"1338":{},"1425":{},"1444":{},"1456":{},"1648":{},"1851":{},"2311":{}},"parent":{}}],["volume",{"_index":779,"name":{"2032":{},"2370":{}},"parent":{}}],["w",{"_index":79,"name":{"100":{},"408":{},"468":{},"528":{},"610":{},"706":{},"766":{},"831":{},"895":{},"959":{},"1019":{},"1079":{},"1144":{},"1204":{},"1347":{},"1434":{},"1583":{},"1642":{},"1674":{},"2506":{},"2582":{},"2595":{}},"parent":{}}],["warn",{"_index":135,"name":{"160":{}},"parent":{}}],["websoundplayer",{"_index":770,"name":{"2023":{},"2186":{},"2257":{}},"parent":{}}],["white",{"_index":692,"name":{"1839":{}},"parent":{}}],["width",{"_index":907,"name":{"2358":{}},"parent":{}}],["wobble",{"_index":351,"name":{"688":{}},"parent":{}}],["worldtoscreen",{"_index":100,"name":{"121":{}},"parent":{}}],["x",{"_index":516,"name":{"1493":{},"2380":{},"2396":{},"2416":{},"2430":{},"2461":{},"2476":{},"2486":{},"2504":{},"2580":{},"2589":{},"2592":{},"2597":{}},"parent":{}}],["xboxmapping",{"_index":927,"name":{"2377":{}},"parent":{}}],["xmlstack",{"_index":458,"name":{"1401":{}},"parent":{}}],["xor",{"_index":648,"name":{"1793":{}},"parent":{}}],["y",{"_index":517,"name":{"1494":{},"2381":{},"2417":{},"2431":{},"2462":{},"2477":{},"2487":{},"2505":{},"2581":{},"2590":{},"2593":{},"2598":{}},"parent":{}}],["yellow",{"_index":681,"name":{"1828":{}},"parent":{}}],["yoyo",{"_index":1033,"name":{"2540":{}},"parent":{}}],["zero",{"_index":509,"name":{"1483":{}},"parent":{}}],["zindex",{"_index":157,"name":{"185":{},"211":{},"235":{},"400":{},"459":{},"520":{},"602":{},"698":{},"758":{},"825":{},"888":{},"950":{},"1011":{},"1071":{},"1136":{},"1195":{},"1339":{},"1426":{},"1443":{},"1457":{},"1649":{},"2296":{},"2310":{}},"parent":{}}],["zoom",{"_index":71,"name":{"93":{},"2483":{}},"parent":{}}]],"pipeline":[]}} \ No newline at end of file diff --git a/docs/classes/core_animation_animation.Animation.html b/docs/classes/core_animation_animation.Animation.html index eea2fe03..0acfc075 100644 --- a/docs/classes/core_animation_animation.Animation.html +++ b/docs/classes/core_animation_animation.Animation.html @@ -1,7 +1,7 @@ -Animation | DuckEngine - v2.1.0
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine Animation

+Animation | DuckEngine - v3.0.0-dev
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine Animation

description

The Animation Class. An animation of frames that are used for Sprites

since

2.0.0

-

Hierarchy

  • Animation

Index

Constructors

constructor

Hierarchy

  • Animation

Index

Constructors

constructor

Properties

animationNormalTimer

animationNormalTimer: default
memberof

Animation

+

Returns Animation

Properties

animationNormalTimer

animationNormalTimer: default
memberof

Animation

description

An internal Timer that is used for counting and playing an AnimationFrame normally

since

2.0.0

-

animationReverseTimer

animationReverseTimer: default
memberof

Animation

+

animationReverseTimer

animationReverseTimer: default
memberof

Animation

description

An internal Timer that is used for counting and playing an AnimationFrame reversely

since

2.0.0

-

config

memberof

Animation

+

config

memberof

Animation

description

Configuration for the Animation, changing this has no effect, instead change the values of the Animation.

since

2.0.0

-

countBy

countBy: number
memberof

Animation

+

countBy

countBy: number
memberof

Animation

description

What the internal timers count by, defaults to the game delta time so that it can be used in the Scene.update loop

since

2.0.0

-

currentFrame

currentFrame: AnimationFrame
memberof

Animation

+

currentFrame

currentFrame: AnimationFrame
memberof

Animation

description

The current frame being played

since

2.0.0

-

currentIndex

currentIndex: number
memberof

Animation

+

currentIndex

currentIndex: number
memberof

Animation

description

The current index of the Animation#frames or Animation#reversedFrames

since

2.0.0

-

delayTimer

delayTimer: undefined | default
memberof

Animation

+

delayTimer

delayTimer: undefined | default
memberof

Animation

description

An internal Timer that is used for counting and delaying before playing the Animation, undefined if Config.delay is not a number

since

2.0.0

-

frames

frames: AnimationFrame[]
memberof

Animation

+

frames

frames: AnimationFrame[]
memberof

Animation

description

An array of AnimationFrames generated from Duck.Types.Animation.FrameBase array in config

since

2.0.0

-

game

game: Game
memberof

Animation

+

game

game: Game
memberof

Animation

description

Game instance

since

2.0.0

-

Readonly key

key: string
memberof

Animation

+

Readonly key

key: string
memberof

Animation

description

A name/key for the Animation, used by AnimationManager to play the animation

since

2.0.0

-

repeat

repeat: number
memberof

Animation

+

repeat

repeat: number
memberof

Animation

description

The amount of times the animation repeats, modified from config so that it would work with the internal Timers

since

2.0.0

-

repeatCounter

repeatCounter: number
memberof

Animation

+

repeatCounter

repeatCounter: number
memberof

Animation

description

The current amount of times an animation played/repeated

since

2.0.0

-

reversedFrames

reversedFrames: AnimationFrame[]
memberof

Animation

+

reversedFrames

reversedFrames: AnimationFrame[]
memberof

Animation

description

The same as Animation#AnimationFrames but reversed

since

2.0.0

-

scene

scene: Scene
memberof

Animation

+

scene

scene: Scene
memberof

Animation

description

Scene instance

since

2.0.0

-

sprite

sprite: Sprite
memberof

Animation

+

sprite

sprite: Sprite
memberof

Animation

description

Sprite that the animation is attached to

since

2.0.0

-

Methods

Protected createFrames

Protected normalStep

pause

  • pause(): void

Methods

Protected createFrames

Protected normalStep

pause

  • pause(): void

pauseReverse

  • pauseReverse(): void

pauseReverse

  • pauseReverse(): void

play

  • play(): void

play

  • play(): void

playReverse

  • playReverse(): void

playReverse

  • playReverse(): void

restart

  • restart(): void

restart

  • restart(): void

restartReverse

  • restartReverse(): void

restartReverse

  • restartReverse(): void

resume

  • resume(): void

resume

  • resume(): void

resumeReverse

  • resumeReverse(): void

resumeReverse

  • resumeReverse(): void

Protected reverseStep

setRepeat

  • setRepeat(repeat: number): void

Protected reverseStep

setRepeat

  • setRepeat(repeat: number): void
  • memberof

    Animation

    description

    Sets the repeat amount of the internal normal timer

    since

    2.0.0

    Parameters

    • repeat: number

      Repeat amount

      -

    Returns void

setRepeatReverse

  • setRepeatReverse(repeat: number): void

Returns void

setRepeatReverse

  • setRepeatReverse(repeat: number): void
  • memberof

    Animation

    description

    Sets the repeat amount of the internal reverse timer

    since

    2.0.0

    Parameters

    • repeat: number

      Repeat amount

      -

    Returns void

stop

  • stop(): void

Returns void

stop

  • stop(): void
  • memberof

    Animation

    description

    Stops/Cancels the Animation using the internal normal timer

    since

    2.0.0

    -

    Returns void

stopReverse

  • stopReverse(): void

stopReverse

  • stopReverse(): void
  • memberof

    Animation

    description

    Stops/Cancels the Animation using the internal reverse timer

    since

    2.0.0

    -

    Returns void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function
  • Protected method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file +

Returns void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function
  • Protected method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/core_animation_animationFrame.AnimationFrame.html b/docs/classes/core_animation_animationFrame.AnimationFrame.html index ed0c3bf9..063f51d4 100644 --- a/docs/classes/core_animation_animationFrame.AnimationFrame.html +++ b/docs/classes/core_animation_animationFrame.AnimationFrame.html @@ -1,7 +1,7 @@ -AnimationFrame | DuckEngine - v2.1.0
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine AnimationFrame

+AnimationFrame | DuckEngine - v3.0.0-dev
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine AnimationFrame

description

The AnimationFrame Class. Holds information about what col and row to use for the Animation

since

2.0.0

-

Hierarchy

  • AnimationFrame

Index

Constructors

Properties

Methods

Constructors

constructor

Hierarchy

  • AnimationFrame

Index

Constructors

Properties

Methods

Constructors

constructor

Properties

col

col: number
memberof

AnimationFrame

+

Returns AnimationFrame

Properties

col

col: number
memberof

AnimationFrame

description

The column of the AnimationFrame, sets the Sprite.currentCol to this when played

since

2.0.0

-

row

row: number
memberof

AnimationFrame

+

row

row: number
memberof

AnimationFrame

description

The row of the AnimationFrame, sets the Sprite.currentRow to this when played

since

2.0.0

-

sprite

sprite: Sprite
memberof

AnimationFrame

+

sprite

sprite: Sprite
memberof

AnimationFrame

description

The Sprite to modify the currentCol and currentRow of

since

2.0.0

-

Methods

set

  • set(): void

Methods

set

  • set(): void
  • memberof

    AnimationFrame

    description

    Sets the Sprite.currentCol to AnimationFrame.col and Sprite.currentRow to AnimationFrame.row

    since

    2.0.0

    -

    Returns void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file +

Returns void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/core_animation_animationManager.AnimationManager.html b/docs/classes/core_animation_animationManager.AnimationManager.html index 298eef0d..d86007ba 100644 --- a/docs/classes/core_animation_animationManager.AnimationManager.html +++ b/docs/classes/core_animation_animationManager.AnimationManager.html @@ -1,4 +1,4 @@ -AnimationManager | DuckEngine - v2.1.0
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • AnimationManager

Index

Constructors

constructor

Returns AnimationManager

Properties

animations

animations: Animation[]
memberof

AnimationManager

description

Animations that are registered and added to the AnimationManager

since

2.0.0

-

currentAnimation

currentAnimation: Animation
memberof

AnimationManager

+

currentAnimation

currentAnimation: Animation
memberof

AnimationManager

description

The current selected animation, last played or currently playing

since

2.0.0

-

game

game: Game
memberof

AnimationManager

+

game

game: Game
memberof

AnimationManager

description

Game instance

since

2.0.0

-

scene

scene: Scene
memberof

AnimationManager

+

scene

scene: Scene
memberof

AnimationManager

description

Scene instance

since

2.0.0

-

sprite

sprite: Sprite
memberof

AnimationManager

+

sprite

sprite: Sprite
memberof

AnimationManager

description

Sprite that the AnimationManager is attached to

since

2.0.0

-

Methods

add

Methods

add

clear

  • clear(): void

clear

  • clear(): void

createStateMachine

createStateMachine

get

Returns StateMachine

get

  • memberof

    AnimationManager

    description

    Finds and returns an Animation from the array of animations (AnimationManager#animations)

    since

    2.0.0

    Parameters

    • key: string

      Key of the Animation find

      -

    Returns undefined | Animation

getIndex

  • getIndex(key: string): number

Returns undefined | Animation

getIndex

  • getIndex(key: string): number
  • memberof

    AnimationManager

    description

    Finds and returns the index of an Animation from the array of animations (AnimationManager#animations)

    since

    2.0.0

    Parameters

    • key: string

      Key of the Animation find the index of

      -

    Returns number

pause

  • pause(): void

Returns number

pause

  • pause(): void

pauseReverse

  • pauseReverse(): void

pauseReverse

  • pauseReverse(): void

play

  • play(): void

play

  • play(): void

playReverse

  • playReverse(): void

playReverse

  • playReverse(): void

remove

  • remove(key: string): void

remove

  • remove(key: string): void
  • memberof

    AnimationManager

    description

    Removes an Animation from the array of animations (AnimationManager#animations)

    since

    2.0.0

    Parameters

    • key: string

      Key of the Animation to remove

      -

    Returns void

restart

  • restart(): void

Returns void

restart

  • restart(): void

restartReverse

  • restartReverse(): void

restartReverse

  • restartReverse(): void

resume

  • resume(): void

resume

  • resume(): void

resumeReverse

  • resumeReverse(): void

resumeReverse

  • resumeReverse(): void

setCurrentAnimation

  • setCurrentAnimation(key: string): void

setCurrentAnimation

  • setCurrentAnimation(key: string): void
  • memberof

    AnimationManager

    description

    Sets the current animation

    since

    2.0.0

    Parameters

    • key: string

      Key of the Animation to set as the currentAnimation

      -

    Returns void

setRepeat

  • setRepeat(repeat: number): void

Returns void

setRepeat

  • setRepeat(repeat: number): void

setRepeatReverse

  • setRepeatReverse(repeat: number): void

setRepeatReverse

  • setRepeatReverse(repeat: number): void

stop

  • stop(): void

stop

  • stop(): void

stopReverse

  • stopReverse(): void

stopReverse

  • stopReverse(): void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file +

Returns void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/core_animation_animationState.AnimationState.html b/docs/classes/core_animation_animationState.AnimationState.html index fe81855d..31795621 100644 --- a/docs/classes/core_animation_animationState.AnimationState.html +++ b/docs/classes/core_animation_animationState.AnimationState.html @@ -1,7 +1,7 @@ -AnimationState | DuckEngine - v2.1.0
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine AnimationState

+AnimationState | DuckEngine - v3.0.0-dev
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine AnimationState

description

The AnimationState Class. Holds information that can be used and added by StateMachine

since

2.0.0

-

Hierarchy

  • AnimationState

Index

Constructors

constructor

Hierarchy

  • AnimationState

Index

Constructors

constructor

  • since

    2.0.0

    Parameters

    • key: string

      The name/key of the AnimationState, used to identify between states, the same as the Animation

    • animation: Animation
      @@ -10,19 +10,19 @@

      The Vector2 position of the AnimationState on an imaginary 2D Plane, used to travel in between states by StateMachine

    • autoAdvance: boolean

      Determines whether the AnimationState auto advances to another AnimationState on completion

      -

    Returns AnimationState

Properties

animation

animation: Animation
memberof

AnimationState

+

Returns AnimationState

Properties

animation

animation: Animation
memberof

AnimationState

description

The Animation to play by the AnimationState

since

2.0.0

-

autoAdvance

autoAdvance: boolean
memberof

AnimationState

+

autoAdvance

autoAdvance: boolean
memberof

AnimationState

description

Determines whether the AnimationState auto advances to another AnimationState on completion

since

2.0.0

-

connections

connections: AnimationState[]
memberof

AnimationState

+

connections

connections: AnimationState[]
memberof

AnimationState

description

An array of AnimationStates that are connected to this AnimationState, can only travel between connections

since

2.0.0

-

Readonly key

key: string
memberof

AnimationState

+

Readonly key

key: string
memberof

AnimationState

description

The name/key of the AnimationState, used to identify between states, the same as the Animation

since

2.0.0

-

vector

vector: Vector2
memberof

AnimationState

+

vector

vector: Vector2
memberof

AnimationState

description

The Vector2 position of the AnimationState on an imaginary 2D Plane, used to travel in between states by StateMachine

since

2.0.0

-

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file +

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/core_animation_stateMachine.StateMachine.html b/docs/classes/core_animation_stateMachine.StateMachine.html index b6fcfd80..e3c4bd34 100644 --- a/docs/classes/core_animation_stateMachine.StateMachine.html +++ b/docs/classes/core_animation_stateMachine.StateMachine.html @@ -1,44 +1,44 @@ -StateMachine | DuckEngine - v2.1.0
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • StateMachine

Index

Constructors

constructor

Returns StateMachine

Properties

animations

animations: Animation[]
memberof

StateMachine

description

All animations used by the StateMachine

since

2.0.0

-

config

memberof

StateMachine

+

config

memberof

StateMachine

description

The configuration of the StateMachine

since

2.0.0

-

connections

connections: AnimationState[][]
memberof

StateMachine

+

connections

connections: AnimationState[][]
memberof

StateMachine

description

A 2D Array of AnimationStates, one connection is represented by a nested array, ex: StateMachine.connections = [[/* one connection here */]]

since

2.0.0

-

currentState

currentState: AnimationState
memberof

StateMachine

+

currentState

currentState: AnimationState
memberof

StateMachine

description

The current AnimationState that is traveled to, use this to get and play the animation

since

2.0.0

-

Methods

canTravel

  • canTravel(dest: string): boolean

Methods

canTravel

  • canTravel(dest: string): boolean
  • memberof

    StateMachine

    description

    Checks if the currentState's connections include another AnimationState connection with a passed key

    since

    2.0.0

    Parameters

    • dest: string

      The destination or key to find

      -

    Returns boolean

connectLoop

Returns boolean

connectLoop

connectTo

Returns void

connectTo

travel

Returns void

travel

  • memberof

    StateMachine

    description

    Travels along the imaginary 2D plane to find a connection based on other connections' vectors

    since

    2.0.0

    Parameters

    • vector: Vector2

      Vector to match to another Connection that will set the currentState as

      -

    Returns void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file +

Returns void

Legend

  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Namespace
  • Variable
  • Function

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/core_camera_camera.Camera.html b/docs/classes/core_camera_camera.Camera.html index ce9aab39..47e6521a 100644 --- a/docs/classes/core_camera_camera.Camera.html +++ b/docs/classes/core_camera_camera.Camera.html @@ -1,69 +1,76 @@ -Camera | DuckEngine - v2.1.0
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine Camera

+Camera | DuckEngine - v3.0.0-dev
Options
All
  • Public
  • Public/Protected
  • All
Menu
classdesc

Creates a DuckEngine Camera

description

The Camera Class. Creates and uses a viewport that acts like a camera

since

1.0.0-beta

-

Hierarchy

  • Camera

Index

Constructors

constructor

Hierarchy

  • Camera

Index

Constructors

constructor

Properties

Protected aspectRatio

aspectRatio: undefined | number

Protected bounds

bounds: undefined | { h: number; position: { x: number; y: number }; w: number }

distance

distance: number
memberof

Camera

-
description

The Camera's current zoom

+

Returns Camera

Properties

Protected aspectRatio

aspectRatio: undefined | number

Protected bounds

bounds: undefined | { h: number; position: { x: number; y: number }; w: number }

fieldOfView

fieldOfView: number
memberof

Camera

+
description

The Camera's current FOV, default: PI / 4

since

2.1.0

-

fieldOfView

fieldOfView: number
memberof

Camera

-
description

The Camera's current FOV

-
since

2.1.0

-

following

memberof

Camera

+

following

memberof

Camera

description

A gameobject that the Camera is currently following

-
since

game

game: Game
memberof

Camera

+
since

1.0.0

+

game

game: Game
memberof

Camera

description

Game instance

since

1.0.0-beta

-

Readonly isMain

isMain: boolean
memberof

Camera

+

Readonly isMain

isMain: boolean
memberof

Camera

description

Determines if the camera is a main camera in the attached scene. Must be added by Scene.mainCamera

since

1.0.0-beta

-

Protected lerpX

lerpX: number = 1

Protected lerpY

lerpY: number = 1

Protected lookAt

lookAt: number[]

scene

scene: Scene
memberof

Camera

+

lerpAmount

lerpAmount: Vector2
memberof

Camera

+
description

If the Camera is following a GameObject, this is the amount that will be used to lerp the Camera.position to the GameObject.position

+
since

3.0.0

+

position

position: Vector2
memberof

Camera

+
description

The position of the Camera

+
since

3.0.0

+

scene

scene: Scene
memberof

Camera

description

Scene instance

since

2.0.0

-

viewport

viewport: { bottom: number; h: number; left: number; right: number; scale: number[]; top: number; w: number }
memberof

Camera

+

viewport

viewport: { bottom: number; h: number; left: number; right: number; scale: Vector2; top: number; w: number }
memberof

Camera

description

Camera's viewport, has info about the viewport

since

1.0.0-beta

-

Type declaration

  • bottom: number
  • h: number
  • left: number
  • right: number
  • scale: number[]
  • top: number
  • w: number

Accessors

defaultFOV

  • get defaultFOV(): number

zoom

zoom: number
memberof

Camera

+
description

The Camera's current zoom, default: 1000.0

+
since

3.0.0

+

Accessors

defaultFOV

  • get defaultFOV(): number

defaultZoom

  • get defaultZoom(): number

defaultZoom

  • get defaultZoom(): number
  • memberof

    Camera

    description

    Returns the default zoom, also uses DPR scaling if enabled

    since

    1.0.0

    -

    Returns number

Methods

Protected applyScale

  • applyScale(): void

Protected applyTranslation

  • applyTranslation(): void

autoCull

Methods

Protected applyScale

  • applyScale(): void

Protected applyTranslation

  • applyTranslation(): void

autoCull

  • memberof

    Camera

    description

    A form of Frustum Culling that gets all objects visible to the player by the viewport's width and height and culls those objects and does not render objects outside/not-visible to the player/camera

    since

    2.0.0

    -

    Parameters

    Returns void

begin

  • begin(): void

begin

  • begin(): void
  • memberof

    Camera

    description

    Begins camera path

    DO NOT CALL MANUALLY, CALLED IN GAME -> SCENE LOOP AUTOMATICALLY

    since

    1.0.0-beta

    -

    Returns void

cull

cull

  • memberof

    Camera

    description

    Culls/Renders objects that are passed and does not render other object that are not passed

    since

    2.0.0

    Parameters

    Returns void

end

  • end(): void
  • Optional options: CullingOptions
  • Returns void

    end

    • end(): void
    • memberof

      Camera

      description

      Ends camera path

      DO NOT CALL MANUALLY, CALLED IN GAME -> SCENE LOOP AUTOMATICALLY

      since

      1.0.0-beta

      -

      Returns void

    moveTo

    • moveTo(x: number, y: number): void

    Protected followCircle

    • followCircle(): void

    Protected followRect

    • followRect(): void

    moveTo

    • moveTo(x: number, y: number): void
    • memberof

      Camera

      description

      Moves the camera to a position

      since

      1.0.0-beta

      Parameters

      • x: number

        X position

      • y: number

        Y position

        -

      Returns void

    resetFOV

    • resetFOV(): void

    Returns void

    resetFOV

    • resetFOV(): void
    • memberof

      Camera

      description

      Resets the FOV to the default value

      since

      1.0.0-beta

      -

      Returns void

    resetZoom

    • resetZoom(): void

    resetZoom

    • resetZoom(): void
    • memberof

      Camera

      description

      Resets the Zoom to the default value

      since

      1.0.0-beta

      -

      Returns void

    screenToWorld

    screenToWorld

    setBounds

    • setBounds(bounds: { h: number; position: { x: number; y: number }; w: number }): void

    Returns Duck.TypeClasses.GameObjects.GameObject<Duck.Types.Texture.Type>

    setBounds

    • setBounds(bounds: { h: number; position: { x: number; y: number }; w: number }): void
    • memberof

      Camera

      description

      Bounds of the Camera, an area the camera can be in

      since

      1.0.0-beta

      -

      Parameters

      • bounds: { h: number; position: { x: number; y: number }; w: number }
        • h: number
        • position: { x: number; y: number }
          • x: number
          • y: number
        • w: number

      Returns void

    setFOV

    • setFOV(f: number): void
    • memberof

      Camera

      +

      Parameters

      • bounds: { h: number; position: { x: number; y: number }; w: number }
        • h: number
        • position: { x: number; y: number }
          • x: number
          • y: number
        • w: number

      Returns void

    setFOV

    • setFOV(f: number): void
    • memberof

      Camera

      description

      Sets the FOV

      since

      1.0.0-beta

      Parameters

      • f: number

        FOV value

        -

      Returns void

    setFOVSmooth

    • setFOVSmooth(intervalMS: number, smoothValue: number, f: number): void

    Returns void

    setFOVSmooth

    • setFOVSmooth(intervalMS: number, smoothValue: number, f: number): void
    • memberof

      Camera

      description

      Sets the FOV smoothly

      since

      1.0.0-beta

      Parameters

      • intervalMS: number
        @@ -89,12 +96,12 @@

        The number that is added to FOV on an interval

      • f: number

        Target FOV value

        -

      Returns void

    setZoom

    • setZoom(z: number): void

    Returns void

    setZoom

    • setZoom(z: number): void
    • memberof

      Camera

      description

      Sets the zoom

      since

      1.0.0-beta

      Parameters

      • z: number

        Zoom value

        -

      Returns void

    setZoomSmooth

    • setZoomSmooth(intervalMS: number, smoothValue: number, z: number): void

    Returns void

    setZoomSmooth

    • setZoomSmooth(intervalMS: number, smoothValue: number, z: number): void
    • memberof

      Camera

      description

      Sets the zoom smoothly

      since

      1.0.0-beta

      Parameters

      • intervalMS: number
        @@ -103,8 +110,8 @@

        The number that is added to zoom on an interval

      • z: number

        Target Zoom value

        -

      Returns void

    shake

    • shake(intervalMS: number, timeMS: number, v: number): void

    Returns void

    shake

    • shake(intervalMS: number, timeMS: number, v: number): void
    • memberof

      Camera

      +
      description

      Shakes the camera in a random direction

      since

      1.0.0

      Parameters

      • intervalMS: number

        How often (in milliseconds) the passed value is added/subtracted from the Camera viewport position

        @@ -112,15 +119,24 @@

        For how long in milliseconds the shake lasts

      • v: number

        Value to be added/subtracted from the Camera viewport position

        -

      Returns void

    startFollow

    Returns void

    shakeDir

    • shakeDir(intervalMS: number, timeMS: number, vector: Vector2, opposite?: boolean): void
    • memberof

      Camera

      +
      description

      Shakes the camera in a direction

      +
      since

      3.0.0

      +

      Parameters

      • intervalMS: number
        +

        How often (in milliseconds) the passed value is added/subtracted from the Camera viewport position

        +
      • timeMS: number
        +

        For how long in milliseconds the shake lasts

        +
      • vector: Vector2
        +

        Vector to be added/subtracted from the Camera viewport position, also used for direction of shaking

        +
      • opposite: boolean = true

      Returns void

    startFollow

    stopFollow

    • stopFollow(): void

    Returns void

    stopFollow

    • stopFollow(): void

    Protected updateViewport

    • updateViewport(): void

    worldToScreen

    Protected updateViewport

    • updateViewport(): void

    worldToScreen

    Returns Duck.TypeClasses.GameObjects.GameObject<Duck.Types.Texture.Type>

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns Duck.TypeClasses.GameObjects.GameObject<Duck.Types.Texture.Type>

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_cutscene_cutscene.Cutscene.html b/docs/classes/core_cutscene_cutscene.Cutscene.html index 74723434..d6958eff 100644 --- a/docs/classes/core_cutscene_cutscene.Cutscene.html +++ b/docs/classes/core_cutscene_cutscene.Cutscene.html @@ -1,51 +1,51 @@ -Cutscene | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Cutscene

    +Cutscene | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Cutscene

    description

    The Cutscene Class. Create a cutscene

    since

    1.0.0-beta

    -

    Hierarchy

    • Cutscene

    Index

    Constructors

    constructor

    Hierarchy

    • Cutscene

    Index

    Constructors

    constructor

    Properties

    Protected camera

    camera: Camera

    Protected config

    game

    game: Game
    memberof

    Cutscene

    +
  • game: Game
  • Returns Cutscene

    Properties

    Protected camera

    camera: Camera

    Protected config

    game

    game: Game
    memberof

    Cutscene

    description

    Game instance

    since

    1.0.0-beta

    -

    index

    index: number
    memberof

    Cutscene

    +

    index

    index: number
    memberof

    Cutscene

    description

    The index of the current cutscene step

    since

    1.0.0-beta

    -

    Protected instructions

    instructions: Instructions

    Protected mainObject

    Protected otherCameras

    otherCameras: Camera[]

    Protected otherObjects

    running

    running: boolean
    memberof

    Cutscene

    +

    Protected instructions

    instructions: Instructions

    Protected mainObject

    Protected otherCameras

    otherCameras: Camera[]

    Protected otherObjects

    running

    running: boolean
    memberof

    Cutscene

    description

    The state of the Cutscene running

    since

    1.0.0-beta

    -

    Protected steps

    steps: Step[]

    Methods

    Protected init

    • init(): void

    next

    • next(): void

    Protected steps

    steps: Step[]

    Methods

    Protected init

    • init(): void

    next

    • next(): void

    off

    off

    on

    Returns void

    on

    • memberof

      Cutscene

      description

      Adds an event listener to Cutscene

      since

      1.0.0-beta

      Parameters

      • type: OnListenerType

        Listener type

      • cb: (...args: any) => void

        Callback function

        -
          • (...args: any): void
          • Parameters

            • Rest ...args: any

            Returns void

      Returns void

    sleep

    • sleep(ms: number): Promise<unknown>
      • (...args: any): void
      • Parameters

        • Rest ...args: any

        Returns void

    Returns void

    sleep

    • sleep(ms: number): Promise<unknown>
    • memberof

      Cutscene

      description

      Sleeps/Waits for a duration

      since

      1.0.0-beta

      Parameters

      • ms: number

        Duration in millisecond

        -

      Returns Promise<unknown>

    start

    • start(): void

    Returns Promise<unknown>

    start

    • start(): void
    • memberof

      Cutscene

      description

      Starts the cutscene

      emits

      EVENTS.CUTSCENE.START

      since

      1.0.0-beta

      -

      Returns void

    stop

    • stop(): void

    stop

    • stop(): void

    update

    • update(): void

    update

    • update(): void
    • memberof

      Cutscene

      description

      Updates the cutscene, must be in a loop or interval and come before Cutscene.next()

      since

      1.0.0-beta

      -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_display_displayManager.DisplayManager.html b/docs/classes/core_display_displayManager.DisplayManager.html index 966ad4ea..c3fb2b3d 100644 --- a/docs/classes/core_display_displayManager.DisplayManager.html +++ b/docs/classes/core_display_displayManager.DisplayManager.html @@ -1 +1 @@ -DisplayManager | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • DisplayManager

    Index

    Constructors

    constructor

    Properties

    eventEmitter

    eventEmitter: EventEmitter

    game

    game: Game

    Methods

    dprScale

    • dprScale(): void

    fullscreen

    • fullscreen(): void

    resetScale

    • resetScale(): void

    scale

    scaleAspectRatio

    scaleToWindow

    • scaleToWindow(): void

    smallCorrectionScale

    • smallCorrectionScale(): void

    unfullscreen

    • unfullscreen(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +DisplayManager | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • DisplayManager

    Index

    Constructors

    constructor

    Properties

    eventEmitter

    eventEmitter: EventEmitter

    game

    game: Game

    Methods

    dprScale

    • dprScale(): void

    fullscreen

    • fullscreen(): void

    resetScale

    • resetScale(): void

    scale

    scaleAspectRatio

    scaleToWindow

    • scaleToWindow(): void

    smallCorrectionScale

    • smallCorrectionScale(): void

    unfullscreen

    • unfullscreen(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_effect_effect.Effect.html b/docs/classes/core_effect_effect.Effect.html index 522037f7..ccd4d455 100644 --- a/docs/classes/core_effect_effect.Effect.html +++ b/docs/classes/core_effect_effect.Effect.html @@ -1,7 +1,7 @@ -Effect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Effect

    +Effect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Effect

    description

    The Effect Class. Store a particleEmitter instance and particles that can be run easily

    since

    1.2.0

    -

    Hierarchy

    Implements

    Index

    Constructors

    constructor

    Hierarchy

    Implements

    Index

    Constructors

    constructor

    • description

      Creates an Effect instance.

      since

      1.2.0

      Parameters

      • rangeX: Range

        A range of 2 numbers to determine the new created particles x position

        @@ -11,55 +11,55 @@

        ParticleEmitter instance

      • game: Game

        Game instance

        -

      Returns Effect

    Properties

    culled

    culled: boolean
    memberof

    Effect

    +

    Returns Effect

    Properties

    culled

    culled: boolean
    memberof

    Effect

    description

    Determines if the Effect should be visible by the current scene's current camera

    since

    2.1.0

    -

    following

    memberof

    Effect

    +

    following

    memberof

    Effect

    description

    A gameobject that the Effect is following

    since

    1.2.0

    -

    game

    game: Game
    memberof

    Effect

    +

    game

    game: Game
    memberof

    Effect

    description

    Game instance

    since

    1.2.0

    -

    Readonly id

    id: string
    memberof

    Effect

    +

    Readonly id

    id: string
    memberof

    Effect

    description

    A unique identifier for the Effect

    since

    1.2.0

    -

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    Effect

    +

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    Effect

    description

    ParticleEmitter to control

    since

    1.2.0

    -

    Protected randomMaxOffset

    randomMaxOffset: number

    rangeX

    rangeX: Range
    memberof

    Effect

    +

    Protected randomMaxOffset

    randomMaxOffset: number

    rangeX

    rangeX: Range
    memberof

    Effect

    description

    Range of numbers for x pos

    since

    1.2.0

    -

    rangeY

    rangeY: Range
    memberof

    Effect

    +

    rangeY

    rangeY: Range
    memberof

    Effect

    description

    Range of numbers for y pos

    since

    1.2.0

    -

    Readonly shape

    shape: string
    memberof

    Effect

    +

    Readonly shape

    shape: string
    memberof

    Effect

    description

    Shape, always "Effect" used for Scene.displayList

    since

    1.2.0

    -

    visible

    visible: boolean
    memberof

    Effect

    +

    visible

    visible: boolean
    memberof

    Effect

    description

    Determines the visibility of the Effect

    since

    1.2.0

    -

    zIndex

    zIndex: number
    memberof

    Effect

    +

    zIndex

    zIndex: number
    memberof

    Effect

    description

    Used for depth sorted

    since

    1.2.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    emit

    • emit(): void

    emit

    • emit(): void

    emitFor

    • emitFor(ms: number): void

    emitFor

    • emitFor(ms: number): void
    • memberof

      Effect

      description

      Makes the particleEmitter emit for a duration

      since

      1.2.0

      Parameters

      • ms: number

        Duration in milliseconds

        -

      Returns void

    follow

    Returns void

    follow

    stopEmit

    • stopEmit(): void
  • randomMaxOffset: number = 5
  • Returns void

    stopEmit

    • stopEmit(): void

    stopFollow

    • stopFollow(): void

    stopFollow

    • stopFollow(): void
    • memberof

      Effect

      description

      Makes the effect stop following the GameObject

      since

      1.2.0

      -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_effect_preset_explosion.ExplosionEffect.html b/docs/classes/core_effect_preset_explosion.ExplosionEffect.html index e753f865..f447f457 100644 --- a/docs/classes/core_effect_preset_explosion.ExplosionEffect.html +++ b/docs/classes/core_effect_preset_explosion.ExplosionEffect.html @@ -1,52 +1,52 @@ -ExplosionEffect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    culled

    culled: boolean
    memberof

    Effect

    +ExplosionEffect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    culled

    culled: boolean
    memberof

    Effect

    description

    Determines if the Effect should be visible by the current scene's current camera

    since

    2.1.0

    -

    following

    memberof

    Effect

    +

    following

    memberof

    Effect

    description

    A gameobject that the Effect is following

    since

    1.2.0

    -

    game

    game: Game
    memberof

    Effect

    +

    game

    game: Game
    memberof

    Effect

    description

    Game instance

    since

    1.2.0

    -

    Readonly id

    id: string
    memberof

    Effect

    +

    Readonly id

    id: string
    memberof

    Effect

    description

    A unique identifier for the Effect

    since

    1.2.0

    -

    Protected maxAge

    maxAge: number

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    Effect

    +

    Protected maxAge

    maxAge: number

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    Effect

    description

    ParticleEmitter to control

    since

    1.2.0

    -

    Protected randomMaxOffset

    randomMaxOffset: number

    rangeX

    rangeX: Range
    memberof

    Effect

    +

    Protected randomMaxOffset

    randomMaxOffset: number

    rangeX

    rangeX: Range
    memberof

    Effect

    description

    Range of numbers for x pos

    since

    1.2.0

    -

    rangeY

    rangeY: Range
    memberof

    Effect

    +

    rangeY

    rangeY: Range
    memberof

    Effect

    description

    Range of numbers for y pos

    since

    1.2.0

    -

    Readonly shape

    shape: string
    memberof

    Effect

    +

    Readonly shape

    shape: string
    memberof

    Effect

    description

    Shape, always "Effect" used for Scene.displayList

    since

    1.2.0

    -

    Protected speedRange

    speedRange: Range

    visible

    visible: boolean
    memberof

    Effect

    +

    Protected speedRange

    speedRange: Range

    visible

    visible: boolean
    memberof

    Effect

    description

    Determines the visibility of the Effect

    since

    1.2.0

    -

    zIndex

    zIndex: number
    memberof

    Effect

    +

    zIndex

    zIndex: number
    memberof

    Effect

    description

    Used for depth sorted

    since

    1.2.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    emit

    • emit(): void

    emit

    • emit(): void

    emitFor

    • emitFor(ms: number): void

    emitFor

    • emitFor(ms: number): void

    follow

    Returns void

    follow

    stopEmit

    • stopEmit(): void
  • randomMaxOffset: number = 5
  • Returns void

    stopEmit

    • stopEmit(): void

    stopFollow

    • stopFollow(): void

    stopFollow

    • stopFollow(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_effect_preset_smoke.SmokeEffect.html b/docs/classes/core_effect_preset_smoke.SmokeEffect.html index 78bec46e..a35acf7e 100644 --- a/docs/classes/core_effect_preset_smoke.SmokeEffect.html +++ b/docs/classes/core_effect_preset_smoke.SmokeEffect.html @@ -1,52 +1,52 @@ -SmokeEffect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    • new SmokeEffect(rangeX: Range, rangeY: Range, game: Game, particleAmount?: number, speedRangeX?: Range, speedRangeY?: Range, maxAge?: number, color?: string, interval?: number, scene: Scene): SmokeEffect

    Properties

    culled

    culled: boolean
    memberof

    Effect

    +SmokeEffect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    • new SmokeEffect(rangeX: Range, rangeY: Range, game: Game, particleAmount?: number, speedRangeX?: Range, speedRangeY?: Range, maxAge?: number, color?: string, interval?: number, scene: Scene): SmokeEffect

    Properties

    culled

    culled: boolean
    memberof

    Effect

    description

    Determines if the Effect should be visible by the current scene's current camera

    since

    2.1.0

    -

    following

    memberof

    Effect

    +

    following

    memberof

    Effect

    description

    A gameobject that the Effect is following

    since

    1.2.0

    -

    game

    game: Game
    memberof

    Effect

    +

    game

    game: Game
    memberof

    Effect

    description

    Game instance

    since

    1.2.0

    -

    Readonly id

    id: string
    memberof

    Effect

    +

    Readonly id

    id: string
    memberof

    Effect

    description

    A unique identifier for the Effect

    since

    1.2.0

    -

    Protected interval

    interval: number

    Protected maxAge

    maxAge: number

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    Effect

    +

    Protected interval

    interval: number

    Protected maxAge

    maxAge: number

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    Effect

    description

    ParticleEmitter to control

    since

    1.2.0

    -

    Protected randomMaxOffset

    randomMaxOffset: number

    rangeX

    rangeX: Range
    memberof

    Effect

    +

    Protected randomMaxOffset

    randomMaxOffset: number

    rangeX

    rangeX: Range
    memberof

    Effect

    description

    Range of numbers for x pos

    since

    1.2.0

    -

    rangeY

    rangeY: Range
    memberof

    Effect

    +

    rangeY

    rangeY: Range
    memberof

    Effect

    description

    Range of numbers for y pos

    since

    1.2.0

    -

    Readonly shape

    shape: string
    memberof

    Effect

    +

    Readonly shape

    shape: string
    memberof

    Effect

    description

    Shape, always "Effect" used for Scene.displayList

    since

    1.2.0

    -

    Protected speedRangeX

    speedRangeX: Range

    Protected speedRangeY

    speedRangeY: Range

    visible

    visible: boolean
    memberof

    Effect

    +

    Protected speedRangeX

    speedRangeX: Range

    Protected speedRangeY

    speedRangeY: Range

    visible

    visible: boolean
    memberof

    Effect

    description

    Determines the visibility of the Effect

    since

    1.2.0

    -

    zIndex

    zIndex: number
    memberof

    Effect

    +

    zIndex

    zIndex: number
    memberof

    Effect

    description

    Used for depth sorted

    since

    1.2.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    emit

    • emit(): void

    emit

    • emit(): void

    emitFor

    • emitFor(ms: number): void

    emitFor

    • emitFor(ms: number): void

    follow

    Returns void

    follow

    stopEmit

    • stopEmit(): void
  • randomMaxOffset: number = 5
  • Returns void

    stopEmit

    • stopEmit(): void

    stopFollow

    • stopFollow(): void

    stopFollow

    • stopFollow(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_events_eventEmitter.EventEmitter.html b/docs/classes/core_events_eventEmitter.EventEmitter.html index 36a897b2..6e7160b3 100644 --- a/docs/classes/core_events_eventEmitter.EventEmitter.html +++ b/docs/classes/core_events_eventEmitter.EventEmitter.html @@ -1 +1 @@ -EventEmitter | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • EventEmitter

    Index

    Constructors

    Properties

    Methods

    Constructors

    constructor

    Properties

    callbacks

    callbacks: {} = {}

    Type declaration

    • [s: string]: ((...args: any[]) => any)[]

    Methods

    emit

    • emit(event: string, ...args: any): void

    off

    • off(event: string): void

    on

    • on(event: string, cb: (...args: any) => void): void
    • Parameters

      • event: string
      • cb: (...args: any) => void
          • (...args: any): void
          • Parameters

            • Rest ...args: any

            Returns void

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +EventEmitter | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • EventEmitter

    Index

    Constructors

    Properties

    Methods

    Constructors

    constructor

    Properties

    callbacks

    callbacks: {} = {}

    Type declaration

    • [s: string]: ((...args: any[]) => any)[]

    Methods

    emit

    • emit(event: string, ...args: any): void

    off

    • off(event: string): void

    on

    • on(event: string, cb: (...args: any) => void): void
    • Parameters

      • event: string
      • cb: (...args: any) => void
          • (...args: any): void
          • Parameters

            • Rest ...args: any

            Returns void

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_game.Game.html b/docs/classes/core_game.Game.html index 3f14a7f4..07e5a1bf 100644 --- a/docs/classes/core_game.Game.html +++ b/docs/classes/core_game.Game.html @@ -1,118 +1,121 @@ -Game | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Game

    +Game | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Game

    description

    The Game Class. Stores many important methods and properties.

    since

    1.0.0-beta

    -

    Hierarchy

    • Game

    Index

    Constructors

    constructor

    Hierarchy

    • Game

    Index

    Constructors

    constructor

    Properties

    animationFrame

    animationFrame: undefined | number
    memberof

    Game

    +

    Returns Game

    Properties

    animationFrame

    animationFrame: undefined | number
    memberof

    Game

    description

    A reference to the animationFrame

    since

    1.0.0

    -

    browser

    browser: string
    memberof

    Game

    +

    browser

    browser: string
    memberof

    Game

    description

    The browser being used

    since

    2.0.0

    -

    cacheManager

    cacheManager: CacheManager
    memberof

    Game

    +

    cacheManager

    cacheManager: CacheManager
    memberof

    Game

    description

    A CacheManager instance

    since

    2.0.0

    -

    canvas

    canvas: HTMLCanvasElement
    memberof

    Game

    +

    canvas

    canvas: HTMLCanvasElement
    memberof

    Game

    description

    The Canvas that is used to render to

    since

    1.0.0-beta

    -

    Readonly config

    memberof

    Game

    +

    Readonly config

    memberof

    Game

    description

    Game Configuration

    since

    1.0.0-beta

    -

    deltaTime

    deltaTime: number
    memberof

    Game

    +

    deltaTime

    deltaTime: number
    memberof

    Game

    description

    The time since the last frame

    since

    1.0.0

    -

    deltaTimeArray

    deltaTimeArray: number[]
    memberof

    Game

    +

    deltaTimeArray

    deltaTimeArray: number[]
    memberof

    Game

    description

    An array of the last 100 deltaTimes, deltaTime = time since last frame

    since

    2.0.0

    -

    displayManager

    displayManager: DisplayManager
    memberof

    Game

    +

    displayManager

    displayManager: DisplayManager
    memberof

    Game

    description

    A DisplayManager, manages the scaling of the canvas

    since

    2.0.0

    -

    eventEmitter

    eventEmitter: EventEmitter
    memberof

    Game

    +

    eventEmitter

    eventEmitter: EventEmitter
    memberof

    Game

    description

    An EventEmitter, used by many classes other than the Game class (also used by Game class)

    since

    2.0.0

    -

    fps

    fps: number
    memberof

    Game

    +

    fps

    fps: number
    memberof

    Game

    description

    The current fps (Frames per second) that the Game loop is running at

    since

    2.0.0

    -

    isInFullscreen

    isInFullscreen: boolean
    memberof

    Game

    +

    isInFullscreen

    isInFullscreen: boolean
    memberof

    Game

    description

    The state of being in fullscreen, determines if the game is in fullscreen or not, changing this value does nothing use game.fullscreen and game.unfullscreen to effect this value

    since

    1.0.0

    -

    isLoaded

    isLoaded: boolean
    memberof

    Game

    +

    isLoaded

    isLoaded: boolean
    memberof

    Game

    description

    The state of the game, if it is currently loading

    since

    2.0.0

    -

    isRendering

    isRendering: boolean
    memberof

    Game

    +

    isRendering

    isRendering: boolean
    memberof

    Game

    description

    The state of the game, if it is currently rendering

    since

    2.0.0

    -

    Protected now

    now: number

    Readonly oldHeight

    oldHeight: number
    memberof

    Game

    +

    Protected now

    now: number

    Readonly oldHeight

    oldHeight: number
    memberof

    Game

    description

    The width of the canvas that was set by the config, never changes, may not be current

    since

    2.1.0

    -

    Protected oldTime

    oldTime: number

    Readonly oldWidth

    oldWidth: number
    memberof

    Game

    +

    Protected oldTime

    oldTime: number

    Readonly oldWidth

    oldWidth: number
    memberof

    Game

    description

    The width of the canvas that was set by the config, never changes, may not be current

    since

    2.1.0

    -

    pluginManager

    pluginManager: PluginManager
    memberof

    Game

    +

    pluginManager

    pluginManager: PluginManager
    memberof

    Game

    description

    A PluginManager, stores and manages plugins

    since

    2.0.0

    -

    renderer

    renderer: CanvasRenderer
    memberof

    Game

    +

    renderer

    renderer: CanvasRenderer
    memberof

    Game

    description

    The Renderer used to draw and clear frames

    since

    2.1.0

    -

    scenes

    scenes: { add: any; remove: any }
    memberof

    Game

    +

    scenes

    scenes: { add: any; remove: any }
    memberof

    Game

    description

    The scene manager, object that holds methods to add and remove scenes from the Game.stack

    type{

    add: (scenes: Scene[]) => void; remove: (scene: Scene) => void };

    since

    1.0.0-beta

    -

    Type declaration

    smoothDeltaTime

    smoothDeltaTime: number
    memberof

    Game

    +

    Type declaration

    smoothDeltaTime

    smoothDeltaTime: number
    memberof

    Game

    description

    The time since the last frame averaged and smoothed out using Game.deltaTimeArray, applied to velocity of gameobjects

    since

    2.0.0

    -

    splashScreen

    splashScreen: string
    memberof

    Game

    +

    splashScreen

    splashScreen: string
    memberof

    Game

    description

    The source to the splash screen image that is shown during loading

    since

    2.0.0

    -

    stack

    stack: Stack
    memberof

    Game

    +

    stack

    stack: Stack
    memberof

    Game

    description

    The Game Stack, holds all Scenes, and the defaultScene key

    since

    1.0.0-beta

    -

    Methods

    Protected drawSplashScreen

    • drawSplashScreen(): Promise<void>

    Static Readonly versionInfo

    versionInfo: VersionInfo = versionInfo
    memberof

    Game

    +
    description

    Version and build info

    +
    since

    3.0.0

    +

    Methods

    Protected drawSplashScreen

    • drawSplashScreen(): Promise<void>
    • memberof

      Game

      description

      Draws the splash screen to the canvas by setting the background image

      since

      2.0.0

      -

      Returns Promise<void>

    Protected hideSplashScreen

    • hideSplashScreen(): Promise<void>

    Protected hideSplashScreen

    • hideSplashScreen(): Promise<void>
    • memberof

      Game

      description

      Hides the splash screen to the canvas

      since

      2.0.0

      -

      Returns Promise<void>

    lockPointer

    • lockPointer(): void

    lockPointer

    • lockPointer(): void
    • memberof

      Game

      description

      Locks the pointer on the canvas

      emits

      EVENTS.GAME.LOCK_POINTER

      since

      1.0.0

      -

      Returns void

    Protected loop

    • loop(): void

    Protected loop

    • loop(): void
    • memberof

      Game

      description

      Core loop

      since

      1.0.0-beta

      -

      Returns void

    setBackground

    • setBackground(background: string): void

    setBackground

    • setBackground(background: string): void
    • memberof

      Game

      description

      Sets the style background color of the canvas

      emits

      EVENTS.GAME.SET_BACKGROUND

      since

      1.0.0-beta

      Parameters

      • background: string

        Background color

        -

      Returns void

    setScale

    • setScale(scale: Scale): void

    Returns void

    setScale

    • setScale(scale: Scale): void
    • memberof

      Game

      description

      Sets the scale of the canvas

      emits

      EVENTS.GAME.SET_SCALE

      since

      1.0.0-beta

      Parameters

      • scale: Scale

        Scale to set the canvas to

        -

      Returns void

    showScene

    • showScene(key: string): void

    Returns void

    showScene

    • showScene(key: string): void
    • memberof

      Game

      description

      Sets a scene to visible. Keeps the current scene visible

      emits

      EVENTS.GAME.SHOW_SCENE

      since

      1.0.0-beta

      Parameters

      • key: string

        Key of the scene to show

        -

      Returns void

    Protected sleep

    • sleep(ms: number): Promise<unknown>

    start

    • start(): Promise<void>

    Returns void

    Protected sleep

    • sleep(ms: number): Promise<unknown>

    start

    • start(): Promise<void>
    • memberof

      Game

      description

      Starts the game loop

      emits

      EVENTS.GAME.LOAD_BEGIN

      emits

      EVENTS.GAME.DRAW_SPLASH

      emits

      EVENTS.GAME.LOAD_SCENE

      emits

      EVENTS.GAME.LOAD_FINISH

      since

      1.0.0-beta

      -

      Returns Promise<void>

    stop

    • stop(): void

    stop

    • stop(): void
    • memberof

      Game

      description

      Stops the game loop

      emits

      EVENTS.GAME.STOP

      since

      1.0.0

      -

      Returns void

    switchScene

    • switchScene(key: string, key2: string): void

    switchScene

    • switchScene(key: string, key2: string): void
    • memberof

      Game

      description

      Switches the current scene by the key

      emits

      EVENTS.GAME.SWITCH_SCENE

      since

      1.0.0-beta

      @@ -120,8 +123,8 @@

      Key of the scene to switch from

    • key2: string

      Key of the scene to switch to

      -

    Returns void

    unlockPointer

    • unlockPointer(): void

    Returns void

    unlockPointer

    • unlockPointer(): void
    • memberof

      Game

      description

      Unlocks the pointer from the canvas

      emits

      EVENTS.GAME.UNLOCK_POINTER

      since

      1.0.0

      -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property
    • Protected method
    • Static property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_circle.Circle.html b/docs/classes/core_gameobjects_circle.Circle.html index a7dfad1d..b9bc9760 100644 --- a/docs/classes/core_gameobjects_circle.Circle.html +++ b/docs/classes/core_gameobjects_circle.Circle.html @@ -1,72 +1,72 @@ -Circle | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Circle

    +Circle | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Circle

    description

    The Circle Class. Represents a circle

    since

    1.0.0-beta

    -

    Hierarchy

    Index

    Constructors

    constructor

    • new Circle(x: number, y: number, r: number, fillColor: string, game: Game, scene: Scene): Circle

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns Circle

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -77,161 +77,161 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"color">
    memberof

    GameObject

    +

    texture

    texture: Texture<"color">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_gameObject.GameObject.html b/docs/classes/core_gameobjects_gameObject.GameObject.html index 1488cb05..cbcc7c9a 100644 --- a/docs/classes/core_gameobjects_gameObject.GameObject.html +++ b/docs/classes/core_gameobjects_gameObject.GameObject.html @@ -1,7 +1,7 @@ -GameObject | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine GameObject

    +GameObject | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine GameObject

    description

    The GameObject Class. All GameObjects extend this class

    since

    1.0.0-beta

    -

    Type parameters

    Hierarchy

    Implements

    Index

    Constructors

    constructor

    Type parameters

    Hierarchy

    Implements

    Index

    Constructors

    constructor

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns GameObject<textureType>

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    collidesWith: Duck.TypeClasses.GameObjects.GameObject<textureType>[] | Group<Duck.TypeClasses.GameObjects.GameObject<textureType>>
    memberof

    PhysicsBody

    +

    collidesWith

    collidesWith: Duck.TypeClasses.GameObjects.GameObject<textureType>[] | Group<Duck.TypeClasses.GameObjects.GameObject<textureType>>
    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -82,163 +84,163 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<textureType>
    memberof

    GameObject

    +

    texture

    texture: Texture<textureType>
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void
    • memberof

      GameObject

      description

      Sets the fill color of the GameObject

      since

      1.0.0-beta

      Parameters

      • fillColor: string

        Fill color

        -

      Returns void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void
    • memberof

      GameObject

      description

      Sets the scale of the GameObject

      since

      1.0.0-beta

      Parameters

      • scale: number | Scale

        Scale of the gameobject, can be a number to change the radius

        -

      Returns void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html b/docs/classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html index 792cbeab..c82763b0 100644 --- a/docs/classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html +++ b/docs/classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html @@ -1,7 +1,7 @@ -CanvasModulate | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine CanvasModulate GameObject

    +CanvasModulate | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine CanvasModulate GameObject

    description

    The CanvasModulate Class. A large rectangle with a special zIndex to use as a background, works with lights

    since

    2.0.0

    -

    Hierarchy

    Index

    Constructors

    constructor

    • new CanvasModulate(x: number, y: number, w: number, h: number, fillColor: string, game: Game, scene: Scene): CanvasModulate

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns CanvasModulate

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -79,161 +79,161 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"color">
    memberof

    GameObject

    +

    texture

    texture: Texture<"color">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html b/docs/classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html new file mode 100644 index 00000000..10e9949f --- /dev/null +++ b/docs/classes/core_gameobjects_particles_components_containedParticleComponent.ContainedParticleComponent.html @@ -0,0 +1,32 @@ +ContainedParticleComponent | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    ContainedParticleComponent class.

    +
    description

    The ContainedParticleComponent Class. Makes Particles emitted from the passed ParticleEmitter bounce off of passed bounds

    +
    since

    3.0.0

    +

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    Readonly bounds

    bounds: BoundsLike
    memberof

    ContainedParticleComponent

    +
    description

    Bounds that all Particles emitted from the passed ParticleEmitter will be affected by

    +
    since

    3.0.0

    +

    game

    game: Game
    memberof

    ParticleComponent

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    ParticleComponent

    +
    description

    The Particle instance that this is owned by

    +
    since

    3.0.0

    +

    Readonly restitution

    restitution: number
    memberof

    ContainedParticleComponent

    +
    description

    How much energy is lost when bouncing, a number between 0-1 to loose energy, +1-any to increase energy, 1 = none, must be a positive number

    +
    since

    3.0.0

    +

    scene

    scene: Scene
    memberof

    ParticleComponent

    +
    description

    Scene instance

    +
    since

    3.0.0

    +

    Methods

    update

    • update(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html b/docs/classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html new file mode 100644 index 00000000..3a4add0c --- /dev/null +++ b/docs/classes/core_gameobjects_particles_components_gravityParticleComponent.GravityParticleComponent.html @@ -0,0 +1,26 @@ +GravityParticleComponent | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    GravityParticleComponent class.

    +
    description

    The GravityParticleComponent Class. Makes Particles emitted from the passed ParticleEmitter be affected by gravity

    +
    since

    3.0.0

    +

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    ParticleComponent

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    Readonly gravity

    gravity: Vector2
    memberof

    GravityParticleComponent

    +
    description

    Gravity that all Particles emitted from the passed ParticleEmitter will be affected by

    +
    since

    3.0.0

    +

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    ParticleComponent

    +
    description

    The Particle instance that this is owned by

    +
    since

    3.0.0

    +

    scene

    scene: Scene
    memberof

    ParticleComponent

    +
    description

    Scene instance

    +
    since

    3.0.0

    +

    Methods

    update

    • update(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_particles_particle.Particle.html b/docs/classes/core_gameobjects_particles_particle.Particle.html index b4c37f8f..a7d287f7 100644 --- a/docs/classes/core_gameobjects_particles_particle.Particle.html +++ b/docs/classes/core_gameobjects_particles_particle.Particle.html @@ -1,7 +1,7 @@ -Particle | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Particle

    +Particle | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Particle

    description

    The Particle Class. A particle that can be emitted by a ParticleEmitter

    since

    1.0.0

    -

    Hierarchy

    Index

    Constructors

    constructor

    Hierarchy

    Index

    Constructors

    constructor

    • description

      Creates a Particle instance

      since

      1.0.0-beta

      Parameters

      • shape: ShapeString

        Shape of the particle

        @@ -11,74 +11,74 @@

        Height of the particle

      • r: number

        Radius of the particle

        -
      • fillColorOrIMGPath: string
        -

        Color to fill the particle with, can be an image path

        +
      • fillColorOrIMGPath: string | Color
        +

        String path or Color to fill the particle with, can be an image path

      • game: Game

        Game instance

      • scene: Scene

        Scene instance

        -

      Returns Particle

    Properties

    age

    age: number
    memberof

    Particle

    +

    Returns Particle

    Properties

    age

    age: number
    memberof

    Particle

    description

    The age of the particle in seconds

    -
    property
    since

    1.0.0

    -

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +
    since

    1.0.0

    +

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    floatVelocity

    floatVelocity: Vector2
    memberof

    Particle

    +

    floatVelocity

    floatVelocity: Vector2
    memberof

    Particle

    description

    The float velocity of the Particle

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    originalFillColorOrIMGPath

    originalFillColorOrIMGPath: string
    memberof

    Particle

    +

    originalFillColorOrIMGPath

    originalFillColorOrIMGPath: string | Color
    memberof

    Particle

    description

    The original fill color or img path of the Particle

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -89,166 +89,166 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"either">
    memberof

    GameObject

    +

    texture

    texture: Texture<"either">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      Particle

      Modified from gameobject

      description

      Updates the gameobject's position by the velocity. Sets velocity to 0 on every tick. DO NOT CALL MANUALLY, CALLED IN SCENE.__tick(deltaTime)

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setImagePath

    • setImagePath(imagePath: string): void

    Returns void

    setImagePath

    • setImagePath(imagePath: string): void
    • memberof

      Particle

      description

      Sets the particle's image src. Only works if particle's shape was initially 'sprite'

      since

      1.0.0-beta

      Parameters

      • imagePath: string

        Image path

        -

      Returns void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_particles_particleComponent.ParticleComponent.html b/docs/classes/core_gameobjects_particles_particleComponent.ParticleComponent.html new file mode 100644 index 00000000..9c84bff4 --- /dev/null +++ b/docs/classes/core_gameobjects_particles_particleComponent.ParticleComponent.html @@ -0,0 +1,24 @@ +ParticleComponent | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Abstract ParticleComponent class.

    +
    description

    The ParticleComponent Class. All particle components extend this class

    +
    abstract
    since

    3.0.0

    +

    Hierarchy

    Index

    Constructors

    Properties

    Methods

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    ParticleComponent

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    particleEmitter

    particleEmitter: ParticleEmitter
    memberof

    ParticleComponent

    +
    description

    The Particle instance that this is owned by

    +
    since

    3.0.0

    +

    scene

    scene: Scene
    memberof

    ParticleComponent

    +
    description

    Scene instance

    +
    since

    3.0.0

    +

    Methods

    Abstract update

    • update(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html b/docs/classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html index a1c699d1..997a684c 100644 --- a/docs/classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html +++ b/docs/classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html @@ -1,7 +1,7 @@ -ParticleEmitter | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine ParticleEmitter

    +ParticleEmitter | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine ParticleEmitter

    description

    The ParticleEmitter Class. Emits, creates, and destroys particles

    since

    1.0.0-beta

    -

    Hierarchy

    • ParticleEmitter

    Index

    Constructors

    constructor

    Hierarchy

    • ParticleEmitter

    Index

    Constructors

    constructor

    Properties

    Readonly amount

    amount: number
    memberof

    ParticleEmitter

    +
  • autoCreate: boolean = true
  • Returns ParticleEmitter

    Properties

    Readonly amount

    amount: number
    memberof

    ParticleEmitter

    description

    The starting amount of particle

    since

    1.0.0-beta

    -

    emitting

    emitting: boolean
    memberof

    ParticleEmitter

    +

    emitting

    emitting: boolean
    memberof

    ParticleEmitter

    description

    Determines if the ParticleEmitter is emitting or not

    since

    1.0.0-beta

    -

    enabled

    enabled: boolean
    memberof

    ParticleEmitter

    +

    enabled

    enabled: boolean
    memberof

    ParticleEmitter

    description

    Determines if the ParticleEmitter is enabled or not

    since

    2.0.0

    -

    Protected floatRangeX

    floatRangeX: Range

    Protected floatRangeY

    floatRangeY: Range

    game

    game: Game
    memberof

    ParticleEmitter

    +

    Protected floatRangeX

    floatRangeX: Range

    Protected floatRangeY

    floatRangeY: Range

    game

    game: Game
    memberof

    ParticleEmitter

    description

    Game instance

    since

    1.0.0-beta

    -

    Readonly id

    id: string
    memberof

    ParticleEmitter

    +

    Readonly id

    id: string
    memberof

    ParticleEmitter

    description

    A unique identifier for the ParticleEmitter

    since

    1.0.0-beta

    -

    list

    list: Particle[]
    memberof

    ParticleEmitter

    +

    list

    list: Particle[]
    memberof

    ParticleEmitter

    description

    The list of current particles

    since

    1.0.0-beta

    -

    Protected particle

    particle: Particle

    rangeX

    rangeX: Range
    memberof

    ParticleEmitter

    +

    Protected particle

    particle: Particle

    rangeX

    rangeX: Range
    memberof

    ParticleEmitter

    description

    A range of numbers where particle x pos will be

    since

    1.0.0-beta

    -

    rangeY

    rangeY: Range
    memberof

    ParticleEmitter

    +

    rangeY

    rangeY: Range
    memberof

    ParticleEmitter

    description

    A range of numbers where particle y pos will be

    since

    1.0.0-beta

    -

    scene

    scene: Scene
    memberof

    ParticleEmitter

    +

    scene

    scene: Scene
    memberof

    ParticleEmitter

    description

    Scene instance

    since

    1.0.0-beta

    -

    Methods

    create

    • create(): void

    Methods

    create

    • create(): void

    createOne

    • createOne(): void

    createOne

    • createOne(): void

    emit

    • emit(): void

    emit

    • emit(): void

    emitFor

    • emitFor(ms: number): void

    emitFor

    • emitFor(ms: number): void

    float

    Returns void

    float

    • memberof

      ParticleEmitter

      description

      Sets the floatVelocity of all particles in between a range

      since

      1.0.0-beta

      Parameters

      • rangeVX: Range

        A range of 2 values for the floatVelocity.x, randomly chosen between that range

      • rangeVY: Range

        A range of 2 values for the floatVelocity.y, randomly chosen between that range

        -

      Returns void

    keepEmitting

    • keepEmitting(intervalMS: number, limitTo?: number): void

    Returns void

    keepEmitting

    • keepEmitting(intervalMS: number, limitTo?: number): void
    • memberof

      ParticleEmitter

      description

      Spawns new particles after the initial particles

      since

      1.0.0-beta

      Parameters

      • intervalMS: number

        How often a new particle gets spawned

        -
      • Optional limitTo: number

      Returns void

    offloadBounds

  • Optional limitTo: number
  • Returns void

    offloadBounds

    offloadMaxAge

    • offloadMaxAge(ageInSeconds: number): void

    Returns void

    offloadMaxAge

    • offloadMaxAge(ageInSeconds: number): void
    • memberof

      ParticleEmitter

      description

      Offloads particles based on how many seconds they existed for

      since

      1.0.0

      Parameters

      • ageInSeconds: number

        Max amount of seconds a particle existed for

        -

      Returns void

    offloadMaxAmount

    • offloadMaxAmount(limit: number): void

    Returns void

    offloadMaxAmount

    • offloadMaxAmount(limit: number): void

    setFillColor

    • setFillColor(fillColor: string): void

    setFillColor

    • setFillColor(fillColor: string): void

    setImagePath

    • setImagePath(imagePath: string): void

    Returns void

    setImagePath

    • setImagePath(imagePath: string): void

    setRange

    Returns void

    setRange

    • memberof

      ParticleEmitter

      description

      Sets the new or old particles' position range

      since

      1.0.0-beta

      Parameters

      • rangeX: Range

        Where the new emitted particles x position is. A range of 2 values

      • rangeY: Range

        Where the new emitted particles y position is. A range of 2 values

        -

      Returns void

    setVelocity

    • setVelocity(axis: "x" | "y", v: number): void

    Returns void

    setVelocity

    • setVelocity(axis: "x" | "y", v: number): void
    • memberof

      ParticleEmitter

      description

      Sets the velocity of all particles

      since

      1.0.0-beta

      Parameters

      • axis: "x" | "y"

        'x' or 'y' axis to change the velocity of all particles

      • v: number

        Value to set the velocity of all particles

        -

      Returns void

    stopEmit

    • stopEmit(): void

    Returns void

    stopEmit

    • stopEmit(): void

    wobble

    • wobble(v: number): void

    wobble

    • wobble(v: number): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_rect.Rect.html b/docs/classes/core_gameobjects_rect.Rect.html index 75d2de9c..dce0c4d6 100644 --- a/docs/classes/core_gameobjects_rect.Rect.html +++ b/docs/classes/core_gameobjects_rect.Rect.html @@ -1,7 +1,7 @@ -Rect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Rect

    +Rect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Rect

    description

    The Rect Class. Represents a rectangle

    since

    1.0.0-beta

    -

    Hierarchy

    Index

    Constructors

    constructor

    • new Rect(x: number, y: number, w: number, h: number, fillColor: string, game: Game, scene: Scene): Rect

    Hierarchy

    Index

    Constructors

    constructor

    • new Rect(x: number, y: number, w: number, h: number, color: Color, game: Game, scene: Scene): Rect

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns Rect

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -79,161 +79,161 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"color">
    memberof

    GameObject

    +

    texture

    texture: Texture<"color">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_roundrect.RoundRect.html b/docs/classes/core_gameobjects_roundrect.RoundRect.html index 0874886b..61afa426 100644 --- a/docs/classes/core_gameobjects_roundrect.RoundRect.html +++ b/docs/classes/core_gameobjects_roundrect.RoundRect.html @@ -1,7 +1,7 @@ -RoundRect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine GameObject

    +RoundRect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine GameObject

    description

    The RoundRect Class. Represents a smooth cornered rect

    since

    1.0.0-beta

    -

    Hierarchy

    Index

    Constructors

    constructor

    • new RoundRect(x: number, y: number, w: number, h: number, r: number, fillColor: string, game: Game, scene: Scene): RoundRect

    Hierarchy

    Index

    Constructors

    constructor

    • new RoundRect(x: number, y: number, w: number, h: number, r: number, color: Color, game: Game, scene: Scene): RoundRect

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns RoundRect

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -81,161 +81,161 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"color">
    memberof

    GameObject

    +

    texture

    texture: Texture<"color">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_sprite.Sprite.html b/docs/classes/core_gameobjects_sprite.Sprite.html index 26c0da70..d17a6981 100644 --- a/docs/classes/core_gameobjects_sprite.Sprite.html +++ b/docs/classes/core_gameobjects_sprite.Sprite.html @@ -1,7 +1,7 @@ -Sprite | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Sprite

    +Sprite | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Sprite

    description

    The Sprite Class. Represents a gameobject image

    since

    1.0.0-beta

    -

    Hierarchy

    Index

    Constructors

    constructor

    • new Sprite(x: number, y: number, w: number, h: number, textureKey: string, game: Game, scene: Scene, currentRow?: number, currentCol?: number): Sprite

    Hierarchy

    Index

    Constructors

    constructor

    • new Sprite(x: number, y: number, w: number, h: number, textureKey: string, game: Game, scene: Scene, currentRow?: number, currentCol?: number): Sprite

    Properties

    anims

    anims: undefined | AnimationManager
    memberof

    Sprite

    +
  • Optional currentRow: number
  • Optional currentCol: number
  • Returns Sprite

    Properties

    anims

    anims: undefined | AnimationManager
    memberof

    Sprite

    description

    The AnimationManager instance, if the texture is a spritesheet

    since

    2.0.0

    -

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    currentCol

    currentCol: undefined | number
    memberof

    Sprite

    +

    currentCol

    currentCol: undefined | number
    memberof

    Sprite

    description

    The current column of the spritesheet texture, only if sprite texture is a spritesheet

    since

    2.0.0

    -

    currentRow

    currentRow: undefined | number
    memberof

    Sprite

    +

    currentRow

    currentRow: undefined | number
    memberof

    Sprite

    description

    The current row of the spritesheet texture, only if sprite texture is a spritesheet

    since

    2.0.0

    -

    defaultAnim

    defaultAnim: undefined | Animation
    memberof

    Sprite

    +

    defaultAnim

    defaultAnim: undefined | Animation
    memberof

    Sprite

    description

    The Default Animation instance, if the texture is a spritesheet

    since

    2.0.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -92,159 +92,159 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"image">
    memberof

    GameObject

    +

    texture

    texture: Texture<"image">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(color: string): void

    setImagePath

    • setImagePath(imgpath: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(color: string): void

    setImagePath

    • setImagePath(imgpath: string): void
    • memberof

      Sprite

      description

      Sets the image path of the sprite

      since

      1.0.0-beta

      Parameters

      • imgpath: string

        Image Path

        -

      Returns void

    setScale

    • setScale(scale: Scale): void

    Returns void

    setScale

    • setScale(scale: Scale): void

    setType

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_ui_button.Button.html b/docs/classes/core_gameobjects_ui_button.Button.html index 2f8c37db..fcd72db7 100644 --- a/docs/classes/core_gameobjects_ui_button.Button.html +++ b/docs/classes/core_gameobjects_ui_button.Button.html @@ -1,7 +1,7 @@ -Button | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Button

    +Button | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Button

    description

    The Button Class. Acts like a Button

    since

    1.0.0

    -

    Hierarchy

    • UI<"either">
      • Button

    Index

    Constructors

    constructor

    • new Button(shape: Shape, x: number, y: number, w: number, h: number, r: number, fillColorOrIMGPath: string, text: Text, game: Game, scene: Scene): Button

    Hierarchy

    • UI<"either">
      • Button

    Index

    Constructors

    constructor

    • new Button(shape: Shape, x: number, y: number, w: number, h: number, r: number, fillColorOrIMGPath: string | Color, text: Text, game: Game, scene: Scene): Button
    • description

      Creates a Button instance

      since

      1.0.0

      Parameters

      • shape: Shape

        Shape of the button, 'rect', 'roundrect', or 'sprite'

        @@ -15,70 +15,70 @@

        Height

      • r: number

        Radius

        -
      • fillColorOrIMGPath: string
        -

        Fill Color or Image path of the button

        +
      • fillColorOrIMGPath: string | Color
        +

        Color or Image path of the button

      • text: Text

        Text instance to render on top of the button

      • game: Game

        Game instance

      • scene: Scene

        Scene instance

        -

      Returns Button

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns Button

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    hovering

    hovering: boolean
    memberof

    Button

    +

    hovering

    hovering: boolean
    memberof

    Button

    description

    Hovering state

    since

    1.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -89,176 +89,176 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    shape

    shape: Shape
    memberof

    Button

    +

    shape

    shape: Shape
    memberof

    Button

    description

    Shape of the button

    since

    1.0.0

    -

    text

    text: Text
    memberof

    Button

    +

    text

    text: Text
    memberof

    Button

    description

    Text of the button, Text instance

    since

    1.0.0

    -

    texture

    texture: Texture<"either">
    memberof

    GameObject

    +

    texture

    texture: Texture<"either">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void
    • memberof

      PhysicsBody

      description

      Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • target: Vector2

        The target velocity

      • amount: number

        The value to increase the velocity by

        -

      Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    off

    Returns false | "left" | "right" | "bottom" | "top"

    off

    on

    Returns void

    on

    reflectVelocity

    • reflectVelocity(): void

    Returns void

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void
    • memberof

      GameObject

      description

      Sets the scale of the GameObject

      since

      1.0.0-beta

      Parameters

      • scale: number | Scale

        Scale of the gameobject, can be a number to change the radius

        -

      Returns void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_ui_container.Container.html b/docs/classes/core_gameobjects_ui_container.Container.html new file mode 100644 index 00000000..cc60c1c6 --- /dev/null +++ b/docs/classes/core_gameobjects_ui_container.Container.html @@ -0,0 +1,264 @@ +Container | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Container

    +
    description

    The Container Class. Contains, manages, organizes a list of UI elements

    +
    since

    3.0.0

    +

    Hierarchy

    • UI<"either">
      • Container

    Index

    Constructors

    constructor

    • new Container(shape: "rect" | "sprite", x: number, y: number, w: number, h: number, r: number, fillColorOrIMGPath: string | Color, game: Game, scene: Scene): Container
    • description

      Creates a Container instance

      +
      since

      3.0.0

      +

      Parameters

      • shape: "rect" | "sprite"
        +

        Shape of the Container, 'rect' or 'sprite'

        +
      • x: number
        +

        X position

        +
      • y: number
        +

        Y position

        +
      • w: number
        +

        Width

        +
      • h: number
        +

        Height

        +
      • r: number
        +

        Radius

        +
      • fillColorOrIMGPath: string | Color
        +

        Color or Image path of the Container

        +
      • game: Game
        +

        Game instance

        +
      • scene: Scene
        +

        Scene instance

        +

      Returns Container

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +
    description

    The offset between the PhysicsBody that self is attached to

    +
    since

    2.0.0

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +
    description

    PhysicsBodies that are attached

    +
    since

    2.0.0

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +
    description

    The bounds of the PhysicsBody

    +
    since

    2.0.0

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +
    description

    The Collider instance of the PhysicsBody

    +
    since

    2.0.0

    +

    collidesWith

    memberof

    PhysicsBody

    +
    description

    An array or group of GameObjects that can collide with the PhysicsBody

    +
    since

    2.0.0

    +

    culled

    culled: boolean
    memberof

    GameObject

    +
    description

    Determines if the GameObject should be visible by the current scene's current camera

    +
    since

    2.1.0

    +

    elements

    elements: Group<UI<"either">>

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +
    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList +, changing this value does nothing, must use PhysicsBody.setEnabled

    +
    since

    2.0.0

    +

    game

    game: Game
    memberof

    PhysicsBody

    +
    description

    The Game instance

    +
    since

    2.0.0

    +

    h

    h: number
    memberof

    PhysicsBody

    +
    description

    The height of the GameObject

    +
    since

    2.0.0

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +
    description

    The Collider Hitbox of the PhysicsBody

    +
    since

    2.0.0

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    +
    description

    The unique identifier for a GameObject

    +
    since

    2.0.0

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +
    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    +
    since

    2.0.0

    +

    options

    memberof

    PhysicsBody

    +
    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    +

    defaults: { type: 'KinematicBody'}

    +
    since

    2.0.0

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +
    description

    Object that has all the physics method

    +
    since

    2.0.0

    +

    Type declaration

    position

    position: Vector2
    memberof

    PhysicsBody

    +
    description

    The current global position of the GameObject

    +
    since

    2.0.0

    +

    r

    r: number
    memberof

    PhysicsBody

    +
    description

    The radius of the GameObject

    +
    since

    2.0.0

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    +
    description

    The Scene instance

    +
    since

    2.0.0

    +

    Readonly shape

    memberof

    PhysicsBody

    +
    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    +
    since

    2.0.0

    +

    texture

    texture: Texture<"either">
    memberof

    GameObject

    +
    description

    The texture of the GameObject

    +
    since

    1.0.0-beta

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +
    description

    The velocity of the PhysicsBody

    +
    since

    2.0.0

    +

    visible

    visible: boolean
    memberof

    GameObject

    +
    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    +
    since

    2.0.0

    +

    w

    w: number
    memberof

    PhysicsBody

    +
    description

    The width of the GameObject

    +
    since

    2.0.0

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    +
    description

    Determines the depth or zIndex of a GameObject

    +
    since

    2.0.0

    +

    Methods

    _draw

    • _draw(): void
    • memberof

      GameObject

      +
      description

      Draws the gameobject.

      +

      DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList

      +
      since

      1.0.0-beta

      +

      Returns void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      +
      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. +Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. +Updates hitbox.collisionState if hitbox exists.

      +

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      +
      since

      2.0.0

      +

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void
    • memberof

      PhysicsBody

      +
      description

      Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody

      +
      since

      2.0.0

      +

      Parameters

      • target: Vector2
        +

        The target velocity

        +
      • amount: number
        +

        The value to increase the velocity by

        +

      Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      +
      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      +
      since

      2.0.0

      +

      Parameters

      • frictionAmount: Vector2
        +

        The value to decrease the velocity by

        +

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      +
      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      +
      since

      2.0.0

      +

      Parameters

      • gravity: Vector2
        +

        The Vector2 to add to the velocity by

        +

      Returns void

    attachChild

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachFrom

    get

    • get(element: UI<"either">): undefined | UI<"either">
    • memberof

      Container

      +
      description

      Gets and returns the UI Element if it exists inside of the Container

      +
      since

      3.0.0

      +

      Parameters

      • element: UI<"either">
        +

        UI Element to get from the Container, if it exists

        +

      Returns undefined | UI<"either">

      UI<'either'> | undefined

      +

    getBottom

    • getBottom(): number

    getByID

    • getByID(id: string): undefined | UI<"either">
    • memberof

      Container

      +
      description

      Gets and returns the UI Element by its ID, if it exists inside of the Container

      +
      since

      3.0.0

      +

      Parameters

      • id: string
        +

        UI Element to get from the Container, by ID, if it exists

        +

      Returns undefined | UI<"either">

      UI<'either'> | undefined

      +

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    includes

    • includes(element: UI<"either">): boolean
    • memberof

      Container

      +
      description

      Checks and returns a boolean if a UI Element exists inside of the Container

      +
      since

      3.0.0

      +

      Parameters

      • element: UI<"either">
        +

        UI Element to check if it exists inside of the Container

        +

      Returns boolean

      boolean

      +

    isColliding

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      +
      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      +
      example

      myPhysicsBody.setVelocity('x', 3); +myPhysicsBody.reflect(); // velocity: 0, -3

      +
      since

      2.0.0

      +

      Returns void

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void
    • memberof

      GameObject

      +
      description

      Sets the scale of the GameObject

      +
      since

      1.0.0-beta

      +

      Parameters

      • scale: number | Scale
        +

        Scale of the gameobject, can be a number to change the radius

        +

      Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      +
      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      +
      since

      2.0.0

      +

      Parameters

      • axis: "x" | "y"
        +

        The axis to set the velocity of

        +
      • pxPerSecond: number
        +

        The value to set the velocity axis as, in pixels per second

        +

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      +
      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      +
      since

      2.0.0

      +

      Parameters

      • pxPerSecond: number
        +

        The value to set the velocity axis as, in pixels per second

        +

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      +
      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      +
      since

      2.0.0

      +

      Parameters

      • pxPerSecond: number
        +

        The value to set the velocity.y as, in pixels per second

        +

      Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      +
      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      +

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      +
      since

      2.1.0

      +

      Parameters

      • visible: boolean
        +

        What to set the visible property to

        +

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_ui_imageRect.ImageRect.html b/docs/classes/core_gameobjects_ui_imageRect.ImageRect.html index 9647a0c7..4b0f5ba8 100644 --- a/docs/classes/core_gameobjects_ui_imageRect.ImageRect.html +++ b/docs/classes/core_gameobjects_ui_imageRect.ImageRect.html @@ -1,56 +1,56 @@ -ImageRect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • UI<"image">
      • ImageRect

    Index

    Constructors

    constructor

    • new ImageRect(x: number, y: number, w: number, h: number, textureKey: string, game: Game, scene: Scene): ImageRect

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +ImageRect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • UI<"image">
      • ImageRect

    Index

    Constructors

    constructor

    • new ImageRect(x: number, y: number, w: number, h: number, textureKey: string, game: Game, scene: Scene): ImageRect

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -61,159 +61,159 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"image">
    memberof

    GameObject

    +

    texture

    texture: Texture<"image">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void
    • memberof

      PhysicsBody

      description

      Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • target: Vector2

        The target velocity

      • amount: number

        The value to increase the velocity by

        -

      Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void
    • memberof

      GameObject

      description

      Sets the scale of the GameObject

      since

      1.0.0-beta

      Parameters

      • scale: number | Scale

        Scale of the gameobject, can be a number to change the radius

        -

      Returns void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_ui_panel.Panel.html b/docs/classes/core_gameobjects_ui_panel.Panel.html index c0971a6a..51a4ed02 100644 --- a/docs/classes/core_gameobjects_ui_panel.Panel.html +++ b/docs/classes/core_gameobjects_ui_panel.Panel.html @@ -1,56 +1,56 @@ -Panel | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • UI<"either">
      • Panel

    Index

    Constructors

    constructor

    • new Panel(shape: ShapeString, x: number, y: number, w: number, h: number, r: number, textureKeyOrColor: string, game: Game, scene: Scene): Panel

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +Panel | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • UI<"either">
      • Panel

    Index

    Constructors

    constructor

    • new Panel(shape: ShapeString, x: number, y: number, w: number, h: number, r: number, textureKeyOrColor: string | Color, game: Game, scene: Scene): Panel

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -61,159 +61,159 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"either">
    memberof

    GameObject

    +

    texture

    texture: Texture<"either">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void
    • memberof

      PhysicsBody

      description

      Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • target: Vector2

        The target velocity

      • amount: number

        The value to increase the velocity by

        -

      Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void
    • memberof

      GameObject

      description

      Sets the scale of the GameObject

      since

      1.0.0-beta

      Parameters

      • scale: number | Scale

        Scale of the gameobject, can be a number to change the radius

        -

      Returns void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_ui_text.Text.html b/docs/classes/core_gameobjects_ui_text.Text.html index 0874e7d6..193783e2 100644 --- a/docs/classes/core_gameobjects_ui_text.Text.html +++ b/docs/classes/core_gameobjects_ui_text.Text.html @@ -1,7 +1,7 @@ -Text | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Text

    +Text | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Text

    description

    The Button Class. Renders Text to the canvas

    since

    1.0.0-beta

    -

    Hierarchy

    • UI<"color">
      • Text

    Index

    Constructors

    constructor

    Hierarchy

    • UI<"color">
      • Text

    Index

    Constructors

    constructor

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns Text

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    Protected config

    culled

    culled: boolean
    memberof

    GameObject

    +

    color

    color: Color

    Protected config

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -74,167 +74,167 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    text

    text: string
    memberof

    Text

    +

    strokeColor

    strokeColor: Color

    text

    text: string
    memberof

    Text

    description

    Text string

    since

    1.0.0-beta

    -

    texture

    texture: Texture<"color">
    memberof

    GameObject

    +

    texture

    texture: Texture<"color">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void
    • memberof

      PhysicsBody

      description

      Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • target: Vector2

        The target velocity

      • amount: number

        The value to increase the velocity by

        -

      Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void
    • memberof

      GameObject

      description

      Sets the scale of the GameObject

      since

      1.0.0-beta

      Parameters

      • scale: number | Scale

        Scale of the gameobject, can be a number to change the radius

        -

      Returns void

    setText

    • setText(text: string): void

    Returns void

    setText

    • setText(text: string): void

    setType

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_gameobjects_ui_ui.UI.html b/docs/classes/core_gameobjects_ui_ui.UI.html index 8c8b462b..2532e3d8 100644 --- a/docs/classes/core_gameobjects_ui_ui.UI.html +++ b/docs/classes/core_gameobjects_ui_ui.UI.html @@ -1,56 +1,77 @@ -UI | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Type parameters

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +UI | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine UI Class

    +
    description

    The UI Class. All UI GameObjects extend this class.

    +
    since

    3.0.0

    +

    Type parameters

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    GameObject

    +

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -61,163 +82,163 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<t>
    memberof

    GameObject

    +

    texture

    texture: Texture<t>
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_group_group.Group.html b/docs/classes/core_group_group.Group.html index 827c7830..052955a4 100644 --- a/docs/classes/core_group_group.Group.html +++ b/docs/classes/core_group_group.Group.html @@ -1,84 +1,84 @@ -Group | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Group

    +Group | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Group

    description

    The Group Class. Contains and manages a group of items

    since

    1.0.0-beta

    Type parameters

    • t

      Stack Item type generic

      -

    Hierarchy

    • Group

    Index

    Constructors

    constructor

    • new Group<t>(name: string, game: Game, defaultItems?: t[]): Group<t>

    Hierarchy

    • Group

    Index

    Constructors

    constructor

    • new Group<t>(name: string, game: Game, defaultItems?: t[]): Group<t>
    • description

      Creates a Group instance.

      since

      1.0.0-beta

      Type parameters

      • t

      Parameters

      • name: string

        Name of group

      • game: Game

        Game instance

        -
      • Optional defaultItems: t[]

      Returns Group<t>

    Properties

    game

    game: Game
    memberof

    Group

    +
  • Optional defaultItems: t[]
  • Returns Group<t>

    Properties

    game

    game: Game
    memberof

    Group

    description

    Game instance

    since

    1.0.0-beta

    -

    Readonly name

    name: string
    memberof

    Group

    +

    Readonly name

    name: string
    memberof

    Group

    description

    Group name

    since

    1.0.0-beta

    -

    Protected stack

    stack: t[]

    Accessors

    group

    • get group(): t[]

    Protected stack

    stack: t[]

    Accessors

    group

    • get group(): t[]

    length

    • get length(): number

    length

    • get length(): number
    • memberof

      Group

      description

      Returns the length of the array

      since

      1.0.0-beta

      -

      Returns number

    Methods

    add

    • add(item: t): void

    Methods

    add

    • add(item: t): void
    • memberof

      Group

      description

      Adds an item to the Group

      emits

      EVENTS.GROUP.ADD

      since

      1.0.0-beta

      Parameters

      • item: t

        Item to add

        -

      Returns void

    at

    • at(index: number): undefined | t

    Returns void

    at

    • at(index: number): undefined | t
    • memberof

      Group

      description

      Returns an item or undefined at a specified index

      since

      2.1.0

      Parameters

      • index: number

        The index to return a value from, 0-based like an array

        -

      Returns undefined | t

    each

    • each(cb: (item: t, index: number) => void): void

    Returns undefined | t

    each

    • each(cb: (item: t, index: number) => void): void
    • memberof

      Group

      description

      Loops through each item in the Group array

      since

      1.0.0-beta

      Parameters

      • cb: (item: t, index: number) => void

        Callback function

        -
          • (item: t, index: number): void
          • Parameters

            • item: t
            • index: number

            Returns void

      Returns void

    filter

    • memberof

      Group

      +
        • (item: t, index: number): void
        • Parameters

          • item: t
          • index: number

          Returns void

    Returns void

    filter

    • memberof

      Group

      description

      Filters items from the Group

      since

      1.0.0-beta

      Parameters

      • filter: Filter

        Filter string

        -

      Returns t[]

    find

    • find(item: t): undefined | t

    Returns t[]

    find

    • find(item: t): undefined | t
    • memberof

      Group

      description

      Finds an item in the Group

      since

      1.0.0-beta

      Parameters

      • item: t

        Item to find

        -

      Returns undefined | t

    indexOf

    • indexOf(item: t): number

    Returns undefined | t

    indexOf

    • indexOf(item: t): number
    • memberof

      Group

      description

      Gets the index of an item from the Group list array

      since

      1.0.0-beta

      Parameters

      • item: t

        Item to find the index of

        -

      Returns number

    off

    Returns number

    off

    on

    Returns void

    on

    pop

    • pop(): undefined | t

    Returns void

    pop

    • pop(): undefined | t
    • memberof

      Group

      description

      Pops an item from the Group array

      since

      1.0.0-beta

      -

      Returns undefined | t

    remove

    • remove(item: t): void

    remove

    • remove(item: t): void
    • memberof

      Group

      description

      Removes an item from the Group

      emits

      EVENTS.GROUP.REMOVE

      since

      1.0.0-beta

      Parameters

      • item: t

        Item to remove

        -

      Returns void

    shift

    • shift(): undefined | t

    Returns void

    shift

    • shift(): undefined | t
    • memberof

      Group

      description

      Shifts an item from the Group array

      since

      1.0.0-beta

      -

      Returns undefined | t

    splice

    • splice(index: number, deleteCount?: number): t[]

    splice

    • splice(index: number, deleteCount?: number): t[]
    • memberof

      Group

      description

      Splices an item from the Group array

      since

      1.0.0-beta

      Parameters

      • index: number

        Index to splice at

        -
      • Optional deleteCount: number

      Returns t[]

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +
  • Optional deleteCount: number
  • Returns t[]

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_input_input.Input.html b/docs/classes/core_input_input.Input.html index f5249aaf..872500c8 100644 --- a/docs/classes/core_input_input.Input.html +++ b/docs/classes/core_input_input.Input.html @@ -1,22 +1,22 @@ -Input | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Input

    +Input | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Input

    description

    The Input Class. Main inputs are captured here

    since

    1.0.0-beta

    -

    Hierarchy

    • Input

    Index

    Constructors

    constructor

    Hierarchy

    • Input

    Index

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    Input

    +

    Returns Input

    Properties

    game

    game: Game
    memberof

    Input

    description

    Game instance

    since

    1.0.0-beta

    -

    scene

    scene: Scene
    memberof

    Input

    +

    scene

    scene: Scene
    memberof

    Input

    description

    Scene instance

    since

    2.0.0

    -

    Methods

    createKeyboardInput

    Methods

    createKeyboardInput

    createMouseInput

    createMouseInput

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns MouseInput

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_input_keyboardInput.KeyboardInput.html b/docs/classes/core_input_keyboardInput.KeyboardInput.html index 3ce10d43..cce0ae32 100644 --- a/docs/classes/core_input_keyboardInput.KeyboardInput.html +++ b/docs/classes/core_input_keyboardInput.KeyboardInput.html @@ -1,46 +1,46 @@ -KeyboardInput | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine KeyboardInput

    +KeyboardInput | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine KeyboardInput

    description

    The KeyboardInput Class. Use the Keyboard as input

    since

    2.0.0

    -

    Hierarchy

    • KeyboardInput

    Index

    Constructors

    constructor

    Hierarchy

    • KeyboardInput

    Index

    Constructors

    constructor

    Properties

    eventEmitter

    eventEmitter: EventEmitter
    memberof

    KeyboardInput

    +

    Returns KeyboardInput

    Properties

    eventEmitter

    eventEmitter: EventEmitter
    memberof

    KeyboardInput

    description

    The EventEmitter used to emit for Key events

    since

    2.0.0

    -

    game

    game: Game
    memberof

    KeyboardInput

    +

    game

    game: Game
    memberof

    KeyboardInput

    description

    Game instance

    since

    2.0.0

    -

    keys

    keys: {}
    memberof

    KeyboardInput

    +

    keys

    keys: {}
    memberof

    KeyboardInput

    description

    All of the Keys added to the KeyboardInput

    since

    2.0.0

    -

    Type declaration

    • [key: string]: Key

    scene

    scene: Scene
    memberof

    KeyboardInput

    +

    Type declaration

    • [key: string]: Key

    scene

    scene: Scene
    memberof

    KeyboardInput

    description

    Scene instance

    since

    2.0.0

    -

    Accessors

    inputs

    • get inputs(): {}

    Accessors

    inputs

    • get inputs(): {}

    Methods

    addKey

    • addKey(keyCode: number, descriptor: string, keyDown?: (e: KeyboardEvent) => any, keyUp?: (e: KeyboardEvent) => any, keyJustPressed?: (e: KeyboardEvent) => any, keyState?: (e: KeyboardEvent, state: boolean) => any): Key

    Methods

    addKey

    • addKey(keyCode: number, descriptor: string, keyDown?: (e: KeyboardEvent) => any, keyUp?: (e: KeyboardEvent) => any, keyJustPressed?: (e: KeyboardEvent) => any, keyState?: (e: KeyboardEvent, state: boolean) => any): Key
    • memberof

      KeyboardInput

      description

      Adds a Key to the KeyboardInput

      since

      2.0.0

      Parameters

      • keyCode: number

        The Key keyCode

      • descriptor: string

        The Key descriptor, used to set the value to KeyboardInput.keys

        -
      • Optional keyDown: (e: KeyboardEvent) => any
          • (e: KeyboardEvent): any
          • Parameters

            • e: KeyboardEvent

            Returns any

      • Optional keyUp: (e: KeyboardEvent) => any
          • (e: KeyboardEvent): any
          • Parameters

            • e: KeyboardEvent

            Returns any

      • Optional keyJustPressed: (e: KeyboardEvent) => any
          • (e: KeyboardEvent): any
          • Parameters

            • e: KeyboardEvent

            Returns any

      • Optional keyState: (e: KeyboardEvent, state: boolean) => any
          • (e: KeyboardEvent, state: boolean): any
          • Parameters

            • e: KeyboardEvent
            • state: boolean

            Returns any

      Returns Key

    addKeys

  • Optional keyDown: (e: KeyboardEvent) => any
      • (e: KeyboardEvent): any
      • Parameters

        • e: KeyboardEvent

        Returns any

  • Optional keyUp: (e: KeyboardEvent) => any
      • (e: KeyboardEvent): any
      • Parameters

        • e: KeyboardEvent

        Returns any

  • Optional keyJustPressed: (e: KeyboardEvent) => any
      • (e: KeyboardEvent): any
      • Parameters

        • e: KeyboardEvent

        Returns any

  • Optional keyState: (e: KeyboardEvent, state: boolean) => any
      • (e: KeyboardEvent, state: boolean): any
      • Parameters

        • e: KeyboardEvent
        • state: boolean

        Returns any

  • Returns Key

    addKeys

    • memberof

      KeyboardInput

      description

      Adds a Key to the KeyboardInput

      since

      2.0.0

      Parameters

      • keys: KeyBase[]

        An array of base key configurations to create Keys from

        -

      Returns void

    onInput

    • onInput(cb: (key: Key, e: KeyboardEvent) => any): void

    Returns void

    onInput

    • onInput(cb: (key: Key, e: KeyboardEvent) => any): void
    • memberof

      KeyboardInput

      description

      Adds an onInput event listener to all keys

      since

      2.0.0

      -

      Parameters

      • cb: (key: Key, e: KeyboardEvent) => any
          • (key: Key, e: KeyboardEvent): any
          • Parameters

            • key: Key
            • e: KeyboardEvent

            Returns any

      Returns void

    removeKey

    • removeKey(descriptor: string): void
    • memberof

      KeyboardInput

      +

      Parameters

      • cb: (key: Key, e: KeyboardEvent) => any
          • (key: Key, e: KeyboardEvent): any
          • Parameters

            • key: Key
            • e: KeyboardEvent

            Returns any

      Returns void

    removeKey

    • removeKey(descriptor: string): void
    • memberof

      KeyboardInput

      description

      Removes a Key from the KeyboardInput

      since

      2.0.0

      Parameters

      • descriptor: string

        Key descriptor

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_input_models_key.Key.html b/docs/classes/core_input_models_key.Key.html index 8623e704..a86f01cd 100644 --- a/docs/classes/core_input_models_key.Key.html +++ b/docs/classes/core_input_models_key.Key.html @@ -1,7 +1,7 @@ -Key | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Key

    +Key | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Key

    description

    The Key Class. Stores info about a key's state

    since

    2.0.0

    -

    Hierarchy

    • Key

    Index

    Constructors

    constructor

    • new Key(keyCode: number, descriptor: string, game: Game, scene: Scene, keyboardInput: KeyboardInput, keyDown?: (e: KeyboardEvent) => any, keyUp?: (e: KeyboardEvent) => any, keyJustPressed?: (e: KeyboardEvent) => any, keyState?: (e: KeyboardEvent, state: boolean) => any): Key

    Hierarchy

    • Key

    Index

    Constructors

    constructor

    • new Key(keyCode: number, descriptor: string, game: Game, scene: Scene, keyboardInput: KeyboardInput, keyDown?: (e: KeyboardEvent) => any, keyUp?: (e: KeyboardEvent) => any, keyJustPressed?: (e: KeyboardEvent) => any, keyState?: (e: KeyboardEvent, state: boolean) => any): Key
    • description

      Creates a Key instance

      since

      2.0.0

      Parameters

      • keyCode: number

        The Key keyCode

        @@ -11,36 +11,36 @@

        Game instance

      • scene: Scene

        Scene instance

        -
      • keyboardInput: KeyboardInput
      • Optional keyDown: (e: KeyboardEvent) => any
          • (e: KeyboardEvent): any
          • Parameters

            • e: KeyboardEvent

            Returns any

      • Optional keyUp: (e: KeyboardEvent) => any
          • (e: KeyboardEvent): any
          • Parameters

            • e: KeyboardEvent

            Returns any

      • Optional keyJustPressed: (e: KeyboardEvent) => any
          • (e: KeyboardEvent): any
          • Parameters

            • e: KeyboardEvent

            Returns any

      • Optional keyState: (e: KeyboardEvent, state: boolean) => any
          • (e: KeyboardEvent, state: boolean): any
          • Parameters

            • e: KeyboardEvent
            • state: boolean

            Returns any

      Returns Key

    Properties

    descriptor

    descriptor: string
    memberof

    Key

    +
  • keyboardInput: KeyboardInput
  • Optional keyDown: (e: KeyboardEvent) => any
      • (e: KeyboardEvent): any
      • Parameters

        • e: KeyboardEvent

        Returns any

  • Optional keyUp: (e: KeyboardEvent) => any
      • (e: KeyboardEvent): any
      • Parameters

        • e: KeyboardEvent

        Returns any

  • Optional keyJustPressed: (e: KeyboardEvent) => any
      • (e: KeyboardEvent): any
      • Parameters

        • e: KeyboardEvent

        Returns any

  • Optional keyState: (e: KeyboardEvent, state: boolean) => any
      • (e: KeyboardEvent, state: boolean): any
      • Parameters

        • e: KeyboardEvent
        • state: boolean

        Returns any

  • Returns Key

    Properties

    descriptor

    descriptor: string
    memberof

    Key

    description

    The Key descriptor

    since

    2.0.0

    -

    game

    game: Game
    memberof

    Key

    +

    game

    game: Game
    memberof

    Key

    description

    Game instance

    since

    2.0.0

    -

    isDown

    isDown: boolean
    memberof

    Key

    +

    isDown

    isDown: boolean
    memberof

    Key

    description

    Key down state

    since

    2.0.0

    -

    isJustPressed

    isJustPressed: boolean
    memberof

    Key

    +

    isJustPressed

    isJustPressed: boolean
    memberof

    Key

    description

    Key just pressed state

    since

    2.0.0

    -

    isUp

    isUp: boolean
    memberof

    Key

    +

    isUp

    isUp: boolean
    memberof

    Key

    description

    Key up state

    since

    2.0.0

    -

    keyCode

    keyCode: number
    memberof

    Key

    +

    keyCode

    keyCode: number
    memberof

    Key

    description

    The keyCode

    since

    2.0.0

    -

    keyboardInput

    keyboardInput: KeyboardInput
    memberof

    Key

    +

    keyboardInput

    keyboardInput: KeyboardInput
    memberof

    Key

    description

    The KeyboardInput that the key is attached to

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    Key

    +

    scene

    scene: Scene
    memberof

    Key

    description

    Scene instance

    since

    2.0.0

    -

    state

    state: boolean
    memberof

    Key

    +

    state

    state: boolean
    memberof

    Key

    description

    Key basic state of up or down, up being false, down being true

    since

    2.0.0

    -

    Methods

    onInput

    • onInput(cb: (key: Key, e: KeyboardEvent) => any): void

    Methods

    onInput

    • onInput(cb: (key: Key, e: KeyboardEvent) => any): void
    • memberof

      Key

      description

      Creates on event on event emitter to listen for input

      since

      2.0.0

      Parameters

      • cb: (key: Key, e: KeyboardEvent) => any

        Callback to call on input

        -
          • (key: Key, e: KeyboardEvent): any
          • Parameters

            • key: Key
            • e: KeyboardEvent

            Returns any

      Returns void

    Protected registerListeners

    • registerListeners(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +
      • (key: Key, e: KeyboardEvent): any
      • Parameters

        • key: Key
        • e: KeyboardEvent

        Returns any

    Returns void

    Protected registerListeners

    • registerListeners(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_input_models_mouse.Mouse.html b/docs/classes/core_input_models_mouse.Mouse.html index fdd13770..9e88d431 100644 --- a/docs/classes/core_input_models_mouse.Mouse.html +++ b/docs/classes/core_input_models_mouse.Mouse.html @@ -1,6 +1,6 @@ -Mouse | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Mouse

    Index

    Constructors

    constructor

    • new Mouse(button: 0 | 1 | 4 | 2 | 3, descriptor: string, game: Game, scene: Scene, mouseInput: MouseInput, mouseDown?: (e: MouseEvent) => any, mouseUp?: (e: MouseEvent) => any, mouseMove?: (e: MouseEvent) => any): Mouse
    • description

      Creates a Mouse instance

      +Mouse | DuckEngine - v3.0.0-dev
      Options
      All
      • Public
      • Public/Protected
      • All
      Menu

      Hierarchy

      • Mouse

      Index

      Constructors

      constructor

      • new Mouse(button: 0 | 2 | 1 | 3 | 4, descriptor: string, game: Game, scene: Scene, mouseInput: MouseInput, mouseDown?: (e: MouseEvent) => any, mouseUp?: (e: MouseEvent) => any, mouseMove?: (e: MouseEvent) => any): Mouse

      Parameters

      • button: 0 | 2 | 1 | 3 | 4

        Mouse button

      • descriptor: string

        Mouse descriptor

        @@ -10,19 +10,19 @@

        Scene instance

      • mouseInput: MouseInput

        MouseInput that the Mouse is attached to

        -
      • Optional mouseDown: (e: MouseEvent) => any
          • (e: MouseEvent): any
          • Parameters

            • e: MouseEvent

            Returns any

      • Optional mouseUp: (e: MouseEvent) => any
          • (e: MouseEvent): any
          • Parameters

            • e: MouseEvent

            Returns any

      • Optional mouseMove: (e: MouseEvent) => any
          • (e: MouseEvent): any
          • Parameters

            • e: MouseEvent

            Returns any

      Returns Mouse

    Properties

    button

    button: 0 | 1 | 4 | 2 | 3
    memberof

    Mouse

    +
  • Optional mouseDown: (e: MouseEvent) => any
      • (e: MouseEvent): any
      • Parameters

        • e: MouseEvent

        Returns any

  • Optional mouseUp: (e: MouseEvent) => any
      • (e: MouseEvent): any
      • Parameters

        • e: MouseEvent

        Returns any

  • Optional mouseMove: (e: MouseEvent) => any
      • (e: MouseEvent): any
      • Parameters

        • e: MouseEvent

        Returns any

  • Returns Mouse

    Properties

    button

    button: 0 | 2 | 1 | 3 | 4
    memberof

    Mouse

    description

    The Mouse button

    since

    2.0.0

    -

    descriptor

    descriptor: string
    memberof

    Mouse

    +

    descriptor

    descriptor: string
    memberof

    Mouse

    description

    The Mouse descriptor

    since

    2.0.0

    -

    game

    game: Game
    memberof

    Mouse

    +

    game

    game: Game
    memberof

    Mouse

    description

    Game instance

    since

    2.0.0

    -

    mouseInput

    mouseInput: MouseInput
    memberof

    Mouse

    +

    mouseInput

    mouseInput: MouseInput
    memberof

    Mouse

    description

    The MouseInput that the Mouse is attached to

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    Mouse

    +

    scene

    scene: Scene
    memberof

    Mouse

    description

    Scene instance

    since

    2.0.0

    -

    Methods

    Protected registerListeners

    • registerListeners(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Methods

    Protected registerListeners

    • registerListeners(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_input_mouseInput.MouseInput.html b/docs/classes/core_input_mouseInput.MouseInput.html index 9d62466e..0b66a633 100644 --- a/docs/classes/core_input_mouseInput.MouseInput.html +++ b/docs/classes/core_input_mouseInput.MouseInput.html @@ -1,38 +1,38 @@ -MouseInput | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine MouseInput

    +MouseInput | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine MouseInput

    description

    The MouseInput Class. Use the mouse as input

    since

    1.0.0-beta

    -

    Hierarchy

    • MouseInput

    Index

    Constructors

    Properties

    Accessors

    Methods

    Constructors

    constructor

    Hierarchy

    • MouseInput

    Index

    Constructors

    Properties

    Accessors

    Methods

    Constructors

    constructor

    Properties

    eventEmitter

    eventEmitter: EventEmitter
    memberof

    MouseInput

    +

    Returns MouseInput

    Properties

    eventEmitter

    eventEmitter: EventEmitter
    memberof

    MouseInput

    description

    The EventEmitter used to emit for Mouse events

    since

    2.0.0

    -

    game

    game: Game
    memberof

    MouseInput

    +

    game

    game: Game
    memberof

    MouseInput

    description

    Game instance

    since

    2.0.0

    -

    mice

    mice: {}
    memberof

    MouseInput

    +

    mice

    mice: {}
    memberof

    MouseInput

    description

    All of the Mice added to the MouseInput

    since

    2.0.0

    -

    Type declaration

    scene

    scene: Scene
    memberof

    MouseInput

    +

    Type declaration

    scene

    scene: Scene
    memberof

    MouseInput

    description

    Scene instance

    since

    2.0.0

    -

    Accessors

    inputs

    • get inputs(): {}

    Accessors

    inputs

    • get inputs(): {}

    Methods

    addMice

    Methods

    addMice

    • memberof

      MouseInput

      description

      Adds Mice to the MouseInput

      since

      2.0.0

      Parameters

      • mice: MouseBase[]

        An array of Mouse Base configuration to use to add mice to the MouseInput

        -

      Returns void

    addMouse

    • addMouse(button: 0 | 1 | 4 | 2 | 3, descriptor: string, mouseDown?: (e: MouseEvent) => any, mouseUp?: (e: MouseEvent) => any, mouseMove?: (e: MouseEvent) => any): Mouse

    Returns void

    addMouse

    • addMouse(button: 0 | 2 | 1 | 3 | 4, descriptor: string, mouseDown?: (e: MouseEvent) => any, mouseUp?: (e: MouseEvent) => any, mouseMove?: (e: MouseEvent) => any): Mouse
    • memberof

      MouseInput

      description

      Adds a Mouse to the MouseInput

      since

      2.0.0

      -

      Parameters

      • button: 0 | 1 | 4 | 2 | 3
        +

        Parameters

        • button: 0 | 2 | 1 | 3 | 4

          Mouse Button

        • descriptor: string

          The Mouse descriptor, used to set the value to MouseInput.mouse

          -
        • Optional mouseDown: (e: MouseEvent) => any
            • (e: MouseEvent): any
            • Parameters

              • e: MouseEvent

              Returns any

        • Optional mouseUp: (e: MouseEvent) => any
            • (e: MouseEvent): any
            • Parameters

              • e: MouseEvent

              Returns any

        • Optional mouseMove: (e: MouseEvent) => any
            • (e: MouseEvent): any
            • Parameters

              • e: MouseEvent

              Returns any

        Returns Mouse

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +
  • Optional mouseDown: (e: MouseEvent) => any
      • (e: MouseEvent): any
      • Parameters

        • e: MouseEvent

        Returns any

  • Optional mouseUp: (e: MouseEvent) => any
      • (e: MouseEvent): any
      • Parameters

        • e: MouseEvent

        Returns any

  • Optional mouseMove: (e: MouseEvent) => any
      • (e: MouseEvent): any
      • Parameters

        • e: MouseEvent

        Returns any

  • Returns Mouse

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_input_server_inputServer.InputServer.html b/docs/classes/core_input_server_inputServer.InputServer.html new file mode 100644 index 00000000..1ceb8594 --- /dev/null +++ b/docs/classes/core_input_server_inputServer.InputServer.html @@ -0,0 +1,20 @@ +InputServer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine InputServer

    +
    description

    The InputServer Class. Handles all input updates

    +
    since

    3.0.0

    +

    Hierarchy

    • InputServer

    Index

    Constructors

    Properties

    Methods

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    InputServer

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    scene

    scene: Scene
    memberof

    InputServer

    +
    description

    Scene instance

    +
    since

    3.0.0

    +

    Methods

    __tick

    • __tick(): void
    • memberof

      InputServer

      +
      description

      Uses InputServer.Scene.inputList to pool and update inputs such as touch and gamepad inputs, (Key and Mouse inputs are not pooled)

      +

      DO NOT CALL MANUALLY! CALLED IN SCENE.__TICK

      +
      since

      3.0.0

      +

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_lights_staticLight.StaticLight.html b/docs/classes/core_lights_staticLight.StaticLight.html index 6ff54c87..d3573163 100644 --- a/docs/classes/core_lights_staticLight.StaticLight.html +++ b/docs/classes/core_lights_staticLight.StaticLight.html @@ -1,7 +1,7 @@ -StaticLight | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine StaticLight

    +StaticLight | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine StaticLight

    description

    The StaticLight Class. A static light

    since

    1.0.0-beta

    -

    Hierarchy

    Index

    Constructors

    constructor

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    Protected alpha

    alpha: AlphaRange

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns StaticLight

    Properties

    Protected alpha

    alpha: number

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    Protected color

    color: string

    culled

    culled: boolean
    memberof

    GameObject

    +

    Protected color

    color: Color

    culled

    culled: boolean
    memberof

    GameObject

    description

    Determines if the GameObject should be visible by the current scene's current camera

    since

    2.1.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -80,168 +80,168 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    texture

    texture: Texture<"color">
    memberof

    GameObject

    +

    texture

    texture: Texture<"color">
    memberof

    GameObject

    description

    The texture of the GameObject

    since

    1.0.0-beta

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    GameObject

    +

    visible

    visible: boolean
    memberof

    GameObject

    description

    Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property)

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    GameObject

    +

    zIndex

    zIndex: number
    memberof

    GameObject

    description

    Determines the depth or zIndex of a GameObject

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    _update

    • _update(): void

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setFillColor

    • setFillColor(fillColor: string): void

    setFillColorAlpha

    • setFillColorAlpha(color: string, alpha: AlphaRange): void

    Returns void

    setFillColorAlpha

    • setFillColorAlpha(color: string, alpha: number): void
    • memberof

      StaticLight

      description

      Sets the fillColor with alpha

      since

      2.0.0

      Parameters

      • color: string

        Fill Color

        -
      • alpha: AlphaRange
        +
      • alpha: number

        Alpha

        -

      Returns void

    setScale

    • setScale(scale: number | Scale): void

    Returns void

    setScale

    • setScale(scale: number | Scale): void

    setType

    Returns void

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      GameObject

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_loader_loader.Loader.html b/docs/classes/core_loader_loader.Loader.html index 644611b5..ad2c8846 100644 --- a/docs/classes/core_loader_loader.Loader.html +++ b/docs/classes/core_loader_loader.Loader.html @@ -1,44 +1,47 @@ -Loader | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    A class that loads images and other assets

    +Loader | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    A class that loads images and other assets

    description

    The Loader Class. Preloading and loading is handled here

    since

    1.0.0-beta

    -

    Hierarchy

    • Loader

    Index

    Constructors

    constructor

    Hierarchy

    • Loader

    Index

    Constructors

    constructor

    Properties

    audioStack

    audioStack: StackItem<HTMLAudioElement>[]
    memberof

    Loader

    +

    Returns Loader

    Properties

    audioBufferStack

    audioBufferStack: StackItem<AudioBuffer>[]
    memberof

    Loader

    +
    description

    An array of loaded AudioBuffer from an audio

    +
    since

    3.0.0

    +

    audioStack

    audioStack: StackItem<HTMLAudioElement>[]
    memberof

    Loader

    description

    An array of loaded Audio elements

    since

    2.0.0

    -

    fontStack

    fontStack: StackItem<FontFace>[]
    memberof

    Loader

    +

    fontStack

    fontStack: StackItem<FontFace>[]
    memberof

    Loader

    description

    An array of loaded FontFaces

    since

    2.0.0

    -

    game

    game: Game
    memberof

    Loader

    +

    game

    game: Game
    memberof

    Loader

    description

    Game instance

    since

    1.0.0-beta

    -

    htmlStack

    htmlStack: StackItem<Document>[]
    memberof

    Loader

    +

    htmlStack

    htmlStack: StackItem<Document>[]
    memberof

    Loader

    description

    An array of loaded HTML Documents

    since

    2.0.0

    -

    jsonStack

    jsonStack: StackItem<Record<string, unknown>>[]
    memberof

    Loader

    +

    jsonStack

    jsonStack: StackItem<Record<string, unknown>>[]
    memberof

    Loader

    description

    An array of loaded JSON files

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    Loader

    +

    scene

    scene: Scene
    memberof

    Loader

    description

    Scene instance

    since

    2.0.0

    -

    textureStack

    textureStack: TextureStackItem<TextureBase<"image">>[]
    memberof

    Loader

    +

    textureStack

    textureStack: TextureStackItem<TextureBase<"image">>[]
    memberof

    Loader

    description

    An array of loaded Textures

    since

    2.0.0

    -

    xmlStack

    xmlStack: StackItem<Document>[]
    memberof

    Loader

    +

    xmlStack

    xmlStack: StackItem<Document>[]
    memberof

    Loader

    description

    An array of loaded XML Documents

    since

    2.0.0

    -

    Methods

    loadAudio

    • loadAudio(pathOrURL: string, key: string, mimeType?: string): Promise<HTMLAudioElement>

    Methods

    loadAudio

    • loadAudio(pathOrURL: string, key: string, mimeType?: string): Promise<HTMLAudioElement>
    • memberof

      Loader

      description

      Loads an Audio file and adds it to the audioStack

      since

      2.0.0

      Parameters

      • pathOrURL: string

        Path to the file or the URL

      • key: string

        Key of the file to use to save it as

        -
      • mimeType: string = 'audio/mp3'

      Returns Promise<HTMLAudioElement>

    loadFont

    • loadFont(fontFamily: string, pathOrURL: string, key: string, descriptors?: FontFaceDescriptors): Promise<FontFace>
  • mimeType: string = 'audio/mp3'
  • Returns Promise<HTMLAudioElement>

    loadAudioBuffer

    • loadAudioBuffer(pathOrURL: string, key: string): Promise<AudioBuffer>

    loadFont

    • loadFont(fontFamily: string, pathOrURL: string, key: string, descriptors?: FontFaceDescriptors): Promise<FontFace>
    • memberof

      Loader

      description

      Loads a font and adds it to the fontStack

      since

      2.0.0

      Parameters

      • fontFamily: string
        @@ -47,21 +50,21 @@

        Path to the file or the URL

      • key: string

        Key of the file to use to save it as

        -
      • Optional descriptors: FontFaceDescriptors

      Returns Promise<FontFace>

    loadHTML

    • loadHTML(pathOrURL: string, key: string): Promise<Document>
  • Optional descriptors: FontFaceDescriptors
  • Returns Promise<FontFace>

    loadHTML

    • loadHTML(pathOrURL: string, key: string): Promise<Document>
    • memberof

      Loader

      description

      Loads a HTML file and adds it to the htmlStack

      since

      2.0.0

      Parameters

      • pathOrURL: string

        Path to the file or the URL

      • key: string

        Key of the file to use to save it as

        -

      Returns Promise<Document>

    loadJSON

    • loadJSON(pathOrURL: string, key: string): Promise<Record<string, unknown>>

    Returns Promise<Document>

    loadJSON

    • loadJSON(pathOrURL: string, key: string): Promise<Record<string, unknown>>
    • memberof

      Loader

      description

      Loads a JSON file and adds it to the jsonStack, caches it if it does not already exist

      since

      2.0.0

      Parameters

      • pathOrURL: string

        Path to the file or the URL

      • key: string

        Key of the file to use to save it as

        -

      Returns Promise<Record<string, unknown>>

    loadTexture

    • loadTexture(pathOrURL: string, key: string, w: number, h: number): Promise<HTMLImageElement>

    Returns Promise<Record<string, unknown>>

    loadTexture

    • loadTexture(pathOrURL: string, key: string, w: number, h: number): Promise<HTMLImageElement>
    • memberof

      Loader

      description

      Loads an image and creates a texture, caches it if it does not already exist in the cache (clear cache if texture does not update if you edit the image src)

      since

      2.0.0

      @@ -73,7 +76,7 @@

      Width of image

    • h: number

      Height of image

      -

    Returns Promise<HTMLImageElement>

    loadTextureAtlas

    • loadTextureAtlas(atlasKey: string, texturePathOrURL: string, jsonPathOrURL: string, textureKey: string, jsonKey: string, imageW: number, imageH: number): Promise<void>
    • Parameters

      • atlasKey: string
      • texturePathOrURL: string
      • jsonPathOrURL: string
      • textureKey: string
      • jsonKey: string
      • imageW: number
      • imageH: number

      Returns Promise<void>

    loadTextureSheet

    • loadTextureSheet(pathOrURL: string, key: string, frameWidth: number, frameHeight: number, rows: number, cols: number): Promise<HTMLImageElement>

    Returns Promise<HTMLImageElement>

    loadTextureAtlas

    • loadTextureAtlas(atlasKey: string, texturePathOrURL: string, jsonPathOrURL: string, textureKey: string, jsonKey: string, imageW: number, imageH: number): Promise<void>
    • Parameters

      • atlasKey: string
      • texturePathOrURL: string
      • jsonPathOrURL: string
      • textureKey: string
      • jsonKey: string
      • imageW: number
      • imageH: number

      Returns Promise<void>

    loadTextureSheet

    • loadTextureSheet(pathOrURL: string, key: string, frameWidth: number, frameHeight: number, rows: number, cols: number): Promise<HTMLImageElement>
    • memberof

      Loader

      description

      Loads an image and creates a texture sheet, caches it if it does not already exist in the cache (clear cache if texture does not update if you edit the image src)

      since

      2.1.0

      @@ -81,11 +84,11 @@

      Path to the file or the URL

    • key: string

      Key of the texture, used to load the texture in sprites and spritesheet

      -
    • frameWidth: number
    • frameHeight: number
    • rows: number
    • cols: number

    Returns Promise<HTMLImageElement>

    loadXML

    • loadXML(pathOrURL: string, key: string): Promise<Document>

    Returns Promise<HTMLImageElement>

    loadXML

    • loadXML(pathOrURL: string, key: string): Promise<Document>
    • memberof

      Loader

      description

      Loads a XML file and adds it to the xmlStack

      since

      2.0.0

      Parameters

      • pathOrURL: string

        Path to the file or the URL

      • key: string

        Key of the file to use to save it as

        -

      Returns Promise<Document>

    Protected saveCache

    • saveCache(prefix: string, key: string, value: string): Promise<void>

    Protected tryCache

    • tryCache(prefix: string, key: string): Promise<undefined | null | string>

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns Promise<Document>

    Protected saveCache

    • saveCache(prefix: string, key: string, value: string): Promise<void>

    Protected tryCache

    • tryCache(prefix: string, key: string): Promise<undefined | null | string>

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_map_map.Map.html b/docs/classes/core_map_map.Map.html index 6bfc5f30..ba501b6d 100644 --- a/docs/classes/core_map_map.Map.html +++ b/docs/classes/core_map_map.Map.html @@ -1,7 +1,7 @@ -Map | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Map

    -
    description

    The Map Class. Base Map class, extends by TileMap

    +Map | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Map

    +
    description

    The Map Class. Base Map class, extended by TileMap

    since

    1.2.0

    -

    Hierarchy

    Implements

    Index

    Constructors

    constructor

    Hierarchy

    Implements

    Index

    Constructors

    constructor

    Properties

    culled

    culled: boolean
    memberof

    Map

    +

    Returns Map

    Properties

    culled

    culled: boolean
    memberof

    Map

    description

    Determines if the Map should be visible by the current scene's current camera

    since

    2.1.0

    -

    game

    game: Game
    memberof

    Map

    +

    game

    game: Game
    memberof

    Map

    description

    Game instance

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    Map

    +

    Readonly id

    id: string
    memberof

    Map

    description

    A unique identifier for the Map

    since

    2.0.0

    -

    origin

    origin: Vector2
    memberof

    Map

    +

    origin

    origin: Vector2
    memberof

    Map

    description

    The map origin point

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    Map

    +

    scene

    scene: Scene
    memberof

    Map

    description

    Scene instance

    since

    2.0.0

    -

    Readonly shape

    shape: string
    memberof

    Map

    +

    Readonly shape

    shape: string
    memberof

    Map

    description

    "Shape" of the map, always "Map", used by Scene.displayList to distinguish between Renderables

    since

    2.0.0

    -

    tileLayers

    tileLayers: TileLayer[]
    memberof

    Map

    +

    tileLayers

    tileLayers: TileLayer[]
    memberof

    Map

    description

    An array of TileLayers

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    Map

    +

    visible

    visible: boolean
    memberof

    Map

    description

    Determines if the Map is visible or not

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    Map

    +

    zIndex

    zIndex: number
    memberof

    Map

    description

    Used for depth sorting, default: 2

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_map_tile.Tile.html b/docs/classes/core_map_tile.Tile.html index 8b95638a..689a22f7 100644 --- a/docs/classes/core_map_tile.Tile.html +++ b/docs/classes/core_map_tile.Tile.html @@ -1,7 +1,7 @@ -Tile | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Tile

    +Tile | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Tile

    description

    The Tile Class. Stores information about a Tile on a Tileset

    since

    2.0.0

    -

    Hierarchy

    • Tile

    Index

    Constructors

    Properties

    Constructors

    constructor

    • new Tile(x: number, y: number, w: number, h: number): Tile

    Hierarchy

    • Tile

    Index

    Constructors

    Properties

    Constructors

    constructor

    • new Tile(x: number, y: number, w: number, h: number): Tile
    • description

      Creates a Tile instance

      Parameters

      • x: number

        X position of the Tile

      • y: number
        @@ -10,16 +10,16 @@

        Width of the Tile

      • h: number

        Height of the Tile

        -

      Returns Tile

    Properties

    h

    h: number
    memberof

    Tile

    +

    Returns Tile

    Properties

    h

    h: number
    memberof

    Tile

    description

    Height of the tile

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    Tile

    +

    Readonly id

    id: string
    memberof

    Tile

    description

    Unique identifier for the Tile

    since

    2.0.0

    -

    position

    position: Vector2
    memberof

    Tile

    +

    position

    position: Vector2
    memberof

    Tile

    description

    Position of the tile

    since

    2.0.0

    -

    w

    w: number
    memberof

    Tile

    +

    w

    w: number
    memberof

    Tile

    description

    Width of the tile

    since

    2.0.0

    -

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_map_tilelayer.TileLayer.html b/docs/classes/core_map_tilelayer.TileLayer.html index 47f80bf1..3496b59b 100644 --- a/docs/classes/core_map_tilelayer.TileLayer.html +++ b/docs/classes/core_map_tilelayer.TileLayer.html @@ -1,7 +1,7 @@ -TileLayer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine TileLayer

    +TileLayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine TileLayer

    description

    The TileLayer Class. Stores a 2D array that relates to a Tileset that is then used in a TileMap

    since

    1.0.0-beta

    -

    Hierarchy

    • TileLayer

    Index

    Constructors

    constructor

    Hierarchy

    • TileLayer

    Index

    Constructors

    constructor

    • Parameters

      • tileset: Tileset

        Tileset that the 2D array relates to

      • map: number[][]

        A 2D array of numbers that relates to the Tileset

        @@ -9,22 +9,22 @@

        Game instance

      • scene: Scene

        Scene instance

        -
      • zIndex: number = 2
      • visible: boolean = true

      Returns TileLayer

    Properties

    game

    game: Game
    memberof

    TileLayer

    +
  • zIndex: number = 2
  • visible: boolean = true
  • Returns TileLayer

    Properties

    game

    game: Game
    memberof

    TileLayer

    description

    Game instance

    since

    2.0.0

    -

    map

    map: number[][]
    memberof

    TileLayer

    +

    map

    map: number[][]
    memberof

    TileLayer

    description

    A 2D array of numbers that relates to Tiles on a Tileset

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    TileLayer

    +

    scene

    scene: Scene
    memberof

    TileLayer

    description

    Scene instance

    since

    2.0.0

    -

    tileset

    tileset: Tileset
    memberof

    TileLayer

    +

    tileset

    tileset: Tileset
    memberof

    TileLayer

    description

    Tileset to relate map info to

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    TileLayer

    +

    visible

    visible: boolean
    memberof

    TileLayer

    description

    Determines if the TileLayer is visible or not

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    TileLayer

    +

    zIndex

    zIndex: number
    memberof

    TileLayer

    description

    Used for depth sorting

    since

    2.0.0

    -

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_map_tilemap.TileMap.html b/docs/classes/core_map_tilemap.TileMap.html index bb1f315b..e536cce2 100644 --- a/docs/classes/core_map_tilemap.TileMap.html +++ b/docs/classes/core_map_tilemap.TileMap.html @@ -1,7 +1,7 @@ -TileMap | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine TileMap

    +TileMap | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine TileMap

    description

    The TileMap Class. Creates a tilemap of images

    since

    1.0.0

    -

    Hierarchy

    Index

    Constructors

    constructor

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    culled

    culled: boolean
    memberof

    Map

    +

    Returns TileMap

    Properties

    culled

    culled: boolean
    memberof

    Map

    description

    Determines if the Map should be visible by the current scene's current camera

    since

    2.1.0

    -

    game

    game: Game
    memberof

    Map

    +

    game

    game: Game
    memberof

    Map

    description

    Game instance

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    Map

    +

    Readonly id

    id: string
    memberof

    Map

    description

    A unique identifier for the Map

    since

    2.0.0

    -

    origin

    origin: Vector2
    memberof

    Map

    +

    origin

    origin: Vector2
    memberof

    Map

    description

    The map origin point

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    Map

    +

    scene

    scene: Scene
    memberof

    Map

    description

    Scene instance

    since

    2.0.0

    -

    Readonly shape

    shape: string
    memberof

    Map

    +

    Readonly shape

    shape: string
    memberof

    Map

    description

    "Shape" of the map, always "Map", used by Scene.displayList to distinguish between Renderables

    since

    2.0.0

    -

    tileLayers

    tileLayers: TileLayer[]
    memberof

    Map

    +

    tileLayers

    tileLayers: TileLayer[]
    memberof

    Map

    description

    An array of TileLayers

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    Map

    +

    visible

    visible: boolean
    memberof

    Map

    description

    Determines if the Map is visible or not

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    Map

    +

    zIndex

    zIndex: number
    memberof

    Map

    description

    Used for depth sorting, default: 2

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void
    • description

      Draws the tilemap.

      DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList

      -

      Returns void

    sortTileLayers

    • sortTileLayers(filter?: boolean): TileLayer[]

    sortTileLayers

    • sortTileLayers(filter?: boolean): TileLayer[]
    • memberof

      Tilemap

      description

      Gets visible layers based on filter, then depth sorts the layers

      since

      2.0.0

      -

      Parameters

      • filter: boolean = true

      Returns TileLayer[]

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Parameters

    • filter: boolean = true

    Returns TileLayer[]

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_map_tileset.Tileset.html b/docs/classes/core_map_tileset.Tileset.html index 7c349a1b..a2850847 100644 --- a/docs/classes/core_map_tileset.Tileset.html +++ b/docs/classes/core_map_tileset.Tileset.html @@ -1,7 +1,7 @@ -Tileset | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Tileset

    +Tileset | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Tileset

    description

    The Tileset Class. Stores information about a tileset image and splits it into tiles

    since

    2.0.0

    -

    Hierarchy

    • Tileset

    Index

    Constructors

    constructor

    • new Tileset(textureKey: string, tileW: number, tileH: number, rows: number, cols: number, game: Game, scene: Scene): Tileset

    Hierarchy

    • Tileset

    Index

    Constructors

    constructor

    • new Tileset(textureKey: string, tileW: number, tileH: number, rows: number, cols: number, game: Game, scene: Scene): Tileset
    • description

      Creates a Tileset instance

      since

      2.0.0

      Parameters

      • textureKey: string

        Key to the tileset image texture

        @@ -17,33 +17,33 @@

        Game instance

      • scene: Scene

        Scene instance

        -

      Returns Tileset

    Properties

    cols

    cols: number
    memberof

    Tileset

    +

    Returns Tileset

    Properties

    cols

    cols: number
    memberof

    Tileset

    description

    Number of columns in the tileset image

    since

    2.0.0

    -

    game

    game: Game
    memberof

    Tileset

    +

    game

    game: Game
    memberof

    Tileset

    description

    Game instance

    since

    2.0.0

    -

    rows

    rows: number
    memberof

    Tileset

    +

    rows

    rows: number
    memberof

    Tileset

    description

    Number of rows in the tileset image

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    Tileset

    +

    scene

    scene: Scene
    memberof

    Tileset

    description

    Scene instance

    since

    2.0.0

    -

    texture

    texture: Texture<"image">
    memberof

    Tileset

    +

    texture

    texture: Texture<"image">
    memberof

    Tileset

    description

    The Tileset image texture

    since

    2.0.0

    -

    tileH

    tileH: number
    memberof

    Tileset

    +

    tileH

    tileH: number
    memberof

    Tileset

    description

    Height of each Tile

    since

    2.0.0

    -

    tileW

    tileW: number
    memberof

    Tileset

    +

    tileW

    tileW: number
    memberof

    Tileset

    description

    Width of each Tile

    since

    2.0.0

    -

    tiles

    tiles: Tile[]
    memberof

    Tileset

    +

    tiles

    tiles: Tile[]
    memberof

    Tileset

    description

    Array of tiles that are generated from the Tileset

    since

    2.0.0

    -

    Methods

    Protected createTile

    • createTile(x: number, y: number, w: number, h: number): Tile

    Protected generateTiles

    • generateTiles(): void

    getTile

    • getTile(num: number): undefined | Tile

    Methods

    Protected createTile

    • createTile(x: number, y: number, w: number, h: number): Tile

    Protected generateTiles

    • generateTiles(): void

    getTile

    • getTile(num: number): undefined | Tile
    • memberof

      Tileset

      description

      Gets the Tile based on index

      since

      2.0.0

      Parameters

      • num: number

        Index

        -

      Returns undefined | Tile

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns undefined | Tile

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_math_vector2.Vector2.html b/docs/classes/core_math_vector2.Vector2.html index 5235e1bc..0336823d 100644 --- a/docs/classes/core_math_vector2.Vector2.html +++ b/docs/classes/core_math_vector2.Vector2.html @@ -1,114 +1,114 @@ -Vector2 | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a Vector2

    +Vector2 | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a Vector2

    description

    The Vector2 Class. Represents a point

    since

    2.0.0

    -

    Hierarchy

    • Vector2

    Index

    Constructors

    constructor

    • new Vector2(x?: number, y?: number): Vector2

    Hierarchy

    • Vector2

    Index

    Constructors

    constructor

    • new Vector2(x?: number, y?: number): Vector2

    Properties

    x

    x: number = 0

    y

    y: number = 0

    Accessors

    Static DOWN

    Properties

    x

    x: number = 0

    y

    y: number = 0

    Accessors

    Static DOWN

    Static LEFT

    Static LEFT

    Static RIGHT

    Static RIGHT

    Static UP

    Static UP

    Static ZERO

    Static ZERO

    Methods

    abs

    Methods

    abs

    add

    add

    addNumber

    Returns Vector2

    addNumber

    • memberof

      Vector2

      description

      Adds a number to the x and y properties

      since

      2.0.0

      Parameters

      • number: number

        Number to add to x and y properties

        -

      Returns Vector2

    angleBetween

    • angleBetween(vector: Vector2): number

    Returns Vector2

    angleBetween

    • angleBetween(vector: Vector2): number
    • memberof

      Vector2

      description

      Gets the angle between two Vector2s

      since

      2.0.0

      Parameters

      • vector: Vector2

        A Vector2 to get the angle between from

        -

      Returns number

    angleTo

    Returns number

    angleTo

    • memberof

      Vector2

      description

      Gets the angle to two Vector2s

      since

      2.0.0

      Parameters

      • vector: Vector2

        A Vector2 to get the angle to from

        -

      Returns number

    clamp

    • clamp(min: number, max: number): Vector2

    Returns number

    clamp

    • clamp(min: number, max: number): Vector2
    • memberof

      Vector2

      description

      Clamps the values to a min and max

      since

      2.0.0

      Parameters

      • min: number

        The min value

      • max: number

        The max value

        -

      Returns Vector2

    clampMax

    Returns Vector2

    clampMax

    clampMin

    Returns Vector2

    clampMin

    clone

    Returns Vector2

    clone

    crossProduct

    • crossProduct(vector: Vector2): number

    crossProduct

    • crossProduct(vector: Vector2): number
    • memberof

      Vector2

      description

      Gets the cross dot product with another Vector2

      since

      2.0.0

      Parameters

      • vector: Vector2

        A Vector2 to get the cross dot product from

        -

      Returns number

    distance

    Returns number

    distance

    • memberof

      Vector2

      description

      Gets the distance from another Vector2

      since

      2.0.0

      Parameters

      • vector: Vector2

        A Vector2 to get the distance from

        -

      Returns number

    distanceSqr

    • distanceSqr(vector: Vector2): number

    Returns number

    distanceSqr

    • distanceSqr(vector: Vector2): number
    • memberof

      Vector2

      description

      Gets the distance squared from another Vector2

      since

      2.0.0

      Parameters

      • vector: Vector2

        A Vector2 to get the distance from

        -

      Returns number

    divide

    Returns number

    divide

    divideNumber

    • divideNumber(number: number): Vector2

    Returns Vector2

    divideNumber

    • divideNumber(number: number): Vector2
    • memberof

      Vector2

      description

      Divides a number to the x and y properties

      since

      2.0.0

      Parameters

      • number: number

        Number to divide to x and y properties

        -

      Returns Vector2

    dot

    Returns Vector2

    dot

    • memberof

      Vector2

      description

      Gets the dot product with another Vector2

      since

      2.0.0

      Parameters

      • vector: Vector2

        A Vector2 to get the dot product from

        -

      Returns number

    equals

    Returns number

    equals

    • memberof

      Vector2

      description

      Checks if another Vector2 is equal on both axises

      since

      2.0.0

      Parameters

      • vector: Vector2

        A Vector2 to compare with

        -

      Returns boolean

    getNormal

    Returns boolean

    getNormal

    isZero

    • isZero(): boolean

    isZero

    • isZero(): boolean
    • memberof

      Vector2

      description

      Determines if Vector2.x and Vector2.y are both equal to 0

      since

      2.0.0

      -

      Returns boolean

    magnitude

    • magnitude(): number

    magnitude

    • magnitude(): number
    • memberof

      Vector2

      description

      Returns the magnitude or length of the Vector2

      since

      2.0.0

      -

      Returns number

    magnitudeSqr

    • magnitudeSqr(): number

    magnitudeSqr

    • magnitudeSqr(): number
    • memberof

      Vector2

      description

      Returns the magnitude/lenth squared of the Vector2

      since

      2.0.0

      -

      Returns number

    moveTowards

    moveTowards

    • memberof

      Vector2

      description

      Gradually interpolates the Vector2 towards another Vector2 by an amount

      since

      2.0.0

      Parameters

      • current: Vector2
        @@ -117,96 +117,96 @@

        The Target Vector2

      • maxDistanceDelta: number

        The amount to increase by

        -

      Returns Vector2

    multiply

    Returns Vector2

    multiply

    multiplyNumber

    • multiplyNumber(number: number): Vector2

    Returns Vector2

    multiplyNumber

    • multiplyNumber(number: number): Vector2
    • memberof

      Vector2

      description

      Multiplies a number to the x and y properties

      since

      2.0.0

      Parameters

      • number: number

        Number to multiply to x and y properties

        -

      Returns Vector2

    negate

    Returns Vector2

    negate

    normalize

    normalize

    perpendicular

    perpendicular

    reflect

    reflect

    • memberof

      Vector2

      description

      Reflects the Vector2, returns the opposite value on a number line

      example

      new Vector2(100, 50).reflect() // Vector2(-100, -50)

      since

      2.0.0

      -

      Returns Vector2

    rotate

    rotate

    • memberof

      Vector2

      description

      Rotates the Vector2 based on degrees

      since

      2.0.0

      Parameters

      • degrees: number

        The angle in degrees

        -
      • center: Vector2 = Vector2.ZERO

      Returns Vector2

    round

    Returns Vector2

    round

    scale

    scale

    • memberof

      Vector

      description

      Scales the Vector2 by a scalar Vector2

      since

      2.0.0

      Parameters

      • scalar: Vector2

        A Vector2 that is used to scale the current Vector2

        -

      Returns Vector2

    scaleToMagnitude

    • scaleToMagnitude(magnitude: number): Vector2

    Returns Vector2

    scaleToMagnitude

    • scaleToMagnitude(magnitude: number): Vector2
    • memberof

      Vector2

      description

      Scales the Vector2 by the magnitude or length

      since

      2.0.0

      Parameters

      • magnitude: number

        The magnitude or length of the Vector2

        -

      Returns Vector2

    setValues

    • setValues(x: number, y: number): Vector2

    Returns Vector2

    setValues

    • setValues(x: number, y: number): Vector2
    • memberof

      Vector2

      description

      Sets the values of the Vector2

      since

      2.0.0

      Parameters

      • x: number

        X position to setValue of

      • y: number

        Y position to setValue of

        -

      Returns Vector2

    setValuesVec

    Returns Vector2

    setValuesVec

    • memberof

      Vector2

      description

      Sets the values of the Vector2 based on another Vector2

      since

      2.0.0

      Parameters

      • vector: Vector2

        Vector2 to use to set the position

        -

      Returns Vector2

    subtract

    Returns Vector2

    subtract

    subtractNumber

    • subtractNumber(number: number): Vector2

    Returns Vector2

    subtractNumber

    • subtractNumber(number: number): Vector2
    • memberof

      Vector2

      description

      Subtracts a number from the x and y properties

      since

      2.0.0

      Parameters

      • number: number

        Number to subtract from x and y properties

        -

      Returns Vector2

    toPrecision

    • toPrecision(precision: number): Vector2

    Returns Vector2

    toPrecision

    • toPrecision(precision: number): Vector2
    • memberof

      Vector2

      description

      Sets the values to be precise by using Number.toPrecision

      since

      2.0.0

      Parameters

      • precision: number

        The precision

        -

      Returns Vector2

    toString

    • toString(): string

    Returns Vector2

    toString

    • toString(): string
    • memberof

      Vector2

      description

      Returns the string version of the Vector2

      example

      console.log(new Vector2(0, 0).toString()) // Vector2(0, 0)

      since

      2.0.0

      -

      Returns string

    translate

    • translate(dx: number, dy: number): Vector2

    translate

    • translate(dx: number, dy: number): Vector2
    • memberof

      Vector2

      description

      Adds to the Vector2 by an amount

      since

      2.0.0

      Parameters

      • dx: number

        Delta x, the amount to increase the x value by

      • dy: number

        Delta y, the amount to increase the y value by

        -

      Returns Vector2

    translateX

    Returns Vector2

    translateX

    • memberof

      Vector2

      description

      Adds to the Vector2.x by an amount

      since

      2.0.0

      Parameters

      • dx: number

        Delta x, the amount to increase the x value by

        -

      Returns Vector2

    translateY

    Returns Vector2

    translateY

    • memberof

      Vector2

      description

      Adds to the Vector2.y by an amount

      since

      2.0.0

      Parameters

      • dy: number

        Delta y, the amount to increase the y value by

        -

      Returns Vector2

    tripleProduct

    Returns Vector2

    tripleProduct

    Static CREATE

    • CREATE(x?: number, y?: number): Vector2

    Returns Vector2

    Static CREATE

    • CREATE(x?: number, y?: number): Vector2
    • memberof

      Vector2

      static
      description

      Returns a Vector2 with passed parameters, if no parameters are passed, a Vector2.ZERO is returned

      since

      2.0.0

      -

      Parameters

      • Optional x: number
      • Optional y: number

      Returns Vector2

    Static fromVec

    Static fromVec

    • memberof

      Vector2

      static
      description

      Returns a Vector2 with values from a passed Vector2

      since

      2.0.0

      Parameters

      • vector: Vector2

        Vector2 to create a Vector2 from

        -

      Returns Vector2

    Static fromVector2Like

    Returns Vector2

    Static fromVector2Like

    • memberof

      Vector2

      static
      description

      Returns a Vector2 with passed vector2Like object

      since

      2.0.0

      Parameters

      • vector2Like: Vector2Like

        An object with x and y properties

        -

      Returns Vector2

    Static toVector2Like

    • toVector2Like(vector2: Vector2): { x: number; y: number }

    Returns Vector2

    Static toVector2Like

    • toVector2Like(vector2: Vector2): { x: number; y: number }
    • memberof

      Vector2

      static
      description

      Returns a Vector2Like object with passed Vector2

      since

      2.0.0

      Parameters

      • vector2: Vector2

        A Vector2 to convert to Vector2Like object

        -

      Returns { x: number; y: number }

      • x: number
      • y: number

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Static method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns { x: number; y: number }

    • x: number
    • y: number

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Static method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_misc_pluginManager.PluginManager.html b/docs/classes/core_misc_pluginManager.PluginManager.html index 86ec0009..75bb9e24 100644 --- a/docs/classes/core_misc_pluginManager.PluginManager.html +++ b/docs/classes/core_misc_pluginManager.PluginManager.html @@ -1,29 +1,29 @@ -PluginManager | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine PluginManager

    +PluginManager | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine PluginManager

    description

    The PluginManager Class. Manages and handles plugins

    since

    2.0.0

    -

    Hierarchy

    • PluginManager

    Index

    Constructors

    constructor

    Hierarchy

    • PluginManager

    Index

    Constructors

    constructor

    Properties

    plugins

    plugins: {}
    memberof

    PluginManager

    +

    Returns PluginManager

    Properties

    plugins

    plugins: {}
    memberof

    PluginManager

    description

    An object that holds all registered plugins

    since

    2.0.0

    -

    Type declaration

    Methods

    call

    • call(name: string): void

    Methods

    call

    • call(name: string, overrideArgs?: unknown[]): void
    • memberof

      PluginManager

      description

      Calls/Runs a plugin by its name

      since

      2.0.0

      Parameters

      • name: string

        Name of plugin to call/run

        -

      Returns void

    find

    • find(name: string): undefined | Plugin
  • Optional overrideArgs: unknown[]
  • Returns void

    find

    • find(name: string): undefined | Plugin
    • memberof

      PluginManager

      description

      Finds a plugin by its name

      since

      2.0.0

      Parameters

      • name: string

        Name of plugin to find

        -

      Returns undefined | Plugin

    registerPlugin

    • registerPlugin(plugin: Plugin): void

    Returns undefined | Plugin

    registerPlugin

    • registerPlugin(plugin: Plugin): void
    • memberof

      PluginManager

      description

      Registers a plugin and adds a plugin by its name to the plugins object

      since

      2.0.0

      Parameters

      • plugin: Plugin

        Plugin to add

        -

      Returns void

    unregisterPlugin

    • unregisterPlugin(name: string): void

    Returns void

    unregisterPlugin

    • unregisterPlugin(name: string): void
    • memberof

      PluginManager

      description

      Unregisters a plugin by its name

      since

      2.0.0

      Parameters

      • name: string

        Name of plugin to remove

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_models_displayList.DisplayList.html b/docs/classes/core_models_displayList.DisplayList.html index f755e0d2..c9b57c55 100644 --- a/docs/classes/core_models_displayList.DisplayList.html +++ b/docs/classes/core_models_displayList.DisplayList.html @@ -1,37 +1,37 @@ -DisplayList | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DisplayList that manages Renderable objects

    +DisplayList | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DisplayList that manages Renderable objects

    description

    The DisplayList Class. Keeps track of all Renderable objects

    since

    2.0.0

    -

    Hierarchy

    • DisplayList

    Index

    Constructors

    constructor

    Properties

    game

    game: Game

    list

    list: Renderable[] = []

    Accessors

    length

    • get length(): number

    Hierarchy

    • DisplayList

    Index

    Constructors

    constructor

    Properties

    game

    game: Game

    list

    list: Renderable[] = []

    Accessors

    length

    • get length(): number

    listItems

    listItems

    • memberof

      DisplayList

      description

      Overwrites the list items with passed parameter

      since

      2.0.0

      Parameters

      • listItems: Renderable[]

        Renderable objects to overwrite with

        -

      Returns void

    Methods

    add

    Returns void

    Methods

    add

    • memberof

      DisplayList

      description

      Adds a renderableObject to the list

      since

      2.0.0

      Parameters

      • renderableObject: Renderable

        A renderableObject

        Note: this pools the game's renderer pipeline for instant updates

        -

      Returns void

    depthSort

    Returns void

    depthSort

    each

    • each<t>(cb: (renderableObject: Renderable, index: number) => t): void

    each

    • each<t>(cb: (renderableObject: Renderable, index: number) => t): void
    • memberof

      DisplayList

      description

      Loops through each renderableObject and runs a callback with it passed

      since

      2.0.0

      Type parameters

      • t = void

      Parameters

      • cb: (renderableObject: Renderable, index: number) => t

        Callback

        -
          • Parameters

            Returns t

      Returns void

    remove

      • Parameters

        Returns t

    Returns void

    remove

    splice

    • splice(index: number, amount?: number): Renderable[]

    Returns void

    splice

    • splice(index: number, amount?: number): Renderable[]
    • memberof

      DisplayList

      description

      Removes an item from the list based on passed index

      since

      2.0.0

      -

      Parameters

      • index: number
      • Optional amount: number

      Returns Renderable[]

    visibilityFilter

    visibilityFilter

    • memberof

      DisplayList

      description

      Filters all renderableObjects by its visible boolean property

      since

      2.0.0

      -

      Parameters

      • filter: boolean = true

      Returns Renderable[]

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Parameters

    • filter: boolean = true

    Returns Renderable[]

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_models_physicsList.PhysicsList.html b/docs/classes/core_models_physicsList.PhysicsList.html index 82c51271..78663afa 100644 --- a/docs/classes/core_models_physicsList.PhysicsList.html +++ b/docs/classes/core_models_physicsList.PhysicsList.html @@ -1,30 +1,30 @@ -PhysicsList | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a PhysicsList that manages Physics objects

    +PhysicsList | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a PhysicsList that manages Physics objects

    description

    The PhysicsList Class. Keeps track of all Physics objects

    since

    2.0.0

    -

    Hierarchy

    • PhysicsList

    Index

    Constructors

    constructor

    Properties

    list

    Accessors

    length

    • get length(): number

    Hierarchy

    • PhysicsList

    Index

    Constructors

    constructor

    Properties

    list

    Accessors

    length

    • get length(): number

    listItems

    listItems

    Methods

    add

    Returns void

    Methods

    add

    each

    Returns void

    each

    enabledFilter

    remove

    Returns void

    enabledFilter

    remove

    splice

    Returns void

    splice

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Parameters

    • index: number
    • Optional amount: number

    Returns PhysicsProcessMember[]

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_physics_models_area.Area.html b/docs/classes/core_physics_models_area.Area.html index ba531e3c..28a346b2 100644 --- a/docs/classes/core_physics_models_area.Area.html +++ b/docs/classes/core_physics_models_area.Area.html @@ -1,7 +1,7 @@ -Area | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Area

    +Area | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Area

    description

    The Area Class. Detects Hitboxes entering and leaving an area

    since

    2.0.0

    -

    Hierarchy

    Index

    Constructors

    constructor

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns Area

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bodies

    memberof

    Area

    +

    bodies

    memberof

    Area

    description

    An array of PhysicsBodies that are currently in the area

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    memberof

    PhysicsBody

    +

    collidesWith

    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    collisionFilter

    collisionFilter: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    Area

    +

    collisionFilter

    collisionFilter: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    Area

    description

    An array of PhysicsBodies with Hitboxes to check for entering and leaving the area

    since

    2.0.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    onBodyEnter

    onBodyEnter: undefined | ((physicsBody: PhysicsBody<Duck.Types.Texture.Type>) => unknown)
    memberof

    Area

    +

    onBodyEnter

    onBodyEnter: undefined | ((physicsBody: PhysicsBody<Duck.Types.Texture.Type>) => unknown)
    memberof

    Area

    description

    Callback to call when a PhysicsBody with a Hitbox enters

    since

    2.0.0

    -

    onBodyLeave

    onBodyLeave: undefined | ((physicsBody: PhysicsBody<Duck.Types.Texture.Type>) => unknown)
    memberof

    Area

    +

    onBodyLeave

    onBodyLeave: undefined | ((physicsBody: PhysicsBody<Duck.Types.Texture.Type>) => unknown)
    memberof

    Area

    description

    Callback to call when a PhysicsBody with a Hitbox leaves the area

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -90,136 +90,136 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    Methods

    _update

    • _update(): void

    Methods

    _update

    • _update(): void
    • memberof

      Area

      description

      Updates the Area, check for Hitbox intersections with the passed collisionFilter array of PhysicsBodies

      DO NOT CALL MANUALLY! CALLED IN SCENE.PHYSICS SERVER.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    Protected addBody

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    Protected addBody

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bodyIsInArea

    bodyIsInArea

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    Returns boolean

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    Protected removeBody

    scaleHitbox

    Protected removeBody

    scaleHitbox

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setType

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_physics_models_collider.Collider.html b/docs/classes/core_physics_models_collider.Collider.html index d432fd53..935f0aca 100644 --- a/docs/classes/core_physics_models_collider.Collider.html +++ b/docs/classes/core_physics_models_collider.Collider.html @@ -1,7 +1,7 @@ -Collider | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Collider

    +Collider | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Collider

    description

    The Collider Class. Collision Handler and Resolver

    since

    1.0.0-beta

    -

    Hierarchy

    • Collider

    Index

    Constructors

    constructor

    Hierarchy

    • Collider

    Index

    Constructors

    constructor

    Properties

    collidesWith

    game

    game: Game

    hitbox

    hitbox: Hitbox

    Methods

    _update

    Returns Collider

    Properties

    collidesWith

    game

    game: Game

    hitbox

    hitbox: Hitbox

    Methods

    _update

    • memberof

      Collider

      description

      Updates the collider and checks for collisions with the updated version of the object, and collides with.

      DO NOT CALL MANUALLY! CALLED IN PHYSICS SERVER!

      since

      2.0.0

      @@ -17,4 +17,4 @@

      The updated hitbox that the collider is attached

  • updatedCollidesWith: GameObject<Duck.Types.Texture.Type>[] | Group<GameObject<Duck.Types.Texture.Type>>

    Updated version of what the object collides with

    -
  • Returns void

    Protected collideHitboxes

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Protected collideHitboxes

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_physics_models_hitbox.Hitbox.html b/docs/classes/core_physics_models_hitbox.Hitbox.html index 5c5f4319..82bffbe7 100644 --- a/docs/classes/core_physics_models_hitbox.Hitbox.html +++ b/docs/classes/core_physics_models_hitbox.Hitbox.html @@ -1,7 +1,7 @@ -Hitbox | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Hitbox

    +Hitbox | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Hitbox

    description

    The Hitbox Class. A AABB Hitbox used for Colliders

    since

    2.0.0

    -

    Hierarchy

    • Hitbox

    Implements

    Index

    Constructors

    constructor

    Hierarchy

    • Hitbox

    Implements

    Index

    Constructors

    constructor

    Properties

    collisionState

    collisionState: CollisionResponseType
    memberof

    Hitbox

    +
  • Optional debugColor: Color
  • Returns Hitbox

    Properties

    collisionState

    collisionState: CollisionResponseType
    memberof

    Hitbox

    description

    A string determining the state of the current collision

    since

    2.0.0

    -

    culled

    culled: boolean
    memberof

    Hitbox

    +

    culled

    culled: boolean
    memberof

    Hitbox

    description

    Determines if the Hitbox should be visible by the current scene's current camera

    since

    2.1.0

    -

    debugColor

    debugColor: undefined | string
    memberof

    Hitbox

    +

    debugColor

    debugColor: undefined | Color
    memberof

    Hitbox

    description

    The debug color of the Hitbox, determines if the visibility of the hitbox

    -
    since

    game

    game: Game
    memberof

    Hitbox

    +
    since

    game

    game: Game
    memberof

    Hitbox

    description

    Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    Hitbox

    +

    h

    h: number
    memberof

    Hitbox

    description

    The Height of the Hitbox

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    Hitbox

    +

    Readonly id

    id: string
    memberof

    Hitbox

    description

    The unique identifier for a Hitbox

    since

    2.0.0

    -

    offset

    offset: Vector2
    memberof

    Hitbox

    +

    offset

    offset: Vector2
    memberof

    Hitbox

    description

    The Offset Position of the hitbox

    since

    2.0.0

    -

    physicsObject

    memberof

    Hitbox

    +

    physicsObject

    memberof

    Hitbox

    description

    PhysicsBody that the Hitbox is attached to

    since

    2.0.0

    -

    position

    position: Vector2
    memberof

    Hitbox

    +

    position

    position: Vector2
    memberof

    Hitbox

    description

    The Position of the Hitbox

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    Hitbox

    +

    scene

    scene: Scene
    memberof

    Hitbox

    description

    Scene instance

    since

    2.0.0

    -

    visible

    visible: boolean
    memberof

    Hitbox

    +

    visible

    visible: boolean
    memberof

    Hitbox

    description

    Determines if the Hitbox will be drawn on the screen as a debug aid

    since

    2.0.0

    -

    w

    w: number
    memberof

    Hitbox

    +

    w

    w: number
    memberof

    Hitbox

    description

    The Width of the Hitbox

    since

    2.0.0

    -

    zIndex

    zIndex: number
    memberof

    Hitbox

    +

    zIndex

    zIndex: number
    memberof

    Hitbox

    description

    The zIndex of the Hitbox, effects how the Hitbox is layered if it is drawn on the screen as a debug aid

    since

    2.0.0

    -

    Methods

    _draw

    • _draw(): void

    Methods

    _draw

    • _draw(): void
    • memberof

      Hitbox

      description

      Draws the hitbox if a debugColor is passed in the constructor.

      DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList

      since

      2.0.0

      -

      Returns void

    _update

    _update

    auto

    auto

    • memberof

      Hitbox

      description

      Auto scales, positions, and offsets the Hitbox based on the shape of the PhysicsBody

      since

      2.0.0

      -

      Parameters

      Returns void

    getBottom

    • getBottom(): number

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    groupIntersectsFaceWith

    groupIntersectsFaceWith

    intersectsFaceWith

    Returns CollisionResponseType[]

    intersectsFaceWith

    intersectsWith

    • intersectsWith(hitbox: Hitbox): boolean

    Returns CollisionResponseType

    intersectsWith

    • intersectsWith(hitbox: Hitbox): boolean

    scale

    scale

    setDebugColor

    • setDebugColor(debugColor: string, visible?: boolean): void

    Returns void

    setDebugColor

    • setDebugColor(debugColor: string, visible?: boolean): void
    • memberof

      Hitbox

      description

      Sets the debugColor and visibility of the Hitbox as a debug aid

      since

      2.0.0

      Parameters

      • debugColor: string

        Color

        -
      • visible: boolean = true

      Returns void

    setPosition

    Returns void

    setPosition

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +
  • offset: Vector2 = ...
  • Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_physics_physicsBody.PhysicsBody.html b/docs/classes/core_physics_physicsBody.PhysicsBody.html index 7469dc88..3eae8bb8 100644 --- a/docs/classes/core_physics_physicsBody.PhysicsBody.html +++ b/docs/classes/core_physics_physicsBody.PhysicsBody.html @@ -1,7 +1,7 @@ -PhysicsBody | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine PhysicsBody

    +PhysicsBody | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine PhysicsBody

    description

    The PhysicsBody Class. The GameObject class extends this class

    since

    2.0.0

    -

    Type parameters

    Hierarchy

    Index

    Constructors

    constructor

    • new PhysicsBody<textureType>(shape: ShapeString, id: string, x: number, y: number, w: number, h: number, r: number, game: Game, scene: Scene): PhysicsBody<textureType>

    Type parameters

    Hierarchy

    Index

    Constructors

    constructor

    • new PhysicsBody<textureType>(shape: ShapeString, id: string, x: number, y: number, w: number, h: number, r: number, game: Game, scene: Scene): PhysicsBody<textureType>

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    +

    Returns PhysicsBody<textureType>

    Properties

    attachOffset

    attachOffset: Vector2
    memberof

    PhysicsBody

    description

    The offset between the PhysicsBody that self is attached to

    since

    2.0.0

    -

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    +

    attachedChildren

    attachedChildren: PhysicsBody<Duck.Types.Texture.Type>[]
    memberof

    PhysicsBody

    description

    PhysicsBodies that are attached

    since

    2.0.0

    -

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    +

    bounds

    bounds: BoundsLike
    memberof

    PhysicsBody

    description

    The bounds of the PhysicsBody

    since

    2.0.0

    -

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    +

    collider

    collider: undefined | Collider
    memberof

    PhysicsBody

    description

    The Collider instance of the PhysicsBody

    since

    2.0.0

    -

    collidesWith

    collidesWith: Duck.TypeClasses.GameObjects.GameObject<textureType>[] | Group<Duck.TypeClasses.GameObjects.GameObject<textureType>>
    memberof

    PhysicsBody

    +

    collidesWith

    collidesWith: Duck.TypeClasses.GameObjects.GameObject<textureType>[] | Group<Duck.TypeClasses.GameObjects.GameObject<textureType>>
    memberof

    PhysicsBody

    description

    An array or group of GameObjects that can collide with the PhysicsBody

    since

    2.0.0

    -

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    +

    enabled

    enabled: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList , changing this value does nothing, must use PhysicsBody.setEnabled

    since

    2.0.0

    -

    game

    game: Game
    memberof

    PhysicsBody

    +

    game

    game: Game
    memberof

    PhysicsBody

    description

    The Game instance

    since

    2.0.0

    -

    h

    h: number
    memberof

    PhysicsBody

    +

    h

    h: number
    memberof

    PhysicsBody

    description

    The height of the GameObject

    since

    2.0.0

    -

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    +

    hitbox

    hitbox: undefined | Hitbox
    memberof

    PhysicsBody

    description

    The Collider Hitbox of the PhysicsBody

    since

    2.0.0

    -

    Readonly id

    id: string
    memberof

    PhysicsBody

    +

    Readonly id

    id: string
    memberof

    PhysicsBody

    description

    The unique identifier for a GameObject

    since

    2.0.0

    -

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    +

    isAttached

    isAttached: boolean
    memberof

    PhysicsBody

    description

    Determines if the PhysicsBody is attached to another PhysicsBody

    since

    2.0.0

    -

    options

    memberof

    PhysicsBody

    +

    options

    memberof

    PhysicsBody

    description

    PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody

    defaults: { type: 'KinematicBody'}

    since

    2.0.0

    -

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    +

    physics

    physics: { addCollider: any; addHitbox: any; setBounds: any }
    memberof

    PhysicsBody

    description

    Object that has all the physics method

    since

    2.0.0

    -

    Type declaration

  • addHitbox:function
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
  • setBounds:function
    • setBounds(x: number, y: number, w: number, h: number): void
    • memberof

      GameObject#physics

      description

      Adds bounds to the GameObject

      since

      2.0.0

      Parameters

      • x: number
        @@ -81,134 +81,134 @@

        Width of the bounds

      • h: number

        Height of the bounds

        -

      Returns void

  • position

    position: Vector2
    memberof

    PhysicsBody

    +

    Returns void

    position

    position: Vector2
    memberof

    PhysicsBody

    description

    The current global position of the GameObject

    since

    2.0.0

    -

    r

    r: number
    memberof

    PhysicsBody

    +

    r

    r: number
    memberof

    PhysicsBody

    description

    The radius of the GameObject

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsBody

    +

    scene

    scene: Scene
    memberof

    PhysicsBody

    description

    The Scene instance

    since

    2.0.0

    -

    Readonly shape

    memberof

    PhysicsBody

    +

    Readonly shape

    memberof

    PhysicsBody

    description

    The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite'

    since

    2.0.0

    -

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    +

    velocity

    velocity: Vector2
    memberof

    PhysicsBody

    description

    The velocity of the PhysicsBody

    since

    2.0.0

    -

    w

    w: number
    memberof

    PhysicsBody

    +

    w

    w: number
    memberof

    PhysicsBody

    description

    The width of the GameObject

    since

    2.0.0

    -

    Methods

    _update

    • _update(): void

    Methods

    _update

    • _update(): void
    • memberof

      PhysicsBody

      description

      Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. Updates hitbox.collisionState if hitbox exists.

      DO NOT CALL MANUALLY, CALLED IN SCENE.__tick

      since

      2.0.0

      -

      Returns void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void

    accelerateVelocity

    • accelerateVelocity(target: Vector2, amount: number): void
    • memberof

      PhysicsBody

      description

      Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • target: Vector2

        The target velocity

      • amount: number

        The value to increase the velocity by

        -

      Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void

    Returns void

    applyFriction

    • applyFriction(frictionAmount: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • frictionAmount: Vector2

        The value to decrease the velocity by

        -

      Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void

    Returns void

    applyGravity

    • applyGravity(gravity: Vector2): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      Parameters

      • gravity: Vector2

        The Vector2 to add to the velocity by

        -

      Returns void

    attachChild

    Returns void

    attachChild

    attachTo

    Returns void

    attachTo

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    Returns void

    autoFitHitbox

    • autoFitHitbox(offset?: Vector2): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void

    bounceVelocityBounds

    • bounceVelocityBounds(bounds?: BoundsLike, restitution?: number): void
    • memberof

      PhysicsBody

      description

      Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody

      since

      2.0.0

      -

      Parameters

      Returns void

    detachChild

    detachChild

    detachFrom

    Returns void

    detachFrom

    getBottom

    • getBottom(): number

    Returns void

    getBottom

    • getBottom(): number

    getCenter

    getCenter

    getCenterX

    • getCenterX(): number

    getCenterX

    • getCenterX(): number

    getCenterY

    • getCenterY(): number

    getCenterY

    • getCenterY(): number

    getLeft

    • getLeft(): number

    getLeft

    • getLeft(): number

    getRight

    • getRight(): number

    getRight

    • getRight(): number

    getTop

    • getTop(): number

    getTop

    • getTop(): number

    isColliding

    isColliding

    isCollidingGroup

    Returns undefined | false | CollisionResponseType

    isCollidingGroup

    reflectVelocity

    • reflectVelocity(): void

    Returns false | "left" | "right" | "bottom" | "top"

    reflectVelocity

    • reflectVelocity(): void
    • memberof

      PhysicsBody

      description

      Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody

      example

      myPhysicsBody.setVelocity('x', 3); myPhysicsBody.reflect(); // velocity: 0, -3

      since

      2.0.0

      -

      Returns void

    scaleHitbox

    scaleHitbox

    • memberof

      PhysicsBody

      description

      Scales the PhysicsBody.hitbox

      since

      2.0.0

      Parameters

      • scale: Vector2

        Scale Vector2, x is width, y is height

        -

      Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setType

    Returns void

    setEnabled

    • setEnabled(enabled: boolean): boolean

    setType

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void

    Returns Duck.Types.PhysicsBody.Config

    setVelocity

    • setVelocity(axis: "x" | "y", pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • axis: "x" | "y"

        The axis to set the velocity of

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void

    Returns void

    setVelocityX

    • setVelocityX(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.x, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity axis as, in pixels per second

        -

      Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void

    Returns void

    setVelocityY

    • setVelocityY(pxPerSecond: number): void
    • memberof

      PhysicsBody

      description

      Sets the velocity.y, PhysicsBody.options.type must be KinematicBody

      since

      2.0.0

      Parameters

      • pxPerSecond: number

        The value to set the velocity.y as, in pixels per second

        -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_physics_server_physicsServer.PhysicsServer.html b/docs/classes/core_physics_server_physicsServer.PhysicsServer.html index 5ae69079..c9b19897 100644 --- a/docs/classes/core_physics_server_physicsServer.PhysicsServer.html +++ b/docs/classes/core_physics_server_physicsServer.PhysicsServer.html @@ -1,21 +1,21 @@ -PhysicsServer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine PhysicsServer

    +PhysicsServer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine PhysicsServer

    description

    The PhysicsServer Class. Handles all Physics updates

    since

    2.0.0

    -

    Hierarchy

    • PhysicsServer

    Index

    Constructors

    Properties

    Methods

    Constructors

    constructor

    Hierarchy

    • PhysicsServer

    Index

    Constructors

    Properties

    Methods

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    PhysicsServer

    +

    Returns PhysicsServer

    Properties

    game

    game: Game
    memberof

    PhysicsServer

    description

    Game instance

    since

    2.0.0

    -

    scene

    scene: Scene
    memberof

    PhysicsServer

    +

    scene

    scene: Scene
    memberof

    PhysicsServer

    description

    Scene instance

    since

    2.0.0

    -

    Methods

    __tick

    • __tick(): void

    Methods

    __tick

    • __tick(): void
    • memberof

      PhysicsServer

      description

      Uses PhysicsServer.Scene.physicsList and filters all enabled PhysicsBodies and calls PhysicsBody._update, PhysicsBody.hitbox._update, and PhysicsBody.collider._update

      DO NOT CALL MANUALLY! CALLED IN SCENE.__TICK

      since

      2.0.0

      -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_renderer_baseRenderer.BaseRenderer.html b/docs/classes/core_renderer_baseRenderer.BaseRenderer.html index fdcf73ed..b1495baf 100644 --- a/docs/classes/core_renderer_baseRenderer.BaseRenderer.html +++ b/docs/classes/core_renderer_baseRenderer.BaseRenderer.html @@ -1 +1 @@ -BaseRenderer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    game

    game: Game

    Methods

    Abstract clearFrame

    • clearFrame(): void

    Abstract drawCircle

    • drawCircle(x: number, y: number, r: number, color: string): void

    Abstract drawRect

    • drawRect(x: number, y: number, w: number, h: number, color: string): void

    Abstract drawRoundRect

    • drawRoundRect(x: number, y: number, w: number, h: number, r: number, color: string): void

    Abstract drawSprite

    • drawSprite(x: number, y: number, w: number, h: number, texture: TextureBase<"image">, frameWidth?: number, frameHeight?: number, currentRow?: number, currentCol?: number): void
    • Parameters

      • x: number
      • y: number
      • w: number
      • h: number
      • texture: TextureBase<"image">
      • Optional frameWidth: number
      • Optional frameHeight: number
      • Optional currentRow: number
      • Optional currentCol: number

      Returns void

    Abstract drawText

    • drawText(text: string, x: number, y: number, maxWidth?: number): void

    Abstract measureText

    • measureText(font: string, text: string): void

    Abstract restore

    • restore(): void

    Abstract save

    • save(): void

    Abstract scale

    • scale(x: number, y: number): void

    Abstract setBlendMode

    • setBlendMode(blendMode: "color" | "multiply" | "source-over" | "source-in" | "source-out" | "source-atop" | "destination-over" | "destination-in" | "destination-out" | "destination-atop" | "lighter" | "copy" | "xor" | "screen" | "overlay" | "darken" | "lighten" | "color-dodge" | "color-burn" | "hard-light" | "soft-light" | "difference" | "exclusion" | "hue" | "saturation" | "luminosity"): void
    • Parameters

      • blendMode: "color" | "multiply" | "source-over" | "source-in" | "source-out" | "source-atop" | "destination-over" | "destination-in" | "destination-out" | "destination-atop" | "lighter" | "copy" | "xor" | "screen" | "overlay" | "darken" | "lighten" | "color-dodge" | "color-burn" | "hard-light" | "soft-light" | "difference" | "exclusion" | "hue" | "saturation" | "luminosity"

      Returns void

    Abstract setFillColor

    • setFillColor(color: string): void

    Abstract setFont

    • setFont(font: string): void

    Abstract setLineWidth

    • setLineWidth(width: number): void

    Abstract setStrokeColor

    • setStrokeColor(color: string): void

    Abstract strokeText

    • strokeText(text: string, x: number, y: number, maxWidth?: number): void

    Abstract transform

    • transform(a: number, b: number, c: number, d: number, e: number, f: number): void

    Abstract translate

    • translate(x: number, y: number): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +BaseRenderer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    game

    game: Game

    Methods

    Abstract clearFrame

    • clearFrame(): void

    Abstract drawCircle

    • drawCircle(x: number, y: number, r: number, color: Color): void

    Abstract drawRect

    • drawRect(x: number, y: number, w: number, h: number, color: Color): void

    Abstract drawRoundRect

    • drawRoundRect(x: number, y: number, w: number, h: number, r: number, color: Color): void

    Abstract drawSprite

    • drawSprite(x: number, y: number, w: number, h: number, texture: TextureBase<"image">, frameWidth?: number, frameHeight?: number, currentRow?: number, currentCol?: number): void
    • Parameters

      • x: number
      • y: number
      • w: number
      • h: number
      • texture: TextureBase<"image">
      • Optional frameWidth: number
      • Optional frameHeight: number
      • Optional currentRow: number
      • Optional currentCol: number

      Returns void

    Abstract drawText

    • drawText(text: string, x: number, y: number, maxWidth?: number): void

    Abstract measureText

    • measureText(font: string, text: string): void

    Abstract restore

    • restore(): void

    Abstract save

    • save(): void

    Abstract scale

    • scale(x: number, y: number): void

    Abstract setBlendMode

    • setBlendMode(blendMode: "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor"): void
    • Parameters

      • blendMode: "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor"

      Returns void

    Abstract setFillColor

    • setFillColor(color: Color): void

    Abstract setFont

    • setFont(font: string): void

    Abstract setLineWidth

    • setLineWidth(width: number): void

    Abstract setStrokeColor

    • setStrokeColor(color: Color): void

    Abstract strokeText

    • strokeText(text: string, x: number, y: number, maxWidth?: number): void

    Abstract transform

    • transform(a: number, b: number, c: number, d: number, e: number, f: number): void

    Abstract translate

    • translate(x: number, y: number): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html b/docs/classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html index f596f740..c47304f8 100644 --- a/docs/classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html +++ b/docs/classes/core_renderer_canvas_canvasRenderer.CanvasRenderer.html @@ -1,20 +1,20 @@ -CanvasRenderer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine CanvasRenderer

    +CanvasRenderer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine CanvasRenderer

    description

    The CanvasRenderer Class. Renders everything using the RendererPipeline to pool what to draw

    since

    2.1.0

    -

    Hierarchy

    Index

    Constructors

    constructor

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    ctx

    ctx: CanvasRenderingContext2D
    memberof

    CanvasRenderer

    +

    Returns CanvasRenderer

    Properties

    ctx

    ctx: CanvasRenderingContext2D
    memberof

    CanvasRenderer

    description

    The Canvas rendering context

    since

    2.1.0

    -

    game

    game: Game

    pipeline

    memberof

    CanvasRenderer

    +

    game

    game: Game

    pipeline

    memberof

    CanvasRenderer

    description

    The RenderingPipeline, handles and manages what needs to be drawn and updated

    since

    2.1.0

    -

    Methods

    clearFrame

    • clearFrame(): void

    Methods

    clearFrame

    • clearFrame(): void

    clearRect

    • clearRect(x: number, y: number, w: number, h: number): void

    clearRect

    • clearRect(x: number, y: number, w: number, h: number): void
    • memberof

      CanvasRenderer

      description

      Clears an area

      since

      2.1.0

      Parameters

      • x: number
        @@ -25,7 +25,7 @@

        Width of area to clear

      • h: number

        Height of area to clear

        -

      Returns void

    drawCircle

    • drawCircle(x: number, y: number, r: number, color: string): void

    Returns void

    drawCircle

    • drawCircle(x: number, y: number, r: number, color: Color): void

    drawRect

    • drawRect(x: number, y: number, w: number, h: number, color: string): void

    Returns void

    drawRect

    • drawRect(x: number, y: number, w: number, h: number, color: Color): void

    drawRoundRect

    • drawRoundRect(x: number, y: number, w: number, h: number, r: number, color: string): void

    Returns void

    drawRoundRect

    • drawRoundRect(x: number, y: number, w: number, h: number, r: number, color: Color): void

    drawSprite

    • drawSprite(x: number, y: number, w: number, h: number, texture: TextureBase<"image">, currentRow?: number, currentCol?: number): void

    Returns void

    drawSprite

    • drawSprite(x: number, y: number, w: number, h: number, texture: TextureBase<"image">, currentRow?: number, currentCol?: number): void

    drawText

    • drawText(text: string, x: number, y: number, maxWidth?: number): void

    Returns void

    drawText

    • drawText(text: string, x: number, y: number, maxWidth?: number): void
    • memberof

      CanvasRenderer

      description

      Draws text to the screen, must set font with this.setFont first and color with this.setFillColor

      since

      2.1.0

      Parameters

      • text: string
        @@ -86,57 +86,57 @@

        X Position

      • y: number

        Y Position

        -
      • Optional maxWidth: number

      Returns void

    measureText

    • measureText(font: string, text: string): TextMetrics

    Returns void

    measureText

    • measureText(font: string, text: string): TextMetrics

    render

    • render(deltaTime: number): void

    Returns TextMetrics

    render

    • render(deltaTime: number): void
    • memberof

      CanvasRenderer

      description

      Gets the poolStack from the pipeline and ticks, updates, and renders the scene and renderables

      since

      2.1.0

      Parameters

      • deltaTime: number

        Time passed since last frame

        -

      Returns void

    restore

    • restore(): void

    Returns void

    restore

    • restore(): void

    save

    • save(): void

    save

    • save(): void

    scale

    • scale(x: number, y: number): void

    scale

    • scale(x: number, y: number): void

    setBlendMode

    • setBlendMode(blendMode: "color" | "multiply" | "source-over" | "source-in" | "source-out" | "source-atop" | "destination-over" | "destination-in" | "destination-out" | "destination-atop" | "lighter" | "copy" | "xor" | "screen" | "overlay" | "darken" | "lighten" | "color-dodge" | "color-burn" | "hard-light" | "soft-light" | "difference" | "exclusion" | "hue" | "saturation" | "luminosity"): void

    Returns void

    setBlendMode

    • setBlendMode(blendMode: "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor"): void
    • memberof

      CanvasRenderer

      description

      Sets the blend mode / globalCompositionOperation

      since

      2.1.0

      -

      Parameters

      • blendMode: "color" | "multiply" | "source-over" | "source-in" | "source-out" | "source-atop" | "destination-over" | "destination-in" | "destination-out" | "destination-atop" | "lighter" | "copy" | "xor" | "screen" | "overlay" | "darken" | "lighten" | "color-dodge" | "color-burn" | "hard-light" | "soft-light" | "difference" | "exclusion" | "hue" | "saturation" | "luminosity"
        +

        Parameters

        • blendMode: "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor"

          Blend Mode

          -

        Returns void

    setFillColor

    • setFillColor(color: string): void

    Returns void

    setFillColor

    • setFillColor(color: Color): void

    setFont

    • setFont(font: string): void

    Returns void

    setFont

    • setFont(font: string): void

    setLineWidth

    • setLineWidth(width: number): void

    Returns void

    setLineWidth

    • setLineWidth(width: number): void

    setStrokeColor

    • setStrokeColor(color: string): void

    Returns void

    setStrokeColor

    • setStrokeColor(color: Color): void

    strokeText

    • strokeText(text: string, x: number, y: number, maxWidth?: number): void

    Returns void

    strokeText

    • strokeText(text: string, x: number, y: number, maxWidth?: number): void
    • memberof

      CanvasRenderer

      description

      Strokes text to the screen, must set font with this.setFont first and color with this.setStrokeColor

      since

      2.1.0

      Parameters

      • text: string
        @@ -145,14 +145,14 @@

        X Position

      • y: number

        Y Position

        -
      • Optional maxWidth: number

      Returns void

    transform

    • transform(a: number, b: number, c: number, d: number, e: number, f: number): void

    Returns void

    transform

    • transform(a: number, b: number, c: number, d: number, e: number, f: number): void

    translate

    • translate(x: number, y: number): void

    translate

    • translate(x: number, y: number): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html b/docs/classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html index 7b4cc310..f1358a81 100644 --- a/docs/classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html +++ b/docs/classes/core_renderer_canvas_pipeline_rendererPipeline.RendererPipeline.html @@ -1,27 +1,30 @@ -RendererPipeline | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine RendererPipeline

    +RendererPipeline | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine RendererPipeline

    description

    The RendererPipeline Class. Manages all visible scenes and renderables by pooling them on an interval for GC efficiency

    since

    2.1.0

    -

    Hierarchy

    • RendererPipeline

    Index

    Constructors

    constructor

    Hierarchy

    • RendererPipeline

    Index

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    RendererPipeline

    +

    Returns RendererPipeline

    Properties

    game

    game: Game
    memberof

    RendererPipeline

    description

    Game instance

    since

    2.1.0

    -

    poolInterval

    poolInterval: unknown
    memberof

    RendererPipeline

    +

    poolInterval

    poolInterval: unknown
    memberof

    RendererPipeline

    description

    The interval that calls RendererPipeline.pool, time: 1000 / this.game.fps

    since

    2.1.0

    -

    poolStack

    poolStack: PoolStackItem[]
    memberof

    RendererPipeline

    +

    poolStack

    poolStack: PoolStackItem[]
    memberof

    RendererPipeline

    description

    The poolStack, contains objects that holds a scene and its renderables

    since

    2.1.0

    -

    Protected updateTimeInterval

    updateTimeInterval: unknown
    memberof

    RendererPipeline

    +

    poolingInterval

    poolingInterval: number
    memberof

    RendererPipeline

    +
    description

    How often the poolInterval is called, 1000 / this.game.fps or a passed game.config.poolingInterval

    +
    since

    3.0.0

    +

    Protected updateTimeInterval

    updateTimeInterval: unknown
    memberof

    RendererPipeline

    description

    The interval that calls RendererPipeline.updateTime, time: 1000, updates the time that the poolInterval is called for better results

    since

    2.1.0

    -

    Methods

    pool

    • pool(): void

    Methods

    pool

    • pool(): void

    updateTime

    • updateTime(): void

    updateTime

    • updateTime(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_renderer_models_color.Color.html b/docs/classes/core_renderer_models_color.Color.html new file mode 100644 index 00000000..9c792566 --- /dev/null +++ b/docs/classes/core_renderer_models_color.Color.html @@ -0,0 +1,26 @@ +Color | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Color

    +
    description

    The Color Class. Hexadecimal or CanvasGradients are stored and managed here, as well as stroke info

    +
    since

    3.0.0

    +

    Hierarchy

    • Color

    Index

    Constructors

    constructor

    • new Color(value: string | number | CanvasGradient | CanvasPattern): Color
    • new Color(value: string | number | CanvasGradient | CanvasPattern, stroke: string | number, strokeWidth: number): Color
    • description

      Creates a Color instance

      +
      since

      3.0.0

      +

      Parameters

      • value: string | number | CanvasGradient | CanvasPattern
        +

        Color value itself, number is converted to string later, hexadecimal, CanvasGradient, and CanvasPattern ONLY

        +

      Returns Color

    • description

      Creates a Color instance

      +
      since

      3.0.0

      +

      Parameters

      • value: string | number | CanvasGradient | CanvasPattern
        +

        Color value itself, number is converted to string later, hexadecimal, CanvasGradient, and CanvasPattern ONLY

        +
      • stroke: string | number
        +

        Stroke color, if originally a number hexadecimal color, it is converted to string, hexadecimal ONLY

        +
      • strokeWidth: number
        +

        Stroke width, must be a number

        +

      Returns Color

    Properties

    Optional stroke

    stroke?: string
    memberof

    Color

    +
    description

    Stroke color if passed, if originally a number hexadecimal color, it is converted to string, optional -> defaults: undefined

    +
    default

    undefined

    +
    since

    3.0.0

    +

    Optional strokeWidth

    strokeWidth?: number
    memberof

    Color

    +
    description

    Stroke width if passed, optional -> defaults: undefined

    +
    since

    3.0.0

    +

    value

    value: string | CanvasGradient | CanvasPattern
    memberof

    Color

    +
    description

    The color itself, string, CanvasGradient, or CanvasPattern. If passed as number, it is converted into a hex color string

    +
    since

    3.0.0

    +

    Accessors

    Static black

    Static blue

    Static darkBlue

    Static darkGreen

    Static darkOrange

    Static darkPurple

    Static darkRed

    Static darkYellow

    Static gray

    Static green

    Static lightBlue

    Static lightGreen

    Static lightOrange

    Static lightPurple

    Static lightRed

    Static lightYellow

    Static orange

    Static pink

    Static purple

    Static red

    Static white

    Static yellow

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_scene.Scene.html b/docs/classes/core_scene.Scene.html index e36da1e2..e238177c 100644 --- a/docs/classes/core_scene.Scene.html +++ b/docs/classes/core_scene.Scene.html @@ -1,65 +1,65 @@ -Scene | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Scene

    +Scene | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Scene

    description

    The Scene Class. Main rendering happens here

    since

    1.0.0-beta

    -

    Hierarchy

    • Render
      • Scene

    Index

    Constructors

    constructor

    • new Scene(key: string, game: Game, visible?: boolean): Scene
    • description

      Creates a Scene instance

      +

    Hierarchy

    • Render
      • Scene

    Index

    Constructors

    constructor

    • new Scene(key: string, game: Game, visible?: boolean): Scene
    • description

      Creates a Scene instance

      since

      1.0.0-beta

      Parameters

      • key: string

        Key/Identifier or name of scene

      • game: Game

        Game instance

        -
      • Optional visible: boolean

      Returns Scene

    Properties

    add

    add: { gameobject: { misc: { canvasModulate: any }; circle: any; existing: any; rect: any; roundRect: any; sprite: any }; light: { staticLight: any }; map: { tileLayer: any; tilemap: any; tileset: any }; misc: { area: any }; presetEffect: { explosionEffect: any; smokeEffect: any }; ui: { button: any; text: any }; camera: any; cutscene: any; effect: any; group: any; input: any; mainCamera: any; particle: any; particleEmitter: any; soundPlayer: any }
    memberof

    Scene

    +
  • Optional visible: boolean
  • Returns Scene

    Properties

    add

    add: { gameobject: { misc: { canvasModulate: any }; circle: any; existing: any; rect: any; roundRect: any; sprite: any }; light: { staticLight: any }; map: { tileLayer: any; tilemap: any; tileset: any }; misc: { area: any }; presetEffect: { explosionEffect: any; smokeEffect: any }; ui: { button: any; text: any }; camera: any; color: any; cutscene: any; effect: any; group: any; input: any; mainCamera: any; particle: any; particleEmitter: any; sound: any }
    memberof

    Scene

    description

    Used to add GameObjects and more to the scene

    since

    1.0.0-beta

    -

    Type declaration

    cameras

    cameras: Camera[]
    memberof

    Scene

    +

    Type declaration

    cameras

    cameras: Camera[]
    memberof

    Scene

    description

    An array of cameras that the scene holds

    since

    1.0.0-beta

    -

    currentCamera

    currentCamera: undefined | Camera
    memberof

    Scene

    +

    currentCamera

    currentCamera: undefined | Camera
    memberof

    Scene

    description

    The current camera being updated

    since

    1.0.0-beta

    -

    Readonly default

    default: boolean
    memberof

    Scene

    +

    Readonly default

    default: boolean
    memberof

    Scene

    description

    Determines if the Scene is visible by default

    since

    1.0.0-beta

    -

    displayList

    displayList: DisplayList
    memberof

    Scene

    +

    displayList

    displayList: DisplayList
    memberof

    Scene

    description

    A DisplayList instance, holds and manages Renderables

    since

    2.0.0

    -

    Protected game

    game: Game
    memberof

    Scene

    +

    Protected game

    game: Game
    memberof

    Scene

    description

    The game instance the scene is added to

    since

    1.0.0-beta

    -

    Readonly key

    key: string
    memberof

    Scene

    +

    Readonly key

    key: string
    memberof

    Scene

    description

    The key of the Scene, used to identify the Scene

    since

    1.0.0-beta

    -

    loader

    loader: Loader
    memberof

    Scene

    +

    loader

    loader: Loader
    memberof

    Scene

    description

    A Loader instance, used to load assets in Scene.preload method that you override

    since

    2.0.0

    -

    mainCamera

    mainCamera: undefined | Camera
    memberof

    Scene

    +

    mainCamera

    mainCamera: undefined | Camera
    memberof

    Scene

    description

    The main camera of the scene

    since

    1.0.0-beta

    -

    onSceneActive

    onSceneActive: () => void

    Type declaration

      • (): void
      • memberof

        Scene

        +

    onActive

    onActive: () => void

    Type declaration

      • (): void
      • memberof

        Scene

        description

        A property that is a function that gets called when the scene is switched to being visible

        since

        2.1.0

        -

        Returns void

    onSceneInactive

    onSceneInactive: () => void

    Type declaration

      • (): void
      • memberof

        Scene

        +

        Returns void

    onInactive

    onInactive: () => void

    Type declaration

      • (): void
      • memberof

        Scene

        description

        A property that is a function that gets called when the scene is switched to not being visible

        since

        2.1.0

        -

        Returns void

    physicsList

    physicsList: PhysicsList
    memberof

    Scene

    +

    Returns void

    physicsList

    physicsList: PhysicsList
    memberof

    Scene

    description

    A PhysicsList instance, holds and manages PhysicsBodies

    since

    2.0.0

    -

    physicsServer

    physicsServer: undefined | PhysicsServer
    memberof

    Scene

    +

    physicsServer

    physicsServer: undefined | PhysicsServer
    memberof

    Scene

    description

    A PhysicsServer instance, manages and updates all the physics for the Scene.PhysicsList. It is set to undefined if Game.config.physics.customTick is truthy

    since

    2.0.0

    -

    tools

    tools: { color: { convert: { hex: { toHsl: any; toRgb: any; toRgba: any }; rgb: { toHsl: any; toRgba: any }; rgba: { toHsla: any; toRgb: any } }; is: { hex: any; hsl: any; rgb: any }; random: any; randomWithAlpha: any }; loader: typeof Loader; math: { vector: typeof Vector2; clamp: any; createVector: any; lerp: any; randomFloat: any; randomInt: any }; physics: { circleToRectIntersect: any; rectToRectIntersect: any } }
    memberof

    Scene

    +

    tools

    tools: { color: { convert: { hex: { toHsl: any; toRgb: any; toRgba: any }; rgb: { toHsl: any; toRgba: any }; rgba: { toHsla: any; toRgb: any } }; is: { hex: any; hsl: any; rgb: any }; random: any; randomWithAlpha: any }; loader: typeof Loader; math: { vector: typeof Vector2; clamp: any; createVector: any; lerp: any; randomFloat: any; randomInt: any }; physics: { circleToRectIntersect: any; rectToRectIntersect: any }; staticColor: typeof Color }
    memberof

    Scene

    description

    Misc tools, contains color, physics, and math related tools

    since

    1.0.0-beta

    -

    Type declaration

    • color: { convert: { hex: { toHsl: any; toRgb: any; toRgba: any }; rgb: { toHsl: any; toRgba: any }; rgba: { toHsla: any; toRgb: any } }; is: { hex: any; hsl: any; rgb: any }; random: any; randomWithAlpha: any }
      • convert: { hex: { toHsl: any; toRgb: any; toRgba: any }; rgb: { toHsl: any; toRgba: any }; rgba: { toHsla: any; toRgb: any } }
        • hex: { toHsl: any; toRgb: any; toRgba: any }
          • toHsl:function
            • toHsl(hex: string): string
          • toRgb:function
            • toRgb(hex: string): null | string
          • toRgba:function
        • rgb: { toHsl: any; toRgba: any }
          • toHsl:function
            • toHsl(r: number, g: number, b: number): string
          • toRgba:function
        • rgba: { toHsla: any; toRgb: any }
          • toHsla:function
            • toHsla(r: string | number, g: string | number, b: string | number, a: AlphaRange): string
          • toRgb:function
            • toRgb(rgba: string): string
      • is: { hex: any; hsl: any; rgb: any }
        • hex:function
          • hex(str: string): boolean
        • hsl:function
          • hsl(str: string): boolean
        • rgb:function
          • rgb(str: string): boolean
      • random:function
        • random(): string
      • randomWithAlpha:function
    • loader: typeof Loader
    • math: { vector: typeof Vector2; clamp: any; createVector: any; lerp: any; randomFloat: any; randomInt: any }
      • vector: typeof Vector2
      • clamp:function
        • clamp(x: number, min: number, max: number): number
      • createVector:function
        • createVector(x?: number, y?: number): Vector2
      • lerp:function
        • lerp(start: number, end: number, amount: number): number
        • Parameters

          • start: number
          • end: number
          • amount: number

          Returns number

      • randomFloat:function
        • randomFloat(min: number, max: number, fixed?: number): number
        • Parameters

          • min: number
          • max: number
          • Optional fixed: number

          Returns number

      • randomInt:function
        • randomInt(min: number, max: number): number
    • physics: { circleToRectIntersect: any; rectToRectIntersect: any }
      • circleToRectIntersect:function
        • circleToRectIntersect(circle: Circle | { h: number; position: { x: number; y: number }; r: number; w: number }, rect: Sprite | Rect | { h: number; position: { x: number; y: number }; w: number }): boolean
        • Parameters

          • circle: Circle | { h: number; position: { x: number; y: number }; r: number; w: number }
          • rect: Sprite | Rect | { h: number; position: { x: number; y: number }; w: number }

          Returns boolean

      • rectToRectIntersect:function

    visible

    visible: boolean
    memberof

    Scene

    +

    Type declaration

    • color: { convert: { hex: { toHsl: any; toRgb: any; toRgba: any }; rgb: { toHsl: any; toRgba: any }; rgba: { toHsla: any; toRgb: any } }; is: { hex: any; hsl: any; rgb: any }; random: any; randomWithAlpha: any }
      • convert: { hex: { toHsl: any; toRgb: any; toRgba: any }; rgb: { toHsl: any; toRgba: any }; rgba: { toHsla: any; toRgb: any } }
        • hex: { toHsl: any; toRgb: any; toRgba: any }
          • toHsl:function
            • toHsl(hex: string): string
          • toRgb:function
            • toRgb(hex: string): null | string
          • toRgba:function
            • toRgba(hex: string, alpha: number): string
        • rgb: { toHsl: any; toRgba: any }
          • toHsl:function
            • toHsl(r: number, g: number, b: number): string
          • toRgba:function
            • toRgba(color: string, alpha: number): string
        • rgba: { toHsla: any; toRgb: any }
          • toHsla:function
            • toHsla(r: string | number, g: string | number, b: string | number, a: number): string
            • Parameters

              • r: string | number
              • g: string | number
              • b: string | number
              • a: number

              Returns string

          • toRgb:function
            • toRgb(rgba: string): string
      • is: { hex: any; hsl: any; rgb: any }
        • hex:function
          • hex(str: string): boolean
        • hsl:function
          • hsl(str: string): boolean
        • rgb:function
          • rgb(str: string): boolean
      • random:function
        • random(stroke?: string | number | boolean, strokeWidth?: number): Color
        • Parameters

          • Optional stroke: string | number | boolean
          • Optional strokeWidth: number

          Returns Color

      • randomWithAlpha:function
        • randomWithAlpha(alpha?: number): string
    • loader: typeof Loader
    • math: { vector: typeof Vector2; clamp: any; createVector: any; lerp: any; randomFloat: any; randomInt: any }
      • vector: typeof Vector2
      • clamp:function
        • clamp(x: number, min: number, max: number): number
      • createVector:function
        • createVector(x?: number, y?: number): Vector2
      • lerp:function
        • lerp(start: number, end: number, amount: number): number
        • Parameters

          • start: number
          • end: number
          • amount: number

          Returns number

      • randomFloat:function
        • randomFloat(min: number, max: number, fixed?: number): number
        • Parameters

          • min: number
          • max: number
          • Optional fixed: number

          Returns number

      • randomInt:function
        • randomInt(min: number, max: number): number
    • physics: { circleToRectIntersect: any; rectToRectIntersect: any }
      • circleToRectIntersect:function
        • circleToRectIntersect(circle: Circle | { h: number; position: { x: number; y: number }; r: number; w: number }, rect: Rect | Sprite | { h: number; position: { x: number; y: number }; w: number }): boolean
        • Parameters

          • circle: Circle | { h: number; position: { x: number; y: number }; r: number; w: number }
          • rect: Rect | Sprite | { h: number; position: { x: number; y: number }; w: number }

          Returns boolean

      • rectToRectIntersect:function
    • staticColor: typeof Color

    visible

    visible: boolean
    memberof

    Scene

    description

    The state of the Scene being visible, determines if the Scene.displayList, physicsList, update, and __tick, is being called/used in the game loop

    since

    1.0.0-beta

    -

    Methods

    __tick

    • __tick(): void

    Methods

    __tick

    • __tick(): void
    • memberof

      Scene

      description

      Calls physics server __tick method if game.config.physics.enabled is true and game.config.physics.customTick is false Do not call manually, this is called in GAME LOOP

      since

      2.0.0

      -

      Returns void

    createTimer

    • createTimer(ms: number, cb: (...args: unknown[]) => unknown, args: unknown[], repeat: number): default

    createTimer

    • createTimer(ms: number, cb: (...args: unknown[]) => unknown, args: unknown[], repeat: number): default
    • memberof

      Scene

      description

      Creates and returns a Timer instance

      since

      2.1.0

      Parameters

      • ms: number
        @@ -70,35 +70,35 @@

        Arguments to pass to the callback

      • repeat: number

        Amount of times to repeat, set to infinity to repeat forever

        -

      Returns default

    once

    • once(func: (...args: unknown[]) => unknown, run?: boolean): default

    Returns default

    once

    • once(func: (...args: unknown[]) => unknown, run?: boolean): default
    • memberof

      Scene

      description

      Runs a function once no matter if it is in a loop or not

      since

      1.0.0

      Parameters

      • func: (...args: unknown[]) => unknown

        Function to run

        -
          • (...args: unknown[]): unknown
          • Parameters

            • Rest ...args: unknown[]

            Returns unknown

      • Optional run: boolean

      Returns default

    runAmount

    • runAmount(func: (currentCount: number) => void, maxAmount: number, run?: boolean): default
      • (...args: unknown[]): unknown
      • Parameters

        • Rest ...args: unknown[]

        Returns unknown

  • Optional run: boolean
  • Returns default

    runAmount

    • runAmount(func: (currentCount: number) => void, maxAmount: number, run?: boolean): default
    • memberof

      Scene

      description

      Allows a function to only be ran a max amount of times

      since

      1.1.0

      Parameters

      • func: (currentCount: number) => void

        Function to call

          • (currentCount: number): void
          • Parameters

            • currentCount: number

            Returns void

      • maxAmount: number

        Max amount of times to allow the function to be called

        -
      • Optional run: boolean

      Returns default

    setMainCamera

    • setMainCamera(camera: Camera): void

    Returns default

    setMainCamera

    • setMainCamera(camera: Camera): void
    • memberof

      Scene

      description

      Sets a camera as the main camera

      since

      1.0.0-beta

      Parameters

      • camera: Camera

        Camera to set the main camera as

        -

      Returns void

    setVisible

    • setVisible(visible: boolean): void

    Returns void

    setVisible

    • setVisible(visible: boolean): void
    • memberof

      Scene

      description

      Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility

      Note: this calls Game.renderer.pipeline.pool to immediately update the visibility

      since

      2.1.0

      Parameters

      • visible: boolean

        What to set the visible property to

        -

      Returns void

    switchCamera

    • switchCamera(camera: Camera): void

    Returns void

    switchCamera

    • switchCamera(camera: Camera): void
    • memberof

      Scene

      description

      Switches the active camera to a passed camera

      memberof

      1.0.0-beta

      Parameters

      • camera: Camera

        Camera to switch to

        -

      Returns void

    switchToMainCamera

    • switchToMainCamera(): void

    Returns void

    switchToMainCamera

    • switchToMainCamera(): void
    • memberof

      Scene

      description

      Switches the active camera to the main camera

      since

      1.0.0-beta

      -

      Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html b/docs/classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html new file mode 100644 index 00000000..e27d91a1 --- /dev/null +++ b/docs/classes/core_sound_models_baseSoundPlayer.BaseSoundPlayer.html @@ -0,0 +1,122 @@ +BaseSoundPlayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Abstract BaseSoundPlayer class.

    +
    description

    The BaseSoundPlayer Class. WebSoundPlayer and HTMLSoundPlayer classes extend this abstract class

    +
    abstract
    since

    3.0.0

    +

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    BaseSoundPlayer

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    path

    path: string
    memberof

    BaseSoundPlayer

    +
    description

    Path to sound file

    +
    since

    3.0.0

    +

    Protected soundSprites

    soundSprites: SoundSprite[]
    memberof

    BaseSoundPlayer

    +
    description

    Audio Sprites

    +
    since

    3.0.0

    +

    Accessors

    Abstract currentTime

    • get currentTime(): number

    Abstract currentVolume

    • get currentVolume(): number

    Abstract duration

    • get duration(): number

    Abstract isLooping

    • get isLooping(): boolean

    Abstract isMuted

    • get isMuted(): boolean

    Abstract isPaused

    • get isPaused(): boolean

    Abstract isPlaying

    • get isPlaying(): boolean

    Methods

    Abstract createSoundSprite

    • createSoundSprite(key: string, startInMilliseconds: number, endInMilliseconds: number): void
    • memberof

      BaseSoundPlayer

      +
      description

      Creates a SoundSprite

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • key: string
        +

        The key of the SoundSprite

        +
      • startInMilliseconds: number
        +

        The starting time in milliseconds of when the SoundSprite starts

        +
      • endInMilliseconds: number
        +

        The ending time in milliseconds of when the SoundSprite ends

        +

      Returns void

    Abstract fadeVolume

    • fadeVolume(targetVolume: number, amount: number, ms: number, cb?: () => void): void
    • memberof

      BaseSoundPlayer

      +
      description

      Fades the volume of the audio in or out automatically and linearly

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • targetVolume: number
        +

        The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1)

        +
      • amount: number
        +

        The amount applied to the volume, (must be positive)

        +
      • ms: number
        +

        How often the amount is applied to the volume

        +
      • Optional cb: () => void
          • (): void
          • Returns void

      Returns void

    Abstract fadeVolumeAndPause

    • fadeVolumeAndPause(targetVolume: number, amount: number, ms: number, cb?: () => void): void
    • memberof

      BaseSoundPlayer

      +
      description

      Fades the volume of the audio in or out automatically and linearly, and pauses the audio

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • targetVolume: number
        +

        The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1)

        +
      • amount: number
        +

        The amount applied to the volume, (must be positive)

        +
      • ms: number
        +

        How often the amount is applied to the volume

        +
      • Optional cb: () => void
          • (): void
          • Returns void

      Returns void

    Abstract fadeVolumeAndPlay

    • fadeVolumeAndPlay(targetVolume: number, amount: number, ms: number, cb?: () => void, offset?: number, duration?: number): void
    • memberof

      BaseSoundPlayer

      +
      description

      Fades the volume of the audio in or out automatically and linearly, and plays the audio

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • targetVolume: number
        +

        The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1)

        +
      • amount: number
        +

        The amount applied to the volume, (must be positive)

        +
      • ms: number
        +

        How often the amount is applied to the volume

        +
      • Optional cb: () => void
          • (): void
          • Returns void

      • Optional offset: number
      • Optional duration: number

      Returns void

    Abstract fadeVolumeAndStop

    • fadeVolumeAndStop(targetVolume: number, amount: number, ms: number, cb?: () => void): void
    • memberof

      BaseSoundPlayer

      +
      description

      Fades the volume of the audio in or out automatically and linearly, and stops the audio

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • targetVolume: number
        +

        The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1)

        +
      • amount: number
        +

        The amount applied to the volume, (must be positive)

        +
      • ms: number
        +

        How often the amount is applied to the volume

        +
      • Optional cb: () => void
          • (): void
          • Returns void

      Returns void

    Abstract loop

    • loop(loop: boolean): void
    • memberof

      BaseSoundPlayer

      +
      description

      Sets a boolean if the audio should loop or not

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • loop: boolean
        +

        Boolean to loop the audio or not

        +

      Returns void

    Abstract mute

    • mute(): void

    Abstract pause

    • pause(): void

    Abstract play

    • play(offset?: number, duration?: number): void

    Abstract playSoundSprite

    • playSoundSprite(key: string): void
    • memberof

      BaseSoundPlayer

      +
      description

      Plays a SoundSprite based of passed key

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • key: string
        +

        The key of the SoundSprite to find and play

        +

      Returns void

    Abstract removeSoundSprite

    • removeSoundSprite(key: string): void
    • memberof

      BaseSoundPlayer

      +
      description

      Removes a SoundSprite from the soundSprites array

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • key: string
        +

        The key of the SoundSprite to find and remove

        +

      Returns void

    Abstract restart

    • restart(play?: boolean): void

    Abstract seek

    • seek(timeInMilliseconds: number, play?: boolean): void
    • memberof

      BaseSoundPlayer

      +
      description

      Seeks and plays the audio

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • timeInMilliseconds: number
        +

        The time in milliseconds to seek to

        +
      • Optional play: boolean

      Returns void

    Abstract setVolume

    • setVolume(volume: number): void
    • memberof

      BaseSoundPlayer

      +
      description

      Sets the volume of the audio

      +
      abstract
      since

      3.0.0

      +

      Parameters

      • volume: number
        +

        The volume to set the audio to, a decimal value (0.1 - 1)

        +

      Returns void

    Abstract stop

    • stop(): void
    • memberof

      BaseSoundPlayer

      +
      description

      Stops the audio, disconnects nodes for WebSoundPlayer, not an alias to BaseSoundPlayer.pause

      +
      abstract
      since

      3.0.0

      +

      Returns void

    Abstract unmute

    • unmute(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html b/docs/classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html new file mode 100644 index 00000000..f1aea933 --- /dev/null +++ b/docs/classes/core_sound_models_htmlSoundPlayer.HTMLSoundPlayer.html @@ -0,0 +1,22 @@ +HTMLSoundPlayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a HTMLSoundPlayer class.

    +
    description

    The HTMLSoundPlayer Class. Uses HTMLAudio to play sound

    +
    since

    3.0.0

    +

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    element

    element: HTMLAudioElement
    memberof

    HTMLSoundPlayer

    +
    description

    HTMLAudioElement that is playing audio

    +
    since

    3.0.0

    +

    game

    game: Game
    memberof

    BaseSoundPlayer

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    path

    path: string
    memberof

    BaseSoundPlayer

    +
    description

    Path to sound file

    +
    since

    3.0.0

    +

    Protected soundSprites

    soundSprites: SoundSprite[]
    memberof

    BaseSoundPlayer

    +
    description

    Audio Sprites

    +
    since

    3.0.0

    +

    Accessors

    currentTime

    • get currentTime(): number

    currentVolume

    • get currentVolume(): number

    duration

    • get duration(): number

    isLooping

    • get isLooping(): boolean

    isMuted

    • get isMuted(): boolean

    isPaused

    • get isPaused(): boolean

    isPlaying

    • get isPlaying(): boolean

    Methods

    createSoundSprite

    • createSoundSprite(key: string, startInMilliseconds: number, endInMilliseconds: number): void

    fadeVolume

    • fadeVolume(targetVolume: number, amount: number, ms: number, cb?: () => void): void

    fadeVolumeAndPause

    • fadeVolumeAndPause(targetVolume: number, amount: number, ms: number, cb?: () => void): void

    fadeVolumeAndPlay

    • fadeVolumeAndPlay(targetVolume: number, amount: number, ms: number, cb?: () => void, offset?: number, duration?: number): void

    fadeVolumeAndStop

    • fadeVolumeAndStop(targetVolume: number, amount: number, ms: number, cb?: () => void): void

    loop

    • loop(loop?: boolean): void

    mute

    • mute(): void

    pause

    • pause(): void

    play

    • play(offset?: number, duration?: number): void

    playSoundSprite

    • playSoundSprite(key: string): void

    removeSoundSprite

    • removeSoundSprite(key: string): void

    restart

    • restart(play?: boolean): void

    seek

    • seek(timeInMilliseconds: number, play?: boolean): void

    setVolume

    • setVolume(volume: number): void

    stop

    • stop(): void

    unmute

    • unmute(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_sound_models_misc_soundSprite.SoundSprite.html b/docs/classes/core_sound_models_misc_soundSprite.SoundSprite.html new file mode 100644 index 00000000..937b40fa --- /dev/null +++ b/docs/classes/core_sound_models_misc_soundSprite.SoundSprite.html @@ -0,0 +1,23 @@ +SoundSprite | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a SoundSprite class.

    +
    description

    The SoundSprite Class. Holds information about a clip of audio

    +
    since

    3.0.0

    +

    Hierarchy

    • SoundSprite

    Index

    Constructors

    Properties

    Methods

    Constructors

    constructor

    Properties

    end

    end: number
    memberof

    SoundSprite

    +
    description

    The ending time in milliseconds of when the SoundSprite ends

    +
    since

    3.0.0

    +

    game

    game: Game
    memberof

    SoundSprite

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    Readonly key

    key: string
    memberof

    SoundSprite

    +
    description

    Key of SoundSprite

    +
    readonly
    since

    3.0.0

    +

    soundPlayer

    soundPlayer: BaseSoundPlayer
    memberof

    SoundSprite

    +
    description

    The sound player, either HTMLSoundPlayer or WebSoundPlayer

    +
    since

    3.0.0

    +

    start

    start: number
    memberof

    SoundSprite

    +
    description

    The starting time in milliseconds of when the SoundSprite starts

    +
    since

    3.0.0

    +

    Methods

    play

    • play(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html b/docs/classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html new file mode 100644 index 00000000..b33ed6a5 --- /dev/null +++ b/docs/classes/core_sound_models_webSoundPlayer.WebSoundPlayer.html @@ -0,0 +1,38 @@ +WebSoundPlayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a WebSoundPlayer class.

    +
    description

    The WebSoundPlayer Class. Uses WebAudio API to play sound

    +
    since

    3.0.0

    +

    Hierarchy

    Index

    Constructors

    constructor

    Properties

    audioBuffer

    audioBuffer: AudioBuffer
    memberof

    WebSoundPlayer

    +
    description

    The AudioBuffer

    +
    since

    3.0.0

    +

    context

    context: AudioContext
    memberof

    WebSoundPlayer

    +
    description

    The AudioContext

    +
    since

    3.0.0

    +

    gainNode

    gainNode: GainNode
    memberof

    WebSoundPlayer

    +
    description

    The GainNode

    +
    since

    3.0.0

    +

    game

    game: Game
    memberof

    BaseSoundPlayer

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    Protected looping

    looping: boolean

    Protected muted

    muted: boolean

    path

    path: string
    memberof

    BaseSoundPlayer

    +
    description

    Path to sound file

    +
    since

    3.0.0

    +

    Protected paused

    paused: boolean

    Protected seekTo

    seekTo: undefined | number

    Protected soundSprites

    soundSprites: SoundSprite[]
    memberof

    BaseSoundPlayer

    +
    description

    Audio Sprites

    +
    since

    3.0.0

    +

    sourceNode

    sourceNode: AudioBufferSourceNode
    memberof

    WebSoundPlayer

    +
    description

    The AudioBufferSourceNode

    +
    since

    3.0.0

    +

    Protected volume

    volume: number

    Accessors

    currentTime

    • get currentTime(): number

    currentVolume

    • get currentVolume(): number

    duration

    • get duration(): number

    isLooping

    • get isLooping(): boolean

    isMuted

    • get isMuted(): boolean

    isPaused

    • get isPaused(): boolean

    isPlaying

    • get isPlaying(): boolean

    Methods

    createSoundSprite

    • createSoundSprite(key: string, startInMilliseconds: number, endInMilliseconds: number): void

    fadeVolume

    • fadeVolume(targetVolume: number, amount: number, ms: number, cb?: () => void): void

    fadeVolumeAndPause

    • fadeVolumeAndPause(targetVolume: number, amount: number, ms: number, cb?: () => void): void

    fadeVolumeAndPlay

    • fadeVolumeAndPlay(targetVolume: number, amount: number, ms: number, cb?: () => void, offset?: number, duration?: number): void

    fadeVolumeAndStop

    • fadeVolumeAndStop(targetVolume: number, amount: number, ms: number, cb?: () => void): void

    loop

    • loop(loop: boolean): void

    mute

    • mute(): void

    pause

    • pause(): void

    play

    • play(offset?: number, duration?: number): void

    playSoundSprite

    • playSoundSprite(key: string): void

    recreateNodes

    • recreateNodes(): void
    • memberof

      WebSoundPlayer

      +
      description

      Resets context, sourceNode, gainNode. Reconnects gainNode and sourceNode. Resets sourceNode buffer

      +
      abstract
      since

      3.0.0

      +

      Returns void

    removeSoundSprite

    • removeSoundSprite(key: string): void

    restart

    • restart(play?: boolean): void

    seek

    • seek(timeInMilliseconds: number, play?: boolean): void

    setVolume

    • setVolume(volume: number): void

    stop

    • stop(): void

    unmute

    • unmute(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_sound_sound.Sound.html b/docs/classes/core_sound_sound.Sound.html new file mode 100644 index 00000000..33a7d783 --- /dev/null +++ b/docs/classes/core_sound_sound.Sound.html @@ -0,0 +1,20 @@ +Sound | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a Sound class.

    +
    description

    The Sound Class. Uses either the DuckEngine WebAudio or HTMLAudio sound player classes to play audio

    +
    since

    3.0.0

    +

    Hierarchy

    • Sound

    Index

    Constructors

    constructor

    Properties

    game

    game: Game
    memberof

    Sound

    +
    description

    Game instance

    +
    since

    3.0.0

    +

    pathOrKey

    pathOrKey: string
    memberof

    Sound

    +
    description

    Path to sound file for HTMLSoundPlayer OR the key of a preloaded AudioBuffer for WebSoundPlayer

    +
    since

    3.0.0

    +

    scene

    scene: Scene
    memberof

    Sound

    +
    description

    Scene instance

    +
    since

    3.0.0

    +

    soundPlayer

    soundPlayer: BaseSoundPlayer
    memberof

    Sound

    +
    description

    The DuckEngine sound player being used

    +
    since

    3.0.0

    +

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_sound_soundPlayer.SoundPlayer.html b/docs/classes/core_sound_soundPlayer.SoundPlayer.html deleted file mode 100644 index 76bf4f39..00000000 --- a/docs/classes/core_sound_soundPlayer.SoundPlayer.html +++ /dev/null @@ -1,59 +0,0 @@ -SoundPlayer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a SoundPlayer class.

    -
    description

    The SoundPlayer Class. Plays audio

    -
    since

    1.0.0-beta

    -

    Hierarchy

    • SoundPlayer

    Index

    Constructors

    constructor

    Properties

    element

    element: HTMLAudioElement

    path

    path: string

    Protected sprites

    sprites: Duck.Types.Sound.Sprite[]

    Accessors

    duration

    • get duration(): number

    isMuted

    • get isMuted(): boolean

    isPlaying

    • get isPlaying(): boolean

    volume

    • get volume(): number

    Methods

    loop

    • loop(loop?: boolean): void
    • memberof

      Sound

      -
      description

      Sets the loop of the audio

      -
      since

      2.1.0

      -

      Parameters

      • loop: boolean = true

      Returns void

    mute

    • mute(): void

    pause

    • pause(): void

    play

    • play(): void

    playSprite

    • playSprite(key: string): void
    • memberof

      Sound

      -
      description

      Plays a sound sprite based on the key

      -
      since

      1.0.0-beta

      -

      Parameters

      • key: string
        -

        Key of the sound sprite

        -

      Returns void

    restart

    • restart(): void

    seek

    • seek(timeInSeconds: number): void
    • memberof

      Sound

      -
      description

      Seeks the audio

      -
      since

      1.0.0-beta

      -

      Parameters

      • timeInSeconds: number
        -

        Time in seconds to seek to

        -

      Returns void

    setPath

    • setPath(path: string): void
    • memberof

      Sound

      -
      description

      Sets the audio src/path

      -
      since

      1.0.0-beta

      -

      Parameters

      • path: string
        -

        Audio src/path

        -

      Returns void

    setVolume

    • setVolume(volume: number): void
    • memberof

      Sound

      -
      description

      Sets the volume of the audio

      -
      since

      1.0.0-beta

      -

      Parameters

      • volume: number

      Returns void

    stop

    • stop(): void

    unmute

    • unmute(): void

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_storage_cacheManager.CacheManager.html b/docs/classes/core_storage_cacheManager.CacheManager.html index b8bf6dcb..ae22512c 100644 --- a/docs/classes/core_storage_cacheManager.CacheManager.html +++ b/docs/classes/core_storage_cacheManager.CacheManager.html @@ -1,45 +1,45 @@ -CacheManager | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a CacheManager

    +CacheManager | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a CacheManager

    description

    The CacheManager Class. Manages Cached items in memory and in storage

    since

    2.0.0

    -

    Hierarchy

    • CacheManager

    Index

    Constructors

    constructor

    Hierarchy

    • CacheManager

    Index

    Constructors

    constructor

    Properties

    Protected cache

    cache: {}

    Type declaration

    • [key: string]: string

    storageIdentifier

    storageIdentifier: string
    memberof

    CacheManager

    +

    Returns CacheManager

    Properties

    Protected cache

    cache: {}

    Type declaration

    • [key: string]: string

    storageIdentifier

    storageIdentifier: string
    memberof

    CacheManager

    description

    Added start of every key that is stored in the localStorage, defaults to "DuckEngine_CacheManager_${key}"

    since

    2.0.0

    -

    Accessors

    entries

    • get entries(): {}

    Accessors

    entries

    • get entries(): {}
    • memberof

      CacheManager

      description

      Returns the memory-cache entries as an object, calls CacheManager.sync

      since

      2.0.0

      -

      Returns {}

      • [key: string]: string

    Methods

    delete

    • delete(name: string): void

    Methods

    delete

    • delete(name: string): void
    • memberof

      CacheManager

      description

      Deletes a Key-Value pair from the memory-cache and storage

      since

      2.0.0

      Parameters

      • name: string

        Name/Key to use to delete the pair

        -

      Returns void

    each

    • each(cb: (key: string, value: string) => any): void

    Returns void

    each

    • each(cb: (key: string, value: string) => any): void
    • memberof

      CacheManager

      description

      Loops through each entry in the memory-cache

      since

      2.0.0

      Parameters

      • cb: (key: string, value: string) => any

        Callback function

        -
          • (key: string, value: string): any
          • Parameters

            • key: string
            • value: string

            Returns any

      Returns void

    get

    • get(name: string): undefined | null | string
      • (key: string, value: string): any
      • Parameters

        • key: string
        • value: string

        Returns any

    Returns void

    get

    • get(name: string): undefined | null | string
    • memberof

      CacheManager

      description

      Gets a value from a Name/Key from the storage or memory-cache

      since

      2.0.0

      Parameters

      • name: string

        Name/Key to get the value from

        -

      Returns undefined | null | string

    has

    • has(name: string): boolean

    Returns undefined | null | string

    has

    • has(name: string): boolean
    • memberof

      CacheManager

      description

      Gets a Key-Value pair from the storage or memory-cache and returns based on if it exists or not

      since

      2.0.0

      Parameters

      • name: string

        Name/Key to save the value to

        -

      Returns boolean

    keys

    • keys(): string[]

    Returns boolean

    keys

    • keys(): string[]

    set

    • set(name: string, value: string): void

    set

    • set(name: string, value: string): void
    • memberof

      CacheManager

      description

      Sets a Key-Value pair in the memory-cache and storage

      since

      2.0.0

      Parameters

      • name: string

        Name/Key to save the value to

      • value: string

        Value to save to the Name/Key

        -

      Returns void

    sync

    • sync(): void

    values

    • values(): string[]

    Returns void

    sync

    • sync(): void

    values

    • values(): string[]

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns string[]

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Protected property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_texture_texture.Texture.html b/docs/classes/core_texture_texture.Texture.html index a7786dd3..db490197 100644 --- a/docs/classes/core_texture_texture.Texture.html +++ b/docs/classes/core_texture_texture.Texture.html @@ -1,67 +1,67 @@ -Texture | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Texture

    +Texture | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    classdesc

    Creates a DuckEngine Texture

    description

    The Texture Class. Stores images and colors in a class

    since

    2.0.0

    Type parameters

    Hierarchy

    Index

    Constructors

    constructor

    • new Texture<type>(type: Duck.Types.Texture.Type, texture: type extends "image" ? HTMLImageElement : type extends "either" ? string | HTMLImageElement : string, w: number, h: number): Texture<type>

    Hierarchy

    Index

    Constructors

    constructor

    • new Texture<type>(type: Duck.Types.Texture.Type, texture: type extends "image" ? HTMLImageElement : type extends "either" ? HTMLImageElement | Color : Color, w: number, h: number): Texture<type>

    Properties

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    +

    Returns Texture<type>

    Properties

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    description

    The data type of texture, 'sheet' | 'base' | 'atlas' | 'list'

    since

    2.1.0

    -

    Readonly id

    id: string
    memberof

    TextureBase

    +

    Readonly id

    id: string
    memberof

    TextureBase

    description

    The unique identifier for the texture

    since

    2.1.0

    -

    scale

    scale: Vector2
    memberof

    Texture

    +

    scale

    scale: Vector2
    memberof

    Texture

    description

    The scale of the texture

    since

    2.1.0

    -

    texture

    texture: type extends "image" ? HTMLImageElement : type extends "either" ? string | HTMLImageElement : string
    memberof

    TextureBase

    +

    texture

    texture: type extends "image" ? HTMLImageElement : type extends "either" ? HTMLImageElement | Color : Color
    memberof

    TextureBase

    description

    The texture itself, can be an image or color

    since

    2.1.0

    -

    type

    memberof

    TextureBase

    +

    type

    memberof

    TextureBase

    description

    The type of texture source, 'image' | 'color' | 'either'

    since

    2.1.0

    -

    Methods

    setFillColor

    • setFillColor(color: string | number): void

    Methods

    setFillColor

    • setFillColor(color: string | number): void

    setImagePath

    • setImagePath(imagePath: string): void

    Returns void

    setImagePath

    • setImagePath(imagePath: string): void

    setScale

    Returns void

    setScale

    Static fromColor

    • fromColor(color: string, w: number, h: number): TextureBase<"color">

    Returns Vector2

    Static fromColor

    Static fromEither

    • fromEither(fillColorOrIMGPath: string, w: number, h: number): TextureBase<"either">

    Returns TextureBase<"color">

    Static fromEither

    • fromEither(fillColorOrIMGPath: string | Color, w: number, h: number): TextureBase<"either">
    • memberof

      TextureBase

      description

      Creates a new TextureBase instance from a color or an image path

      static
      since

      2.1.0

      -

      Parameters

      • fillColorOrIMGPath: string
        +

        Parameters

        • fillColorOrIMGPath: string | Color

          Color or Image path

        • w: number

          Width

        • h: number

          Height

          -

        Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">

    Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns TextureBase<"image">

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_texture_textureAtlas.TextureAtlas.html b/docs/classes/core_texture_textureAtlas.TextureAtlas.html index e736fa7b..86d593f6 100644 --- a/docs/classes/core_texture_textureAtlas.TextureAtlas.html +++ b/docs/classes/core_texture_textureAtlas.TextureAtlas.html @@ -1,52 +1,52 @@ -TextureAtlas | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    • new TextureAtlas(textureKey: string, jsonKey: string, w: number, h: number, game: Game, scene: Scene): TextureAtlas

    Properties

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    +TextureAtlas | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    • new TextureAtlas(textureKey: string, jsonKey: string, w: number, h: number, game: Game, scene: Scene): TextureAtlas

    Properties

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    description

    The data type of texture, 'sheet' | 'base' | 'atlas' | 'list'

    since

    2.1.0

    -

    game

    game: Game

    Readonly id

    id: string
    memberof

    TextureBase

    +

    game

    game: Game

    Readonly id

    id: string
    memberof

    TextureBase

    description

    The unique identifier for the texture

    since

    2.1.0

    -

    json

    scale

    scale: Vector2
    memberof

    Texture

    +

    json

    scale

    scale: Vector2
    memberof

    Texture

    description

    The scale of the texture

    since

    2.1.0

    -

    scene

    scene: Scene

    texture

    texture: HTMLImageElement
    memberof

    TextureBase

    +

    scene

    scene: Scene

    texture

    texture: HTMLImageElement
    memberof

    TextureBase

    description

    The texture itself, can be an image or color

    since

    2.1.0

    -

    type

    memberof

    TextureBase

    +

    type

    memberof

    TextureBase

    description

    The type of texture source, 'image' | 'color' | 'either'

    since

    2.1.0

    -

    Methods

    get

    • get(key: string): undefined | Texture<"image">

    Protected parseJSON

    • parseJSON(): void

    setFillColor

    • setFillColor(color: string | number): void

    Methods

    get

    • get(key: string): undefined | Texture<"image">

    Protected parseJSON

    • parseJSON(): void

    setFillColor

    • setFillColor(color: string | number): void

    setImagePath

    • setImagePath(imagePath: string): void

    Returns void

    setImagePath

    • setImagePath(imagePath: string): void

    setScale

    Returns void

    setScale

    Protected validateJSON

    • validateJSON(): void

    Static fromColor

    • fromColor(color: string, w: number, h: number): TextureBase<"color">

    Returns Vector2

    Protected validateJSON

    • validateJSON(): void

    Static fromColor

    Static fromEither

    • fromEither(fillColorOrIMGPath: string, w: number, h: number): TextureBase<"either">

    Returns TextureBase<"color">

    Static fromEither

    • fromEither(fillColorOrIMGPath: string | Color, w: number, h: number): TextureBase<"either">
    • memberof

      TextureBase

      description

      Creates a new TextureBase instance from a color or an image path

      static
      since

      2.1.0

      -

      Parameters

      • fillColorOrIMGPath: string
        +

        Parameters

        • fillColorOrIMGPath: string | Color

          Color or Image path

        • w: number

          Width

        • h: number

          Height

          -

        Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">

    Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns TextureBase<"image">

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method
    • Protected method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_texture_textureBase.TextureBase.html b/docs/classes/core_texture_textureBase.TextureBase.html index b2ef56f2..e4a740e2 100644 --- a/docs/classes/core_texture_textureBase.TextureBase.html +++ b/docs/classes/core_texture_textureBase.TextureBase.html @@ -1,82 +1,88 @@ -TextureBase | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Type parameters

    Hierarchy

    Index

    Constructors

    constructor

    • new TextureBase<type>(type: "image", dataType: DataType, texture: HTMLImageElement, w: number, h: number): TextureBase<type>
    • new TextureBase<type>(type: "color", dataType: DataType, texture: string, w: number, h: number): TextureBase<type>
    • new TextureBase<type>(type: "either", dataType: DataType, texture: string | HTMLImageElement, w: number, h: number): TextureBase<type>

    Returns TextureBase<type>

  • description

    Creates a color texture

    since

    2.1.0

    Type parameters

    Parameters

    • type: "color"

      Texture type

      -
    • dataType: DataType
    • texture: string
      +
    • dataType: DataType
      +

      Texture DataType, ex: sheet, base, atlas

      +
    • texture: Color

      Texture source

    • w: number

      Width of texture

    • h: number

      Height of texture

      -

    Returns TextureBase<type>

  • description

    Creates a color or image texture

    +
  • Returns TextureBase<type>

  • description

    Creates a color or image texture

    since

    2.1.0

    Type parameters

    Parameters

    • type: "either"

      Texture type

      -
    • dataType: DataType
    • texture: string | HTMLImageElement
      +
    • dataType: DataType
      +

      Texture DataType, ex: sheet, base, atlas

      +
    • texture: string | HTMLImageElement | Color

      Texture source

    • w: number

      Width of texture

    • h: number

      Height of texture

      -

    Returns TextureBase<type>

  • Properties

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    +

    Returns TextureBase<type>

    Properties

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    description

    The data type of texture, 'sheet' | 'base' | 'atlas' | 'list'

    since

    2.1.0

    -

    Readonly id

    id: string
    memberof

    TextureBase

    +

    Readonly id

    id: string
    memberof

    TextureBase

    description

    The unique identifier for the texture

    since

    2.1.0

    -

    scale

    scale: Vector2
    memberof

    Texture

    +

    scale

    scale: Vector2
    memberof

    Texture

    description

    The scale of the texture

    since

    2.1.0

    -

    texture

    texture: type extends "image" ? HTMLImageElement : type extends "either" ? string | HTMLImageElement : string
    memberof

    TextureBase

    +

    texture

    texture: type extends "image" ? HTMLImageElement : type extends "either" ? HTMLImageElement | Color : Color
    memberof

    TextureBase

    description

    The texture itself, can be an image or color

    since

    2.1.0

    -

    type

    memberof

    TextureBase

    +

    type

    memberof

    TextureBase

    description

    The type of texture source, 'image' | 'color' | 'either'

    since

    2.1.0

    -

    Methods

    setFillColor

    • setFillColor(color: string | number): void

    Methods

    setFillColor

    • setFillColor(color: string | number): void
    • memberof

      Texture

      description

      Sets the Texture color if the type is color

      since

      2.1.0

      Parameters

      • color: string | number

        New color of the texture

        -

      Returns void

    setImagePath

    • setImagePath(imagePath: string): void

    Returns void

    setImagePath

    • setImagePath(imagePath: string): void
    • memberof

      Texture

      description

      Sets the Texture Image Path if the type is image

      since

      2.1.0

      Parameters

      • imagePath: string

        New imagePath of the texture

        -

      Returns void

    setScale

    Returns void

    setScale

    Static fromColor

    • fromColor(color: string, w: number, h: number): TextureBase<"color">

    Returns Vector2

    Static fromColor

    • memberof

      TextureBase

      description

      Creates a new TextureBase instance from a color

      static
      since

      2.1.0

      -

      Parameters

      • color: string
        +

        Parameters

        • color: Color

          Color

        • w: number

          Width

        • h: number

          Height

          -

        Returns TextureBase<"color">

    Static fromEither

    • fromEither(fillColorOrIMGPath: string, w: number, h: number): TextureBase<"either">

    Returns TextureBase<"color">

    Static fromEither

    • fromEither(fillColorOrIMGPath: string | Color, w: number, h: number): TextureBase<"either">
    • memberof

      TextureBase

      description

      Creates a new TextureBase instance from a color or an image path

      static
      since

      2.1.0

      -

      Parameters

      • fillColorOrIMGPath: string
        +

        Parameters

        • fillColorOrIMGPath: string | Color

          Color or Image path

        • w: number

          Width

        • h: number

          Height

          -

        Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">

    Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">
    • memberof

      TextureBase

      description

      Creates a new TextureBase instance from an image path

      static
      since

      2.1.0

      Parameters

      • imgpath: string
        @@ -85,4 +91,4 @@

        Width

      • h: number

        Height

        -

      Returns TextureBase<"image">

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Static method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns TextureBase<"image">

    Legend

    • Class
    • Class with type parameter
    • Property
    • Method
    • Namespace
    • Variable
    • Function
    • Static method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/classes/core_texture_textureSheet.TextureSheet.html b/docs/classes/core_texture_textureSheet.TextureSheet.html index 5540bfbc..a1281321 100644 --- a/docs/classes/core_texture_textureSheet.TextureSheet.html +++ b/docs/classes/core_texture_textureSheet.TextureSheet.html @@ -1,52 +1,52 @@ -TextureSheet | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    • new TextureSheet(texture: HTMLImageElement, frameWidth: number, frameHeight: number, rows: number, cols: number): TextureSheet

    Properties

    Readonly cols

    cols: undefined | number

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    +TextureSheet | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Constructors

    constructor

    • new TextureSheet(texture: HTMLImageElement, frameWidth: number, frameHeight: number, rows: number, cols: number): TextureSheet

    Properties

    Readonly cols

    cols: undefined | number

    Readonly dataType

    dataType: DataType
    memberof

    TextureBase

    description

    The data type of texture, 'sheet' | 'base' | 'atlas' | 'list'

    since

    2.1.0

    -

    Readonly frameHeight

    frameHeight: undefined | number

    Readonly frameWidth

    frameWidth: undefined | number

    Readonly id

    id: string
    memberof

    TextureBase

    +

    Readonly frameHeight

    frameHeight: undefined | number

    Readonly frameWidth

    frameWidth: undefined | number

    Readonly id

    id: string
    memberof

    TextureBase

    description

    The unique identifier for the texture

    since

    2.1.0

    -

    Readonly rows

    rows: undefined | number

    scale

    scale: Vector2
    memberof

    Texture

    +

    Readonly rows

    rows: undefined | number

    scale

    scale: Vector2
    memberof

    Texture

    description

    The scale of the texture

    since

    2.1.0

    -

    texture

    texture: HTMLImageElement
    memberof

    TextureBase

    +

    texture

    texture: HTMLImageElement
    memberof

    TextureBase

    description

    The texture itself, can be an image or color

    since

    2.1.0

    -

    type

    memberof

    TextureBase

    +

    type

    memberof

    TextureBase

    description

    The type of texture source, 'image' | 'color' | 'either'

    since

    2.1.0

    -

    Methods

    setFillColor

    • setFillColor(color: string | number): void

    Methods

    setFillColor

    • setFillColor(color: string | number): void

    setImagePath

    • setImagePath(imagePath: string): void

    Returns void

    setImagePath

    • setImagePath(imagePath: string): void

    setScale

    Returns void

    setScale

    Static fromColor

    • fromColor(color: string, w: number, h: number): TextureBase<"color">

    Returns Vector2

    Static fromColor

    Static fromEither

    • fromEither(fillColorOrIMGPath: string, w: number, h: number): TextureBase<"either">

    Returns TextureBase<"color">

    Static fromEither

    • fromEither(fillColorOrIMGPath: string | Color, w: number, h: number): TextureBase<"either">
    • memberof

      TextureBase

      description

      Creates a new TextureBase instance from a color or an image path

      static
      since

      2.1.0

      -

      Parameters

      • fillColorOrIMGPath: string
        +

        Parameters

        • fillColorOrIMGPath: string | Color

          Color or Image path

        • w: number

          Width

        • h: number

          Height

          -

        Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">

    Returns TextureBase<"either">

    Static fromTexture

    • fromTexture(imgpath: string, w: number, h: number): TextureBase<"image">

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns TextureBase<"image">

    Legend

    • Class
    • Class with type parameter
    • Constructor
    • Property
    • Namespace
    • Variable
    • Function
    • Inherited property
    • Inherited method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/enums/index.Duck.Types.GamepadInput.PlaystationMapping.html b/docs/enums/index.Duck.Types.GamepadInput.PlaystationMapping.html index 8564def5..a7ddda0f 100644 --- a/docs/enums/index.Duck.Types.GamepadInput.PlaystationMapping.html +++ b/docs/enums/index.Duck.Types.GamepadInput.PlaystationMapping.html @@ -1 +1 @@ -PlaystationMapping | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Enumeration members

    CIRCLE

    CIRCLE = 1

    D_PAD_DOWN

    D_PAD_DOWN = 13

    D_PAD_LEFT

    D_PAD_LEFT = 14

    D_PAD_RIGHT

    D_PAD_RIGHT = 15

    D_PAD_UP

    D_PAD_UP = 12

    L1

    L1 = 4

    L2

    L2 = 6

    LEFT_STICK_PRESS

    LEFT_STICK_PRESS = 10

    LOGO

    LOGO = 16

    OPTIONS

    OPTIONS = 9

    R1

    R1 = 5

    R2

    R2 = 7

    RIGHT_STICK_PRESS

    RIGHT_STICK_PRESS = 11

    SHARE

    SHARE = 8

    SQUARE

    SQUARE = 2

    TRIANGLE

    TRIANGLE = 3

    X

    X = 0

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +PlaystationMapping | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Enumeration members

    CIRCLE

    CIRCLE = 1

    D_PAD_DOWN

    D_PAD_DOWN = 13

    D_PAD_LEFT

    D_PAD_LEFT = 14

    D_PAD_RIGHT

    D_PAD_RIGHT = 15

    D_PAD_UP

    D_PAD_UP = 12

    L1

    L1 = 4

    L2

    L2 = 6

    LEFT_STICK_PRESS

    LEFT_STICK_PRESS = 10

    LOGO

    LOGO = 16

    OPTIONS

    OPTIONS = 9

    R1

    R1 = 5

    R2

    R2 = 7

    RIGHT_STICK_PRESS

    RIGHT_STICK_PRESS = 11

    SHARE

    SHARE = 8

    SQUARE

    SQUARE = 2

    TRIANGLE

    TRIANGLE = 3

    X

    X = 0

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/enums/index.Duck.Types.GamepadInput.XboxMapping.html b/docs/enums/index.Duck.Types.GamepadInput.XboxMapping.html index 0d46cf1c..c9384729 100644 --- a/docs/enums/index.Duck.Types.GamepadInput.XboxMapping.html +++ b/docs/enums/index.Duck.Types.GamepadInput.XboxMapping.html @@ -1 +1 @@ -XboxMapping | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Enumeration members

    A

    A = 0

    B

    B = 1

    D_PAD_DOWN

    D_PAD_DOWN = 13

    D_PAD_LEFT

    D_PAD_LEFT = 14

    D_PAD_RIGHT

    D_PAD_RIGHT = 15

    D_PAD_UP

    D_PAD_UP = 12

    LB

    LB = 4

    LEFT_STICK_PRESS

    LEFT_STICK_PRESS = 10

    LOGO

    LOGO = 16

    LT

    LT = 6

    RB

    RB = 5

    RIGHT_STICK_PRESS

    RIGHT_STICK_PRESS = 11

    RT

    RT = 7

    SHOW_ADDRESS_BAR

    SHOW_ADDRESS_BAR = 8

    SHOW_MENU

    SHOW_MENU = 9

    X

    X = 2

    Y

    Y = 3

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +XboxMapping | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Enumeration members

    A

    A = 0

    B

    B = 1

    D_PAD_DOWN

    D_PAD_DOWN = 13

    D_PAD_LEFT

    D_PAD_LEFT = 14

    D_PAD_RIGHT

    D_PAD_RIGHT = 15

    D_PAD_UP

    D_PAD_UP = 12

    LB

    LB = 4

    LEFT_STICK_PRESS

    LEFT_STICK_PRESS = 10

    LOGO

    LOGO = 16

    LT

    LT = 6

    RB

    RB = 5

    RIGHT_STICK_PRESS

    RIGHT_STICK_PRESS = 11

    RT

    RT = 7

    SHOW_ADDRESS_BAR

    SHOW_ADDRESS_BAR = 8

    SHOW_MENU

    SHOW_MENU = 9

    X

    X = 2

    Y

    Y = 3

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/global/README.md b/docs/global/README.md index 25bfbf33..550a5ce3 100644 --- a/docs/global/README.md +++ b/docs/global/README.md @@ -1,12 +1,12 @@ -# Global - -Global Assets and more. - -## Files - -1. Logo.png - Logo -2. Logo.xcf - Gimp save file - -## Attribution - -Cube (Cube found in logo) by JosÊ Manuel de LaÃĄ from the Noun Project. +# Global + +Global Assets and more. + +## Files + +1. Logo.png - Logo +2. Logo.xcf - Gimp save file + +## Attribution + +Cube (Cube found in logo) by JosÊ Manuel de LaÃĄ from the Noun Project. diff --git a/docs/index.html b/docs/index.html index 5b961035..c5a2e2b3 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,15 +1,14 @@ -DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    DuckEngine - v2.1.0

    +DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    DuckEngine - v3.0.0-dev

    DuckEngine

    -

    v2.0.0 released! Changelog

    +

    v3.0.0 released! Changelog

    | Docs | Wiki | Getting Started | Demos | Download |

    -

    Build Badge -Release Badge -License Badge -wakatime -Lint Badge -Format Badge +

    Build Badge +Release Badge +License Badge +Lint Badge +Format Badge code style: prettier

    A 2D Game Engine for the web.

    @@ -17,7 +16,7 @@

    DuckEngine

    Features

      -
    • Customizable Hitbox Based Physics Engine
    • +
    • Fast & Advanced Physics Engine // DuckPhysics
    • Multiple Scenes
    • Fast & Performant
    • Sprites & Spritesheets
    • @@ -25,7 +24,6 @@

      Features

    • Plugins & PluginManager
    • Multiple Cameras with Effects
    • Animations & State Machines & Cutscenes
    • -
    • Hitboxes and Colliders
    • Keyboard, and Mouse Inputs
    • DPR / Mobile Scaling
    • Advanced Particle System
    • @@ -56,34 +54,6 @@

      Browser Requirements

    • Browser supports Canvas APIs
    • - -

      Rankings

      -
      -
        -
      1. Chromium Based Browsers, includes Chrome, Opera, Edge, Vivaldi, and Brave
      2. -
      3. Safari
      4. -
      5. Firefox | Bugs
      6. -
      - - -

      Recommendation

      -
      -
        -
      • Google Chrome or any other Chromium based browser
      • -
      - - -

      Browser Bugs

      -
      - - -

      Firefox Bugs

      -
      -
        -
      • More stuttering than Chromium Browsers and Safari.
      • -
      • Garbage collection occurs more often than Safari and Chromium Browsers. (Causes very minor and not noticeable stutters.)
      • -
      -

      Download

      @@ -114,8 +84,8 @@

      CDN

      1. Setup an asset bundler like webpack or parcel.
      2. Import DuckEngine from URL
      3. Read the docs.
      4. @@ -153,7 +123,7 @@

        How to use with Typescript

      5. Setup webpack/parcel and tsconfig.
      6. Import DuckEngine and Duck for types.
      -

      Not working ? Add the following to your tsconfig.json

      +

      Not working? Add the following to your tsconfig.json

      {
      "typeRoots": [
      "./node_modules/@types",
      "path_to_duckengine_index.d.ts"
      ],
      "types": [
      "DuckEngine"
      ]
      }
      @@ -170,8 +140,17 @@

      Typescript Example

      Developers' Guide

      - -

      Requirements

      +
      +

      Build Requirements

      +
      +
        +
      • Must be on a linux machine or WSL
      • +
      • Must be able to run shell scripts for building
      • +
      • Must have typescript and yarn installed to path
      • +
      + + +

      Contributing Requirements

      1. Knowledge of TypeScript, Git, and HTML Canvas.
      2. @@ -187,8 +166,8 @@

        How to contribute

      3. Fork the repository and create a new branch following the branch guidelines.
      4. Clone the fork to your device.
      5. CD (change directories) into the cloned directory.
      6. -
      7. Run yarn upgrade.
      8. -
      9. Run yarn run build or ctrl + shift + b for vscode users.
      10. +
      11. Run yarn.
      12. +
      13. Run yarn build or ctrl + shift + b for vscode users.
      14. Make your changes.
      15. Test your changes on codesandbox by forking this codesandbox and updating the duckengine.js file. (Or any other way you would like to test it.)
      16. Create a pull request.
      17. @@ -209,8 +188,8 @@

        Dev Scripts

      18. yarn run lint - Uses ESLint to lint all files in the src directory.
      19. yarn run lint:watch - Watches for changes and fixes all fixable issues found by ESLint.
      20. yarn run lint:fix - Uses ESLint to fix all fixable issues found by ESLint.
      21. -
      22. yarn run tree - Prints out all files and directories used in readme.
      23. -
      24. yarn run serve - Serves the docs on :8080.
      25. +
      26. yarn run tree - Prints out all files and directories.
      27. +
      28. yarn run serve - Serves the documentation on :8080.
      29. yarn run checkout - Runs the checkout shell script with bash. Run before thinking about publishing a release.
      @@ -219,7 +198,7 @@

      Branches

      1. main - main branch
      2. -
      3. staging - stage changes to this branch
      4. +
      5. *-staging - stage changes to this branch
      @@ -261,4 +240,4 @@

      License

      Author

      Bleart Emini

      -

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Animation.Config.html b/docs/interfaces/index.Duck.Types.Animation.Config.html index 8eca9681..f27e72a5 100644 --- a/docs/interfaces/index.Duck.Types.Animation.Config.html +++ b/docs/interfaces/index.Duck.Types.Animation.Config.html @@ -1,24 +1,24 @@ -Config | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Optional delay

    delay?: number
    memberof

    Duck.Types.Animation.Config

    +Config | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Optional delay

    delay?: number
    memberof

    Duck.Types.Animation.Config

    description

    The amount of milliseconds that is waited for before playing the animation, optional -> defaults: 0

    since

    2.0.0

    -

    frameRate

    frameRate: number
    memberof

    Duck.Types.Animation.Config

    +

    frameRate

    frameRate: number
    memberof

    Duck.Types.Animation.Config

    description

    The frame rate of the animation

    since

    2.0.0

    -

    frames

    frames: FrameBase[]
    memberof

    Duck.Types.Animation.Config

    +

    frames

    frames: FrameBase[]
    memberof

    Duck.Types.Animation.Config

    description

    Frames of the Animation, objects that are later converted to AnimationFrame

    since

    2.0.0

    -

    key

    key: string
    memberof

    Duck.Types.Animation.Config

    +

    key

    key: string
    memberof

    Duck.Types.Animation.Config

    description

    Key / Name of Animation

    since

    2.0.0

    -

    Optional repeat

    repeat?: number
    memberof

    Duck.Types.Animation.Config

    +

    Optional repeat

    repeat?: number
    memberof

    Duck.Types.Animation.Config

    description

    Determines the amount of times the Animation loops, optional -> defaults: 1

    since

    2.0.0

    -

    Optional useDelta

    useDelta?: boolean
    memberof

    Duck.Types.Animation.Config

    +

    Optional useDelta

    useDelta?: boolean
    memberof

    Duck.Types.Animation.Config

    description

    Determines if the Animation timers count by the Game.deltaTime, set to true if used in the Scene.update method, and false otherwise, optional -> defaults: false

    since

    2.0.0

    -

    Optional yoyo

    yoyo?: boolean
    memberof

    Duck.Types.Animation.Config

    +

    Optional yoyo

    yoyo?: boolean
    memberof

    Duck.Types.Animation.Config

    description

    Determines if the animation plays in the opposite direction of its current direction and switches on end, like a yoyo optional -> defaults: false

    since

    2.0.0

    -

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Animation.FrameBase.html b/docs/interfaces/index.Duck.Types.Animation.FrameBase.html index f90c592e..63df5eab 100644 --- a/docs/interfaces/index.Duck.Types.Animation.FrameBase.html +++ b/docs/interfaces/index.Duck.Types.Animation.FrameBase.html @@ -1 +1 @@ -FrameBase | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • FrameBase

    Index

    Properties

    Properties

    col

    col: number

    row

    row: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +FrameBase | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • FrameBase

    Index

    Properties

    Properties

    col

    col: number

    row

    row: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Camera.CullingOptions.html b/docs/interfaces/index.Duck.Types.Camera.CullingOptions.html index 5d3c83df..047c5f6a 100644 --- a/docs/interfaces/index.Duck.Types.Camera.CullingOptions.html +++ b/docs/interfaces/index.Duck.Types.Camera.CullingOptions.html @@ -1,10 +1,10 @@ -CullingOptions | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • CullingOptions

    Index

    Properties

    Optional modifyPhysicsEnable

    modifyPhysicsEnable?: boolean
    memberof

    Duck.Types.Camera.CullingOptions

    +CullingOptions | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • CullingOptions

    Index

    Properties

    Optional modifyPhysicsEnable

    modifyPhysicsEnable?: boolean
    memberof

    Duck.Types.Camera.CullingOptions

    description

    Determines if the enabled property of PhysicsBodies will be modified base on if the renderable is culled

    default

    true

    since

    2.1.0

    -

    Optional preserveVisibility

    preserveVisibility?: boolean
    memberof

    Duck.Types.Camera.CullingOptions

    +

    Optional preserveVisibility

    preserveVisibility?: boolean
    memberof

    Duck.Types.Camera.CullingOptions

    description

    Determines if the visibility of the renderable is preserved, renderable's culled property will only be modified instead of the visibility property, this keeps hidden renderables hidden and visible renderables based on the culled property

    default

    true

    since

    2.1.0

    -

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Cutscene.Config.html b/docs/interfaces/index.Duck.Types.Cutscene.Config.html index a98d0d28..1376f7a9 100644 --- a/docs/interfaces/index.Duck.Types.Cutscene.Config.html +++ b/docs/interfaces/index.Duck.Types.Cutscene.Config.html @@ -1 +1 @@ -Config | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    mainCamera

    mainCamera: Camera

    mainObject

    Optional otherCameras

    otherCameras?: Camera[]

    Optional otherObjects

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Config | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    mainCamera

    mainCamera: Camera

    mainObject

    Optional otherCameras

    otherCameras?: Camera[]

    Optional otherObjects

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Cutscene.Instructions.html b/docs/interfaces/index.Duck.Types.Cutscene.Instructions.html index c8165dd4..894004a2 100644 --- a/docs/interfaces/index.Duck.Types.Cutscene.Instructions.html +++ b/docs/interfaces/index.Duck.Types.Cutscene.Instructions.html @@ -1 +1 @@ -Instructions | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Instructions

    Index

    Properties

    Properties

    init

    init: { cameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }; mainObjectPos: { x: number; y: number }; otherCameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }[]; otherObjectPos: { x: number; y: number }[] }

    Type declaration

    • Optional cameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }
    • mainObjectPos: { x: number; y: number }
      • x: number
      • y: number
    • Optional otherCameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }[]
    • otherObjectPos: { x: number; y: number }[]

    steps

    steps: Step[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Instructions | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Instructions

    Index

    Properties

    Properties

    init

    init: { cameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }; mainObjectPos: { x: number; y: number }; otherCameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }[]; otherObjectPos: { x: number; y: number }[] }

    Type declaration

    • Optional cameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }
    • mainObjectPos: { x: number; y: number }
      • x: number
      • y: number
    • Optional otherCameraSettings?: { FOV: number; follow?: Duck.Types.GameObject<Duck.Types.Texture.Type>; followLerpX: number; followLerpY: number; pos?: { x: number; y: number }; zoom: number }[]
    • otherObjectPos: { x: number; y: number }[]

    steps

    steps: Step[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Cutscene.OnListener.html b/docs/interfaces/index.Duck.Types.Cutscene.OnListener.html index 5a47642d..60aa2da0 100644 --- a/docs/interfaces/index.Duck.Types.Cutscene.OnListener.html +++ b/docs/interfaces/index.Duck.Types.Cutscene.OnListener.html @@ -1 +1 @@ -OnListener | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • OnListener

    Index

    Properties

    Properties

    func

    func: Function

    type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +OnListener | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • OnListener

    Index

    Properties

    Properties

    func

    func: Function

    type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Cutscene.Step.html b/docs/interfaces/index.Duck.Types.Cutscene.Step.html index f749d41f..07479124 100644 --- a/docs/interfaces/index.Duck.Types.Cutscene.Step.html +++ b/docs/interfaces/index.Duck.Types.Cutscene.Step.html @@ -1 +1 @@ -Step | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Step

    Index

    Properties

    Optional affect

    Optional cameraFollow

    Optional cameraFollowLerpX

    cameraFollowLerpX?: number

    Optional cameraFollowLerpY

    cameraFollowLerpY?: number

    Optional cameraIntervalMS

    cameraIntervalMS?: number

    Optional cameraTimeMS

    cameraTimeMS?: number

    Optional cameraValue

    cameraValue?: number

    Optional func

    func?: Function

    Optional moveTo

    moveTo?: { x?: number; y?: number }

    Type declaration

    • Optional x?: number
    • Optional y?: number

    Optional sleepValue

    sleepValue?: number

    type

    type: StepType

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Step | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Step

    Index

    Properties

    Optional affect

    Optional cameraFollow

    Optional cameraFollowLerpX

    cameraFollowLerpX?: number

    Optional cameraFollowLerpY

    cameraFollowLerpY?: number

    Optional cameraIntervalMS

    cameraIntervalMS?: number

    Optional cameraTimeMS

    cameraTimeMS?: number

    Optional cameraValue

    cameraValue?: number

    Optional func

    func?: Function

    Optional moveTo

    moveTo?: { x?: number; y?: number }

    Type declaration

    • Optional x?: number
    • Optional y?: number

    Optional sleepValue

    sleepValue?: number

    type

    type: StepType

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Game.Config.html b/docs/interfaces/index.Duck.Types.Game.Config.html index cd0aac71..0c6db386 100644 --- a/docs/interfaces/index.Duck.Types.Game.Config.html +++ b/docs/interfaces/index.Duck.Types.Game.Config.html @@ -1,66 +1,66 @@ -Config | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Optional background

    background?: string
    memberof

    Duck.Types.Game.Config

    +Config | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Optional background

    background?: string
    memberof

    Duck.Types.Game.Config

    description

    CSS background color of the canvas (hint: to fill a scene with a background color, use scene.add.misc.canvasModulate)

    default

    undefined

    since

    1.0.0-beta

    -

    Optional blur

    blur?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional blur

    blur?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Determines if window.blur is called on load or not

    default

    false

    since

    2.0.0

    -

    canvas

    canvas: HTMLCanvasElement | { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D }
    memberof

    Duck.Types.Game.Config

    +

    canvas

    canvas: HTMLCanvasElement | { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D }
    memberof

    Duck.Types.Game.Config

    description

    Canvas element to render to or return value from Duck.AutoCanvas()

    since

    1.0.0-beta

    -

    Optional debug

    debug?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional debug

    debug?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Determines if DuckEngine logs out events that are occurring

    default

    false

    since

    1.0.0-beta

    -

    Optional debugRendering

    debugRendering?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional debugRendering

    debugRendering?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Determines if DuckEngine silences/prevents pauseRenderingOnBlur, onPauseRendering, and onResumeRendering configurations

    default

    false

    since

    2.0.0

    -

    defaultScene

    defaultScene: string
    memberof

    Duck.Types.Game.Config

    +

    defaultScene

    defaultScene: string
    memberof

    Duck.Types.Game.Config

    description

    Key of scene that is defaulted to be visible

    since

    1.0.0-beta

    -

    Optional dprScale

    dprScale?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional dprScale

    dprScale?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Uses the device pixel ratio to scale the canvas accordingly

    default

    false

    since

    1.0.0

    -

    Optional focus

    focus?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional focus

    focus?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Determines if window.focus is called on load or not

    default

    false

    since

    2.0.0

    -

    Optional pauseRenderingOnBlur

    pauseRenderingOnBlur?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional pauseRenderingOnBlur

    pauseRenderingOnBlur?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Determines if rendering renderable objects is paused if tab is not focused, uses window.onblur and window.onfocus

    default

    false

    since

    2.0.0

    -

    Optional physics

    physics?: { customTick?: boolean; debug?: boolean; enabled: boolean; gravity?: Vector2Like }
    memberof

    Duck.Types.Game.Config

    +

    Optional physics

    physics?: { customTick?: boolean; debug?: boolean; enabled: boolean; gravity?: Vector2Like }
    memberof

    Duck.Types.Game.Config

    description

    Physics Options

    since

    2.0.0

    -

    Type declaration

    • Optional customTick?: boolean
    • Optional debug?: boolean
    • enabled: boolean
    • Optional gravity?: Vector2Like

    Optional poolingInterval

    poolingInterval?: number
    memberof

    Duck.Types.Game.Config

    -
    description

    How often, in milliseconds, the RendererPipeline calls its pool method, affects how long it takes for a scene -or renderable to change its visibility as both are controlled and updated by the RendererPipeline

    -
    default

    1000

    +

    Type declaration

    • Optional customTick?: boolean
    • Optional debug?: boolean
    • enabled: boolean
    • Optional gravity?: Vector2Like

    Optional poolingInterval

    poolingInterval?: number
    memberof

    Duck.Types.Game.Config

    +
    description

    How often, in milliseconds, the RendererPipeline calls its pool method, affects how long it takes for a + renderable to change its visibility as it is controlled and updated by the RendererPipeline

    +
    default

    1000 / game.fps

    since

    2.1.0

    -

    Optional roundPixels

    roundPixels?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional roundPixels

    roundPixels?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Rounds pixels from floats to integers, affects gameobjects (excluding particles)

    default

    false

    since

    2.0.0

    -

    Optional scale

    scale?: Vector2Like
    memberof

    Duck.Types.Game.Config

    +

    Optional scale

    scale?: Vector2Like
    memberof

    Duck.Types.Game.Config

    description

    Scale of the canvas, the size of the canvas

    since

    2.1.0

    -

    Optional smartScale

    smartScale?: boolean
    memberof

    Duck.Types.Game.Config

    +

    Optional smartScale

    smartScale?: boolean
    memberof

    Duck.Types.Game.Config

    description

    Determines if the canvas is scaled down to the window size if the window size is smaller than the canvas

    default

    false

    since

    1.0.0

    -

    Optional splashScreen

    splashScreen?: { extraDuration?: number; img?: string }
    memberof

    Duck.Types.Game.Config

    +

    Optional splashScreen

    splashScreen?: { extraDuration?: number; img?: string }
    memberof

    Duck.Types.Game.Config

    description

    Custom splash screen options, shows while the game is starting/loading, default img: https://i.ibb.co/bdN4CCN/Logo-Splash.png default extraDuration: 500

    since

    2.0.0

    -

    Type declaration

    • Optional extraDuration?: number
    • Optional img?: string

    Methods

    Optional onPauseRendering

    • onPauseRendering(reason: "windowBlur" | "gameStop" | "gameConfigBlur"): void
    • memberof

      Duck.Types.Game.Config

      +

      Type declaration

      • Optional extraDuration?: number
      • Optional img?: string

    Methods

    Optional onPauseRendering

    • onPauseRendering(reason: "windowBlur" | "gameStop" | "gameConfigBlur"): void
    • memberof

      Duck.Types.Game.Config

      description

      Function to call when rendering is paused, rendering pauses when this.stop is called or if pauseRenderingOnBlur is true and the window.blur event was fired

      since

      2.0.0

      -

      Parameters

      • reason: "windowBlur" | "gameStop" | "gameConfigBlur"

      Returns void

    Optional onResumeRendering

    • onResumeRendering(reason: "windowFocus" | "gameStart" | "gameConfigFocus"): void
    • memberof

      Duck.Types.Game.Config

      +

      Parameters

      • reason: "windowBlur" | "gameStop" | "gameConfigBlur"

      Returns void

    Optional onResumeRendering

    • onResumeRendering(reason: "windowFocus" | "gameStart" | "gameConfigFocus"): void
    • memberof

      Duck.Types.Game.Config

      description

      Function to call when rendering is resumed/started, rendering resumes/starts when this.start is called or if the window.focus event was fired

      since

      2.0.0

      -

      Parameters

      • reason: "windowFocus" | "gameStart" | "gameConfigFocus"

      Returns void

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Parameters

    • reason: "windowFocus" | "gameStart" | "gameConfigFocus"

    Returns void

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Game.Plugin.html b/docs/interfaces/index.Duck.Types.Game.Plugin.html index a306df42..27237c53 100644 --- a/docs/interfaces/index.Duck.Types.Game.Plugin.html +++ b/docs/interfaces/index.Duck.Types.Game.Plugin.html @@ -1 +1 @@ -Plugin | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Plugin

    Index

    Properties

    Methods

    Properties

    args

    args: unknown[]

    name

    name: string

    Methods

    func

    • func(...args: unknown[]): unknown
    • Parameters

      • Rest ...args: unknown[]

      Returns unknown

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Plugin | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Plugin

    Index

    Properties

    Methods

    Properties

    args

    args: unknown[]

    name

    name: string

    Methods

    func

    • func(...args: unknown[]): unknown
    • Parameters

      • Rest ...args: unknown[]

      Returns unknown

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Game.Stack.html b/docs/interfaces/index.Duck.Types.Game.Stack.html index aecbcbf0..081fdad9 100644 --- a/docs/interfaces/index.Duck.Types.Game.Stack.html +++ b/docs/interfaces/index.Duck.Types.Game.Stack.html @@ -1 +1 @@ -Stack | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Stack

    Index

    Properties

    defaultScene

    defaultScene: string

    scenes

    scenes: Scene[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Stack | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Stack

    Index

    Properties

    defaultScene

    defaultScene: string

    scenes

    scenes: Scene[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Game.VersionInfo.html b/docs/interfaces/index.Duck.Types.Game.VersionInfo.html new file mode 100644 index 00000000..9a5ec3ef --- /dev/null +++ b/docs/interfaces/index.Duck.Types.Game.VersionInfo.html @@ -0,0 +1 @@ +VersionInfo | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • VersionInfo

    Index

    Properties

    Properties

    date

    date: string

    version

    version: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Group.Listener.html b/docs/interfaces/index.Duck.Types.Group.Listener.html index 9560dcd6..d5df212e 100644 --- a/docs/interfaces/index.Duck.Types.Group.Listener.html +++ b/docs/interfaces/index.Duck.Types.Group.Listener.html @@ -1 +1 @@ -Listener | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Listener

    Index

    Properties

    Methods

    Properties

    type

    Methods

    func

    • func(item: unknown): unknown
    • Parameters

      • item: unknown

      Returns unknown

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Listener | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Listener

    Index

    Properties

    Methods

    Properties

    type

    Methods

    func

    • func(item: unknown): unknown
    • Parameters

      • item: unknown

      Returns unknown

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.KeyboardInput.KeyBase.html b/docs/interfaces/index.Duck.Types.KeyboardInput.KeyBase.html index 83b20f0c..747d7cc3 100644 --- a/docs/interfaces/index.Duck.Types.KeyboardInput.KeyBase.html +++ b/docs/interfaces/index.Duck.Types.KeyboardInput.KeyBase.html @@ -1 +1 @@ -KeyBase | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • KeyBase

    Index

    Properties

    descriptor

    descriptor: string

    keyCode

    keyCode: number

    Methods

    Optional keyDown

    • keyDown(e: KeyboardEvent): any
    • Parameters

      • e: KeyboardEvent

      Returns any

    Optional keyJustPressed

    • keyJustPressed(e: KeyboardEvent): any
    • Parameters

      • e: KeyboardEvent

      Returns any

    Optional keyState

    • keyState(e: KeyboardEvent, state: boolean): any
    • Parameters

      • e: KeyboardEvent
      • state: boolean

      Returns any

    Optional keyUp

    • keyUp(e: KeyboardEvent): any
    • Parameters

      • e: KeyboardEvent

      Returns any

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +KeyBase | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • KeyBase

    Index

    Properties

    descriptor

    descriptor: string

    keyCode

    keyCode: number

    Methods

    Optional keyDown

    • keyDown(e: KeyboardEvent): any
    • Parameters

      • e: KeyboardEvent

      Returns any

    Optional keyJustPressed

    • keyJustPressed(e: KeyboardEvent): any
    • Parameters

      • e: KeyboardEvent

      Returns any

    Optional keyState

    • keyState(e: KeyboardEvent, state: boolean): any
    • Parameters

      • e: KeyboardEvent
      • state: boolean

      Returns any

    Optional keyUp

    • keyUp(e: KeyboardEvent): any
    • Parameters

      • e: KeyboardEvent

      Returns any

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Loader.StackItem.html b/docs/interfaces/index.Duck.Types.Loader.StackItem.html index 78d73317..f5cbac63 100644 --- a/docs/interfaces/index.Duck.Types.Loader.StackItem.html +++ b/docs/interfaces/index.Duck.Types.Loader.StackItem.html @@ -1 +1 @@ -StackItem | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Type parameters

    • t

    Hierarchy

    Index

    Properties

    Properties

    key

    key: string

    type

    value

    value: t

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +StackItem | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Type parameters

    • t

    Hierarchy

    Index

    Properties

    Properties

    key

    key: string

    type

    value

    value: t

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Loader.TextureStackItem.html b/docs/interfaces/index.Duck.Types.Loader.TextureStackItem.html index 4e79a4cf..8babff00 100644 --- a/docs/interfaces/index.Duck.Types.Loader.TextureStackItem.html +++ b/docs/interfaces/index.Duck.Types.Loader.TextureStackItem.html @@ -1 +1 @@ -TextureStackItem | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Type parameters

    • t

    Hierarchy

    Index

    Properties

    dataType

    dataType: DataType

    key

    key: string

    type

    value

    value: t

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +TextureStackItem | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Type parameters

    • t

    Hierarchy

    Index

    Properties

    dataType

    dataType: DataType

    key

    key: string

    type

    value

    value: t

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Math.BoundsLike.html b/docs/interfaces/index.Duck.Types.Math.BoundsLike.html index 07342224..bc44fedb 100644 --- a/docs/interfaces/index.Duck.Types.Math.BoundsLike.html +++ b/docs/interfaces/index.Duck.Types.Math.BoundsLike.html @@ -1 +1 @@ -BoundsLike | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Properties

    Properties

    h

    h: number

    w

    w: number

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +BoundsLike | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Properties

    Properties

    h

    h: number

    w

    w: number

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Math.Vector2Like.html b/docs/interfaces/index.Duck.Types.Math.Vector2Like.html index fe769733..8b98f8b0 100644 --- a/docs/interfaces/index.Duck.Types.Math.Vector2Like.html +++ b/docs/interfaces/index.Duck.Types.Math.Vector2Like.html @@ -1 +1 @@ -Vector2Like | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Properties

    Properties

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Vector2Like | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    Index

    Properties

    Properties

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Math.Vector2LikeOptional.html b/docs/interfaces/index.Duck.Types.Math.Vector2LikeOptional.html index 029735b7..fa5ae87c 100644 --- a/docs/interfaces/index.Duck.Types.Math.Vector2LikeOptional.html +++ b/docs/interfaces/index.Duck.Types.Math.Vector2LikeOptional.html @@ -1 +1 @@ -Vector2LikeOptional | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Vector2LikeOptional

    Index

    Properties

    Properties

    Optional x

    x?: number

    Optional y

    y?: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Vector2LikeOptional | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Vector2LikeOptional

    Index

    Properties

    Properties

    Optional x

    x?: number

    Optional y

    y?: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Misc.Scale.html b/docs/interfaces/index.Duck.Types.Misc.Scale.html index ca4c1005..59bfefb3 100644 --- a/docs/interfaces/index.Duck.Types.Misc.Scale.html +++ b/docs/interfaces/index.Duck.Types.Misc.Scale.html @@ -1 +1 @@ -Scale | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Scale

    Index

    Properties

    Properties

    Optional height

    height?: number

    Optional width

    width?: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Scale | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Scale

    Index

    Properties

    Properties

    Optional height

    height?: number

    Optional width

    width?: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.MouseInput.MouseBase.html b/docs/interfaces/index.Duck.Types.MouseInput.MouseBase.html index 158f87fa..5b0a3e71 100644 --- a/docs/interfaces/index.Duck.Types.MouseInput.MouseBase.html +++ b/docs/interfaces/index.Duck.Types.MouseInput.MouseBase.html @@ -1 +1 @@ -MouseBase | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • MouseBase

    Index

    Properties

    button

    button: 0 | 1 | 4 | 2 | 3

    descriptor

    descriptor: string

    Methods

    Optional mouseDown

    • mouseDown(e: MouseEvent): any

    Optional mouseMove

    • mouseMove(e: MouseEvent): any

    Optional mouseUp

    • mouseUp(e: MouseEvent): any

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +MouseBase | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • MouseBase

    Index

    Properties

    button

    button: 0 | 2 | 1 | 3 | 4

    descriptor

    descriptor: string

    Methods

    Optional mouseDown

    • mouseDown(e: MouseEvent): any

    Optional mouseMove

    • mouseMove(e: MouseEvent): any

    Optional mouseUp

    • mouseUp(e: MouseEvent): any

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.ParticleContainer.Bounds.html b/docs/interfaces/index.Duck.Types.ParticleContainer.Bounds.html index ed73f70d..1c8f9ed5 100644 --- a/docs/interfaces/index.Duck.Types.ParticleContainer.Bounds.html +++ b/docs/interfaces/index.Duck.Types.ParticleContainer.Bounds.html @@ -1 +1 @@ -Bounds | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Bounds

    Index

    Properties

    Properties

    h

    h: number

    position

    position: { x: number; y: number }

    Type declaration

    • x: number
    • y: number

    w

    w: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Bounds | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Bounds

    Index

    Properties

    Properties

    h

    h: number

    position

    position: { x: number; y: number }

    Type declaration

    • x: number
    • y: number

    w

    w: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.ParticleContainer.Physics.html b/docs/interfaces/index.Duck.Types.ParticleContainer.Physics.html index 9c437653..1afa2c14 100644 --- a/docs/interfaces/index.Duck.Types.ParticleContainer.Physics.html +++ b/docs/interfaces/index.Duck.Types.ParticleContainer.Physics.html @@ -1 +1 @@ -Physics | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Physics

    Index

    Properties

    Properties

    bounciness

    bounciness: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Physics | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Physics

    Index

    Properties

    Properties

    bounciness

    bounciness: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html b/docs/interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html index 68bc3907..335ccd17 100644 --- a/docs/interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html +++ b/docs/interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html @@ -1 +1 @@ -Offloaders | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Offloaders

    Index

    Methods

    maxAge

    • maxAge(): void

    maxAmount

    • maxAmount(): void

    maxBounds

    • maxBounds(): void

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Offloaders | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Offloaders

    Index

    Methods

    maxAge

    • maxAge(): void

    maxAmount

    • maxAmount(): void

    maxBounds

    • maxBounds(): void

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Method

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html b/docs/interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html index 507c1548..7ed9e146 100644 --- a/docs/interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html +++ b/docs/interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html @@ -1 +1 @@ -AttachedBody | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • AttachedBody

    Index

    Properties

    Properties

    body

    offset

    offset: Vector2

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +AttachedBody | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • AttachedBody

    Index

    Properties

    Properties

    body

    offset

    offset: Vector2

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.PhysicsBody.Config.html b/docs/interfaces/index.Duck.Types.PhysicsBody.Config.html index 545f8e7f..5bafdb04 100644 --- a/docs/interfaces/index.Duck.Types.PhysicsBody.Config.html +++ b/docs/interfaces/index.Duck.Types.PhysicsBody.Config.html @@ -1 +1 @@ -Config | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Properties

    type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Config | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Properties

    type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Renderable.html b/docs/interfaces/index.Duck.Types.Renderable.html index 70f2ec28..8bb05f0a 100644 --- a/docs/interfaces/index.Duck.Types.Renderable.html +++ b/docs/interfaces/index.Duck.Types.Renderable.html @@ -1 +1 @@ -Renderable | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Renderable

    Implemented by

    Index

    Properties

    culled

    culled: boolean

    game

    game: Game

    Readonly id

    id: string

    visible

    visible: boolean

    zIndex

    zIndex: number

    Methods

    _draw

    • _draw(): void

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Renderable | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Renderable

    Implemented by

    Index

    Properties

    culled

    culled: boolean

    game

    game: Game

    Readonly id

    id: string

    visible

    visible: boolean

    zIndex

    zIndex: number

    Methods

    _draw

    • _draw(): void

    Legend

    • Namespace
    • Variable
    • Function
    • Property
    • Method
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html b/docs/interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html index e0d220a6..044098f5 100644 --- a/docs/interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html +++ b/docs/interfaces/index.Duck.Types.RendererPipeline.PoolStackItem.html @@ -1,4 +1,4 @@ -PoolStackItem | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • PoolStackItem

    Index

    Properties

    renderables

    renderables: Renderable[]
    memberof

    Duck.Types.Game.PoolStackItem

    +PoolStackItem | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • PoolStackItem

    Index

    Properties

    renderables

    renderables: Renderable[]
    memberof

    Duck.Types.Game.PoolStackItem

    description

    An array of renderables that are visible and depth sorted

    since

    2.1.0

    -

    scene

    scene: Scene

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    scene

    scene: Scene

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Sound.Config.html b/docs/interfaces/index.Duck.Types.Sound.Config.html deleted file mode 100644 index f1dea50d..00000000 --- a/docs/interfaces/index.Duck.Types.Sound.Config.html +++ /dev/null @@ -1 +0,0 @@ -Config | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Optional autoplay

    autoplay?: boolean

    Optional loop

    loop?: boolean

    Optional sprites

    sprites?: Duck.Types.Sound.Sprite[]

    Optional volume

    volume?: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Sound.SoundConfig.html b/docs/interfaces/index.Duck.Types.Sound.SoundConfig.html new file mode 100644 index 00000000..77510f02 --- /dev/null +++ b/docs/interfaces/index.Duck.Types.Sound.SoundConfig.html @@ -0,0 +1 @@ +SoundConfig | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • SoundConfig

    Index

    Properties

    Optional autoplay

    autoplay?: boolean

    Optional loop

    loop?: boolean

    Optional spriteStructs

    spriteStructs?: SpriteStruct[]

    Optional volume

    volume?: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Sound.Sprite.html b/docs/interfaces/index.Duck.Types.Sound.Sprite.html deleted file mode 100644 index e8d8963b..00000000 --- a/docs/interfaces/index.Duck.Types.Sound.Sprite.html +++ /dev/null @@ -1 +0,0 @@ -Sprite | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Sprite

    Index

    Properties

    endSeconds

    endSeconds: number

    key

    key: string

    startSeconds

    startSeconds: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Sound.SpriteStruct.html b/docs/interfaces/index.Duck.Types.Sound.SpriteStruct.html new file mode 100644 index 00000000..1770cf54 --- /dev/null +++ b/docs/interfaces/index.Duck.Types.Sound.SpriteStruct.html @@ -0,0 +1 @@ +SpriteStruct | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • SpriteStruct

    Index

    Properties

    endInMilliSeconds

    endInMilliSeconds: number

    key

    key: string

    startInMilliSeconds

    startInMilliSeconds: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.StateMachine.Config.html b/docs/interfaces/index.Duck.Types.StateMachine.Config.html index 299b9488..9a5745fe 100644 --- a/docs/interfaces/index.Duck.Types.StateMachine.Config.html +++ b/docs/interfaces/index.Duck.Types.StateMachine.Config.html @@ -1 +1 @@ -Config | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    connections

    connections: ConnectionBase[]

    defaultState

    defaultState: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Config | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    connections

    connections: ConnectionBase[]

    defaultState

    defaultState: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBase.html b/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBase.html index e467b785..02491400 100644 --- a/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBase.html +++ b/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBase.html @@ -1 +1 @@ -ConnectionBase | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • ConnectionBase

    Index

    Properties

    Properties

    connType

    connType: "one" | "loop"

    from

    to

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +ConnectionBase | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • ConnectionBase

    Index

    Properties

    Properties

    connType

    connType: "one" | "loop"

    from

    to

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html b/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html index 769ad6c1..f7a7b801 100644 --- a/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html +++ b/docs/interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html @@ -1 +1 @@ -ConnectionBaseValue | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • ConnectionBaseValue

    Index

    Properties

    Optional autoAdvance

    autoAdvance?: boolean

    key

    key: string

    vector

    vector: Vector2

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +ConnectionBaseValue | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • ConnectionBaseValue

    Index

    Properties

    Optional autoAdvance

    autoAdvance?: boolean

    key

    key: string

    vector

    vector: Vector2

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.TextureAtlas.FrameData.html b/docs/interfaces/index.Duck.Types.TextureAtlas.FrameData.html index 7af3ae92..b335eb8a 100644 --- a/docs/interfaces/index.Duck.Types.TextureAtlas.FrameData.html +++ b/docs/interfaces/index.Duck.Types.TextureAtlas.FrameData.html @@ -1 +1 @@ -FrameData | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • FrameData

    Index

    Properties

    Properties

    h

    h: number

    key

    key: string

    w

    w: number

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +FrameData | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • FrameData

    Index

    Properties

    Properties

    h

    h: number

    key

    key: string

    w

    w: number

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html b/docs/interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html index 196fcecf..bafdec39 100644 --- a/docs/interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html +++ b/docs/interfaces/index.Duck.Types.TextureAtlas.JSONSchema.html @@ -1 +1 @@ -JSONSchema | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • JSONSchema

    Index

    Properties

    Properties

    data

    data: FrameData[]

    name

    name: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +JSONSchema | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • JSONSchema

    Index

    Properties

    Properties

    data

    data: FrameData[]

    name

    name: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.Tilemap.Atlas.html b/docs/interfaces/index.Duck.Types.Tilemap.Atlas.html index 47d3dd98..398b1b14 100644 --- a/docs/interfaces/index.Duck.Types.Tilemap.Atlas.html +++ b/docs/interfaces/index.Duck.Types.Tilemap.Atlas.html @@ -1 +1 @@ -Atlas | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Atlas

    Indexable

    [key: number]: HTMLImageElement | string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Atlas | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Atlas

    Indexable

    [key: number]: HTMLImageElement | string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.UI.Button.Listener.html b/docs/interfaces/index.Duck.Types.UI.Button.Listener.html index 7f4eb924..e5242b00 100644 --- a/docs/interfaces/index.Duck.Types.UI.Button.Listener.html +++ b/docs/interfaces/index.Duck.Types.UI.Button.Listener.html @@ -1 +1 @@ -Listener | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Listener

    Index

    Properties

    Properties

    func

    type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Listener | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Listener

    Index

    Properties

    Properties

    func

    type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.UI.Button.ListenerReturn.html b/docs/interfaces/index.Duck.Types.UI.Button.ListenerReturn.html index 5f3b0a12..57b257f8 100644 --- a/docs/interfaces/index.Duck.Types.UI.Button.ListenerReturn.html +++ b/docs/interfaces/index.Duck.Types.UI.Button.ListenerReturn.html @@ -1 +1 @@ -ListenerReturn | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • ListenerReturn

    Index

    Properties

    Properties

    type

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +ListenerReturn | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • ListenerReturn

    Index

    Properties

    Properties

    type

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/interfaces/index.Duck.Types.UI.Text.Config.html b/docs/interfaces/index.Duck.Types.UI.Text.Config.html index a86369f0..4aab9ecd 100644 --- a/docs/interfaces/index.Duck.Types.UI.Text.Config.html +++ b/docs/interfaces/index.Duck.Types.UI.Text.Config.html @@ -1 +1 @@ -Config | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Properties

    method

    method: "draw" | "stroke" | "draw-stroke"

    styles

    styles: { fillColor?: string; fontCSS: string; maxWidth?: number; strokeColor?: string; strokeWidth?: number }

    Type declaration

    • Optional fillColor?: string
    • fontCSS: string
    • Optional maxWidth?: number
    • Optional strokeColor?: string
    • Optional strokeWidth?: number

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Config | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Hierarchy

    • Config

    Index

    Properties

    Properties

    method

    method: "stroke" | "draw" | "draw-stroke"

    styles

    styles: { fillColor?: string; fontCSS: string; maxWidth?: number; strokeColor?: string; strokeWidth?: number }

    Type declaration

    • Optional fillColor?: string
    • fontCSS: string
    • Optional maxWidth?: number
    • Optional strokeColor?: string
    • Optional strokeWidth?: number

    x

    x: number

    y

    y: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter
    • Property

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules.html b/docs/modules.html index a684fbd0..cb175417 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -1 +1 @@ -DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    DuckEngine - v2.1.0

    Index

    Modules

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    DuckEngine - v3.0.0-dev

    Index

    Modules

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_animation_animation.html b/docs/modules/core_animation_animation.html index f2755cc5..d34beaab 100644 --- a/docs/modules/core_animation_animation.html +++ b/docs/modules/core_animation_animation.html @@ -1 +1 @@ -core/animation/animation | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/animation

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/animation/animation | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_animation_animationFrame.html b/docs/modules/core_animation_animationFrame.html index c9b08018..cf399c03 100644 --- a/docs/modules/core_animation_animationFrame.html +++ b/docs/modules/core_animation_animationFrame.html @@ -1 +1 @@ -core/animation/animationFrame | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/animationFrame

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/animation/animationFrame | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/animationFrame

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_animation_animationManager.html b/docs/modules/core_animation_animationManager.html index d19c869a..a506d6a2 100644 --- a/docs/modules/core_animation_animationManager.html +++ b/docs/modules/core_animation_animationManager.html @@ -1 +1 @@ -core/animation/animationManager | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/animationManager

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/animation/animationManager | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/animationManager

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_animation_animationState.html b/docs/modules/core_animation_animationState.html index c8e1708c..9bc507ac 100644 --- a/docs/modules/core_animation_animationState.html +++ b/docs/modules/core_animation_animationState.html @@ -1 +1 @@ -core/animation/animationState | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/animationState

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/animation/animationState | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/animationState

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_animation_stateMachine.html b/docs/modules/core_animation_stateMachine.html index baba4680..4cee867e 100644 --- a/docs/modules/core_animation_stateMachine.html +++ b/docs/modules/core_animation_stateMachine.html @@ -1 +1 @@ -core/animation/stateMachine | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/stateMachine

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/animation/stateMachine | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/animation/stateMachine

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_camera_camera.html b/docs/modules/core_camera_camera.html index 78b31086..bb697cce 100644 --- a/docs/modules/core_camera_camera.html +++ b/docs/modules/core_camera_camera.html @@ -1 +1 @@ -core/camera/camera | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/camera/camera

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/camera/camera | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_cutscene_cutscene.html b/docs/modules/core_cutscene_cutscene.html index e311ccce..cb5413dc 100644 --- a/docs/modules/core_cutscene_cutscene.html +++ b/docs/modules/core_cutscene_cutscene.html @@ -1 +1 @@ -core/cutscene/cutscene | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/cutscene/cutscene

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/cutscene/cutscene | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_debug_debug.html b/docs/modules/core_debug_debug.html index 815e7ae6..232c244f 100644 --- a/docs/modules/core_debug_debug.html +++ b/docs/modules/core_debug_debug.html @@ -1 +1 @@ -core/debug/debug | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Debug

    Debug: { Error: typeof Error; Log: typeof Log; Warn: typeof Warn; stack: () => string[] } = ...

    Type declaration

    • Error: typeof Error
    • Log: typeof Log
    • Warn: typeof Warn
    • stack: () => string[]
        • (): string[]
        • Returns string[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/debug/debug | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Debug

    Debug: { Error: typeof Error; Log: typeof Log; Warn: typeof Warn; stack: () => string[] } = ...

    Type declaration

    • Error: typeof Error
    • Log: typeof Log
    • Warn: typeof Warn
    • stack: () => string[]
        • (): string[]
        • Returns string[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_display_displayManager.html b/docs/modules/core_display_displayManager.html index 9dbfac4f..f31d8baf 100644 --- a/docs/modules/core_display_displayManager.html +++ b/docs/modules/core_display_displayManager.html @@ -1 +1 @@ -core/display/displayManager | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/display/displayManager

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/display/displayManager | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/display/displayManager

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_effect_effect.html b/docs/modules/core_effect_effect.html index ee846a35..9c057c82 100644 --- a/docs/modules/core_effect_effect.html +++ b/docs/modules/core_effect_effect.html @@ -1 +1 @@ -core/effect/effect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/effect/effect

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/effect/effect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_effect_preset_explosion.html b/docs/modules/core_effect_preset_explosion.html index e42d0185..ce85f4f6 100644 --- a/docs/modules/core_effect_preset_explosion.html +++ b/docs/modules/core_effect_preset_explosion.html @@ -1 +1 @@ -core/effect/preset/explosion | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/effect/preset/explosion

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/effect/preset/explosion | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/effect/preset/explosion

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_effect_preset_smoke.html b/docs/modules/core_effect_preset_smoke.html index 49260d82..0b65b950 100644 --- a/docs/modules/core_effect_preset_smoke.html +++ b/docs/modules/core_effect_preset_smoke.html @@ -1 +1 @@ -core/effect/preset/smoke | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/effect/preset/smoke

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/effect/preset/smoke | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_eventEmitter.html b/docs/modules/core_events_eventEmitter.html index 0e17b098..ce5d1561 100644 --- a/docs/modules/core_events_eventEmitter.html +++ b/docs/modules/core_events_eventEmitter.html @@ -1 +1 @@ -core/events/eventEmitter | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/eventEmitter

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/eventEmitter | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_events.html b/docs/modules/core_events_events.html index 3f2e2a06..5eb666c4 100644 --- a/docs/modules/core_events_events.html +++ b/docs/modules/core_events_events.html @@ -1 +1 @@ -core/events/events | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/events

    Index

    Variables

    Variables

    EVENTS

    EVENTS: { BUTTON: { CLICK: string; HOVER: string; NOTHOVER: string }; CUTSCENE: { END: string; NEXT: string; START: string }; DISPLAY: { BLUR: string; FOCUS: string; FULLSCREEN: string; SET_SCALE: string; UNFULLSCREEN: string }; GAME: { BLUR: string; CLEAR_FRAME: string; CONTEXT_LOST: string; CONTEXT_RESTORED: string; DRAW_SPLASH: string; FOCUS: string; LOAD_BEGIN: string; LOAD_FINISH: string; LOAD_SCENE: string; LOCK_POINTER: string; SCENE_ADD: string; SCENE_REMOVE: string; SET_BACKGROUND: string; SET_SCALE: string; SHOW_SCENE: string; START: string; STOP: string; SWITCH_SCENE: string; SYNC_CACHE: string; UNLOCK_POINTER: string }; GROUP: { ADD: string; REMOVE: string }; RENDERER: { CLEAR_FRAME: string; PIPELINE_POOL: string } } = ...

    Type declaration

    • BUTTON: { CLICK: string; HOVER: string; NOTHOVER: string }
      • CLICK: string
      • HOVER: string
      • NOTHOVER: string
    • CUTSCENE: { END: string; NEXT: string; START: string }
      • END: string
      • NEXT: string
      • START: string
    • DISPLAY: { BLUR: string; FOCUS: string; FULLSCREEN: string; SET_SCALE: string; UNFULLSCREEN: string }
      • BLUR: string
      • FOCUS: string
      • FULLSCREEN: string
      • SET_SCALE: string
      • UNFULLSCREEN: string
    • GAME: { BLUR: string; CLEAR_FRAME: string; CONTEXT_LOST: string; CONTEXT_RESTORED: string; DRAW_SPLASH: string; FOCUS: string; LOAD_BEGIN: string; LOAD_FINISH: string; LOAD_SCENE: string; LOCK_POINTER: string; SCENE_ADD: string; SCENE_REMOVE: string; SET_BACKGROUND: string; SET_SCALE: string; SHOW_SCENE: string; START: string; STOP: string; SWITCH_SCENE: string; SYNC_CACHE: string; UNLOCK_POINTER: string }
      • BLUR: string
      • CLEAR_FRAME: string
      • CONTEXT_LOST: string
      • CONTEXT_RESTORED: string
      • DRAW_SPLASH: string
      • FOCUS: string
      • LOAD_BEGIN: string
      • LOAD_FINISH: string
      • LOAD_SCENE: string
      • LOCK_POINTER: string
      • SCENE_ADD: string
      • SCENE_REMOVE: string
      • SET_BACKGROUND: string
      • SET_SCALE: string
      • SHOW_SCENE: string
      • START: string
      • STOP: string
      • SWITCH_SCENE: string
      • SYNC_CACHE: string
      • UNLOCK_POINTER: string
    • GROUP: { ADD: string; REMOVE: string }
      • ADD: string
      • REMOVE: string
    • RENDERER: { CLEAR_FRAME: string; PIPELINE_POOL: string }
      • CLEAR_FRAME: string
      • PIPELINE_POOL: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/events | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    EVENTS

    EVENTS: { BUTTON: { CLICK: string; HOVER: string; NOTHOVER: string }; CUTSCENE: { END: string; NEXT: string; START: string }; DISPLAY: { BLUR: string; FOCUS: string; FULLSCREEN: string; SET_SCALE: string; UNFULLSCREEN: string }; GAME: { BLUR: string; CLEAR_FRAME: string; CONTEXT_LOST: string; CONTEXT_RESTORED: string; DRAW_SPLASH: string; FOCUS: string; LOAD_BEGIN: string; LOAD_FINISH: string; LOAD_SCENE: string; LOCK_POINTER: string; SCENE_ADD: string; SCENE_REMOVE: string; SET_BACKGROUND: string; SET_SCALE: string; SHOW_SCENE: string; START: string; STOP: string; SWITCH_SCENE: string; SYNC_CACHE: string; UNLOCK_POINTER: string }; GROUP: { ADD: string; REMOVE: string }; RENDERER: { CLEAR_FRAME: string; PIPELINE_POOL: string } } = ...

    Type declaration

    • BUTTON: { CLICK: string; HOVER: string; NOTHOVER: string }
      • CLICK: string
      • HOVER: string
      • NOTHOVER: string
    • CUTSCENE: { END: string; NEXT: string; START: string }
      • END: string
      • NEXT: string
      • START: string
    • DISPLAY: { BLUR: string; FOCUS: string; FULLSCREEN: string; SET_SCALE: string; UNFULLSCREEN: string }
      • BLUR: string
      • FOCUS: string
      • FULLSCREEN: string
      • SET_SCALE: string
      • UNFULLSCREEN: string
    • GAME: { BLUR: string; CLEAR_FRAME: string; CONTEXT_LOST: string; CONTEXT_RESTORED: string; DRAW_SPLASH: string; FOCUS: string; LOAD_BEGIN: string; LOAD_FINISH: string; LOAD_SCENE: string; LOCK_POINTER: string; SCENE_ADD: string; SCENE_REMOVE: string; SET_BACKGROUND: string; SET_SCALE: string; SHOW_SCENE: string; START: string; STOP: string; SWITCH_SCENE: string; SYNC_CACHE: string; UNLOCK_POINTER: string }
      • BLUR: string
      • CLEAR_FRAME: string
      • CONTEXT_LOST: string
      • CONTEXT_RESTORED: string
      • DRAW_SPLASH: string
      • FOCUS: string
      • LOAD_BEGIN: string
      • LOAD_FINISH: string
      • LOAD_SCENE: string
      • LOCK_POINTER: string
      • SCENE_ADD: string
      • SCENE_REMOVE: string
      • SET_BACKGROUND: string
      • SET_SCALE: string
      • SHOW_SCENE: string
      • START: string
      • STOP: string
      • SWITCH_SCENE: string
      • SYNC_CACHE: string
      • UNLOCK_POINTER: string
    • GROUP: { ADD: string; REMOVE: string }
      • ADD: string
      • REMOVE: string
    • RENDERER: { CLEAR_FRAME: string; PIPELINE_POOL: string }
      • CLEAR_FRAME: string
      • PIPELINE_POOL: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_main_displayEvents.html b/docs/modules/core_events_main_displayEvents.html index db9b00cf..574a77c4 100644 --- a/docs/modules/core_events_main_displayEvents.html +++ b/docs/modules/core_events_main_displayEvents.html @@ -1 +1 @@ -core/events/main/displayEvents | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/main/displayEvents

    Index

    Variables

    Variables

    DisplayEvents

    DisplayEvents: { BLUR: string; FOCUS: string; FULLSCREEN: string; SET_SCALE: string; UNFULLSCREEN: string } = ...

    Type declaration

    • BLUR: string
    • FOCUS: string
    • FULLSCREEN: string
    • SET_SCALE: string
    • UNFULLSCREEN: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/main/displayEvents | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/main/displayEvents

    Index

    Variables

    Variables

    DisplayEvents

    DisplayEvents: { BLUR: string; FOCUS: string; FULLSCREEN: string; SET_SCALE: string; UNFULLSCREEN: string } = ...

    Type declaration

    • BLUR: string
    • FOCUS: string
    • FULLSCREEN: string
    • SET_SCALE: string
    • UNFULLSCREEN: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_main_gameEvents.html b/docs/modules/core_events_main_gameEvents.html index 652596aa..ad006b0b 100644 --- a/docs/modules/core_events_main_gameEvents.html +++ b/docs/modules/core_events_main_gameEvents.html @@ -1 +1 @@ -core/events/main/gameEvents | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/main/gameEvents

    Index

    Variables

    Variables

    GameEvents

    GameEvents: { BLUR: string; CLEAR_FRAME: string; CONTEXT_LOST: string; CONTEXT_RESTORED: string; DRAW_SPLASH: string; FOCUS: string; LOAD_BEGIN: string; LOAD_FINISH: string; LOAD_SCENE: string; LOCK_POINTER: string; SCENE_ADD: string; SCENE_REMOVE: string; SET_BACKGROUND: string; SET_SCALE: string; SHOW_SCENE: string; START: string; STOP: string; SWITCH_SCENE: string; SYNC_CACHE: string; UNLOCK_POINTER: string } = ...

    Type declaration

    • BLUR: string
    • CLEAR_FRAME: string
    • CONTEXT_LOST: string
    • CONTEXT_RESTORED: string
    • DRAW_SPLASH: string
    • FOCUS: string
    • LOAD_BEGIN: string
    • LOAD_FINISH: string
    • LOAD_SCENE: string
    • LOCK_POINTER: string
    • SCENE_ADD: string
    • SCENE_REMOVE: string
    • SET_BACKGROUND: string
    • SET_SCALE: string
    • SHOW_SCENE: string
    • START: string
    • STOP: string
    • SWITCH_SCENE: string
    • SYNC_CACHE: string
    • UNLOCK_POINTER: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/main/gameEvents | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/main/gameEvents

    Index

    Variables

    Variables

    GameEvents

    GameEvents: { BLUR: string; CLEAR_FRAME: string; CONTEXT_LOST: string; CONTEXT_RESTORED: string; DRAW_SPLASH: string; FOCUS: string; LOAD_BEGIN: string; LOAD_FINISH: string; LOAD_SCENE: string; LOCK_POINTER: string; SCENE_ADD: string; SCENE_REMOVE: string; SET_BACKGROUND: string; SET_SCALE: string; SHOW_SCENE: string; START: string; STOP: string; SWITCH_SCENE: string; SYNC_CACHE: string; UNLOCK_POINTER: string } = ...

    Type declaration

    • BLUR: string
    • CLEAR_FRAME: string
    • CONTEXT_LOST: string
    • CONTEXT_RESTORED: string
    • DRAW_SPLASH: string
    • FOCUS: string
    • LOAD_BEGIN: string
    • LOAD_FINISH: string
    • LOAD_SCENE: string
    • LOCK_POINTER: string
    • SCENE_ADD: string
    • SCENE_REMOVE: string
    • SET_BACKGROUND: string
    • SET_SCALE: string
    • SHOW_SCENE: string
    • START: string
    • STOP: string
    • SWITCH_SCENE: string
    • SYNC_CACHE: string
    • UNLOCK_POINTER: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_main_rendererEvents.html b/docs/modules/core_events_main_rendererEvents.html index 6e5433cc..09a8feb5 100644 --- a/docs/modules/core_events_main_rendererEvents.html +++ b/docs/modules/core_events_main_rendererEvents.html @@ -1 +1 @@ -core/events/main/rendererEvents | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/main/rendererEvents

    Index

    Variables

    RendererEvents

    RendererEvents: { CLEAR_FRAME: string; PIPELINE_POOL: string } = ...

    Type declaration

    • CLEAR_FRAME: string
    • PIPELINE_POOL: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/main/rendererEvents | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/main/rendererEvents

    Index

    Variables

    RendererEvents

    RendererEvents: { CLEAR_FRAME: string; PIPELINE_POOL: string } = ...

    Type declaration

    • CLEAR_FRAME: string
    • PIPELINE_POOL: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_other_buttonEvents.html b/docs/modules/core_events_other_buttonEvents.html index eb83947b..7a8cd35e 100644 --- a/docs/modules/core_events_other_buttonEvents.html +++ b/docs/modules/core_events_other_buttonEvents.html @@ -1 +1 @@ -core/events/other/buttonEvents | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/other/buttonEvents

    Index

    Variables

    Variables

    ButtonEvents

    ButtonEvents: { CLICK: string; HOVER: string; NOTHOVER: string } = ...

    Type declaration

    • CLICK: string
    • HOVER: string
    • NOTHOVER: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/other/buttonEvents | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/other/buttonEvents

    Index

    Variables

    Variables

    ButtonEvents

    ButtonEvents: { CLICK: string; HOVER: string; NOTHOVER: string } = ...

    Type declaration

    • CLICK: string
    • HOVER: string
    • NOTHOVER: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_other_cutsceneEvents.html b/docs/modules/core_events_other_cutsceneEvents.html index bbe98b12..4865ea36 100644 --- a/docs/modules/core_events_other_cutsceneEvents.html +++ b/docs/modules/core_events_other_cutsceneEvents.html @@ -1 +1 @@ -core/events/other/cutsceneEvents | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/other/cutsceneEvents

    Index

    Variables

    CutsceneEvents

    CutsceneEvents: { END: string; NEXT: string; START: string } = ...

    Type declaration

    • END: string
    • NEXT: string
    • START: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/other/cutsceneEvents | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/other/cutsceneEvents

    Index

    Variables

    CutsceneEvents

    CutsceneEvents: { END: string; NEXT: string; START: string } = ...

    Type declaration

    • END: string
    • NEXT: string
    • START: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_events_other_groupEvents.html b/docs/modules/core_events_other_groupEvents.html index 8ab092bf..e06c6adc 100644 --- a/docs/modules/core_events_other_groupEvents.html +++ b/docs/modules/core_events_other_groupEvents.html @@ -1 +1 @@ -core/events/other/groupEvents | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/other/groupEvents

    Index

    Variables

    Variables

    GroupEvents

    GroupEvents: { ADD: string; REMOVE: string } = ...

    Type declaration

    • ADD: string
    • REMOVE: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/events/other/groupEvents | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/events/other/groupEvents

    Index

    Variables

    Variables

    GroupEvents

    GroupEvents: { ADD: string; REMOVE: string } = ...

    Type declaration

    • ADD: string
    • REMOVE: string

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_game.html b/docs/modules/core_game.html index aa7faf87..92043245 100644 --- a/docs/modules/core_game.html +++ b/docs/modules/core_game.html @@ -1 +1 @@ -core/game | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/game | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_circle.html b/docs/modules/core_gameobjects_circle.html index 2f440423..4bc0813c 100644 --- a/docs/modules/core_gameobjects_circle.html +++ b/docs/modules/core_gameobjects_circle.html @@ -1 +1 @@ -core/gameobjects/circle | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/circle

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/circle | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_gameObject.html b/docs/modules/core_gameobjects_gameObject.html index a0fe08fb..93128cc7 100644 --- a/docs/modules/core_gameobjects_gameObject.html +++ b/docs/modules/core_gameobjects_gameObject.html @@ -1 +1 @@ -core/gameobjects/gameObject | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/gameObject

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/gameObject | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/gameObject

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_misc_canvasModulate.html b/docs/modules/core_gameobjects_misc_canvasModulate.html index 3e9238a4..a5cd22c3 100644 --- a/docs/modules/core_gameobjects_misc_canvasModulate.html +++ b/docs/modules/core_gameobjects_misc_canvasModulate.html @@ -1 +1 @@ -core/gameobjects/misc/canvasModulate | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/misc/canvasModulate

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/misc/canvasModulate | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/misc/canvasModulate

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_particles_components_containedParticleComponent.html b/docs/modules/core_gameobjects_particles_components_containedParticleComponent.html new file mode 100644 index 00000000..5c061c58 --- /dev/null +++ b/docs/modules/core_gameobjects_particles_components_containedParticleComponent.html @@ -0,0 +1 @@ +core/gameobjects/particles/components/containedParticleComponent | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/particles/components/containedParticleComponent

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_particles_components_gravityParticleComponent.html b/docs/modules/core_gameobjects_particles_components_gravityParticleComponent.html new file mode 100644 index 00000000..98212d46 --- /dev/null +++ b/docs/modules/core_gameobjects_particles_components_gravityParticleComponent.html @@ -0,0 +1 @@ +core/gameobjects/particles/components/gravityParticleComponent | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/particles/components/gravityParticleComponent

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_particles_particle.html b/docs/modules/core_gameobjects_particles_particle.html index 439d8496..7fc4e742 100644 --- a/docs/modules/core_gameobjects_particles_particle.html +++ b/docs/modules/core_gameobjects_particles_particle.html @@ -1 +1 @@ -core/gameobjects/particles/particle | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/particles/particle

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/particles/particle | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/particles/particle

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_particles_particleComponent.html b/docs/modules/core_gameobjects_particles_particleComponent.html new file mode 100644 index 00000000..b84b90a7 --- /dev/null +++ b/docs/modules/core_gameobjects_particles_particleComponent.html @@ -0,0 +1 @@ +core/gameobjects/particles/particleComponent | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/particles/particleComponent

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_particles_particleEmitter.html b/docs/modules/core_gameobjects_particles_particleEmitter.html index c79795ae..e2af709f 100644 --- a/docs/modules/core_gameobjects_particles_particleEmitter.html +++ b/docs/modules/core_gameobjects_particles_particleEmitter.html @@ -1 +1 @@ -core/gameobjects/particles/particleEmitter | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/particles/particleEmitter

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/particles/particleEmitter | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/particles/particleEmitter

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_rect.html b/docs/modules/core_gameobjects_rect.html index c31823cb..f15b2c67 100644 --- a/docs/modules/core_gameobjects_rect.html +++ b/docs/modules/core_gameobjects_rect.html @@ -1 +1 @@ -core/gameobjects/rect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/rect

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/rect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_roundrect.html b/docs/modules/core_gameobjects_roundrect.html index c9e2dcea..c5231bd0 100644 --- a/docs/modules/core_gameobjects_roundrect.html +++ b/docs/modules/core_gameobjects_roundrect.html @@ -1 +1 @@ -core/gameobjects/roundrect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/roundrect

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/roundrect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/roundrect

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_sprite.html b/docs/modules/core_gameobjects_sprite.html index 6842152d..e962c4ea 100644 --- a/docs/modules/core_gameobjects_sprite.html +++ b/docs/modules/core_gameobjects_sprite.html @@ -1 +1 @@ -core/gameobjects/sprite | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/sprite

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/sprite | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_ui_button.html b/docs/modules/core_gameobjects_ui_button.html index 3f64b6d3..f9a7a80b 100644 --- a/docs/modules/core_gameobjects_ui_button.html +++ b/docs/modules/core_gameobjects_ui_button.html @@ -1 +1 @@ -core/gameobjects/ui/button | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/button

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/ui/button | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/button

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_ui_container.html b/docs/modules/core_gameobjects_ui_container.html new file mode 100644 index 00000000..5f35d0c7 --- /dev/null +++ b/docs/modules/core_gameobjects_ui_container.html @@ -0,0 +1 @@ +core/gameobjects/ui/container | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/container

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_ui_imageRect.html b/docs/modules/core_gameobjects_ui_imageRect.html index db5c3d0f..8a38536b 100644 --- a/docs/modules/core_gameobjects_ui_imageRect.html +++ b/docs/modules/core_gameobjects_ui_imageRect.html @@ -1 +1 @@ -core/gameobjects/ui/imageRect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/imageRect

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/ui/imageRect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/imageRect

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_ui_panel.html b/docs/modules/core_gameobjects_ui_panel.html index c6a6a74c..20dca51a 100644 --- a/docs/modules/core_gameobjects_ui_panel.html +++ b/docs/modules/core_gameobjects_ui_panel.html @@ -1 +1 @@ -core/gameobjects/ui/panel | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/panel

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/ui/panel | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/panel

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_ui_text.html b/docs/modules/core_gameobjects_ui_text.html index 400e3aad..b457503c 100644 --- a/docs/modules/core_gameobjects_ui_text.html +++ b/docs/modules/core_gameobjects_ui_text.html @@ -1 +1 @@ -core/gameobjects/ui/text | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/text

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/ui/text | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_gameobjects_ui_ui.html b/docs/modules/core_gameobjects_ui_ui.html index f58ee97a..894c91e9 100644 --- a/docs/modules/core_gameobjects_ui_ui.html +++ b/docs/modules/core_gameobjects_ui_ui.html @@ -1 +1 @@ -core/gameobjects/ui/ui | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/gameobjects/ui/ui

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/gameobjects/ui/ui | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_group_group.html b/docs/modules/core_group_group.html index d6f0db05..e3d19bfe 100644 --- a/docs/modules/core_group_group.html +++ b/docs/modules/core_group_group.html @@ -1 +1 @@ -core/group/group | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/group/group | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_input_input.html b/docs/modules/core_input_input.html index f0879f37..16bc45bf 100644 --- a/docs/modules/core_input_input.html +++ b/docs/modules/core_input_input.html @@ -1 +1 @@ -core/input/input | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/input/input | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_input_keyboardInput.html b/docs/modules/core_input_keyboardInput.html index 37b89b33..b5bda301 100644 --- a/docs/modules/core_input_keyboardInput.html +++ b/docs/modules/core_input_keyboardInput.html @@ -1 +1 @@ -core/input/keyboardInput | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/input/keyboardInput

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/input/keyboardInput | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_input_models_key.html b/docs/modules/core_input_models_key.html index 29780556..602e5c80 100644 --- a/docs/modules/core_input_models_key.html +++ b/docs/modules/core_input_models_key.html @@ -1 +1 @@ -core/input/models/key | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/input/models/key

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/input/models/key | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_input_models_mouse.html b/docs/modules/core_input_models_mouse.html index 0aa1db43..7330b0ce 100644 --- a/docs/modules/core_input_models_mouse.html +++ b/docs/modules/core_input_models_mouse.html @@ -1 +1 @@ -core/input/models/mouse | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/input/models/mouse

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/input/models/mouse | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_input_mouseInput.html b/docs/modules/core_input_mouseInput.html index fca374de..265ffd91 100644 --- a/docs/modules/core_input_mouseInput.html +++ b/docs/modules/core_input_mouseInput.html @@ -1 +1 @@ -core/input/mouseInput | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/input/mouseInput

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/input/mouseInput | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_input_server_inputServer.html b/docs/modules/core_input_server_inputServer.html new file mode 100644 index 00000000..94863191 --- /dev/null +++ b/docs/modules/core_input_server_inputServer.html @@ -0,0 +1 @@ +core/input/server/inputServer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/input/server/inputServer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_lights_staticLight.html b/docs/modules/core_lights_staticLight.html index 533986d4..3850c314 100644 --- a/docs/modules/core_lights_staticLight.html +++ b/docs/modules/core_lights_staticLight.html @@ -1 +1 @@ -core/lights/staticLight | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/lights/staticLight

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/lights/staticLight | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_loader_loader.html b/docs/modules/core_loader_loader.html index 17069c3b..ac4141c7 100644 --- a/docs/modules/core_loader_loader.html +++ b/docs/modules/core_loader_loader.html @@ -1 +1 @@ -core/loader/loader | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/loader/loader

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/loader/loader | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_map_map.html b/docs/modules/core_map_map.html index b24cbb85..8679eac5 100644 --- a/docs/modules/core_map_map.html +++ b/docs/modules/core_map_map.html @@ -1 +1 @@ -core/map/map | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/map/map | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_map_tile.html b/docs/modules/core_map_tile.html index 5f38acab..7c683993 100644 --- a/docs/modules/core_map_tile.html +++ b/docs/modules/core_map_tile.html @@ -1 +1 @@ -core/map/tile | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/map/tile | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_map_tilelayer.html b/docs/modules/core_map_tilelayer.html index 8b067c24..fb4434b6 100644 --- a/docs/modules/core_map_tilelayer.html +++ b/docs/modules/core_map_tilelayer.html @@ -1 +1 @@ -core/map/tilelayer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/map/tilelayer

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/map/tilelayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_map_tilemap.html b/docs/modules/core_map_tilemap.html index 057f352b..0d66878d 100644 --- a/docs/modules/core_map_tilemap.html +++ b/docs/modules/core_map_tilemap.html @@ -1 +1 @@ -core/map/tilemap | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/map/tilemap | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_map_tileset.html b/docs/modules/core_map_tileset.html index 18f51d45..8350b1ba 100644 --- a/docs/modules/core_map_tileset.html +++ b/docs/modules/core_map_tileset.html @@ -1 +1 @@ -core/map/tileset | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/map/tileset | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_math_clamp.html b/docs/modules/core_math_clamp.html index e9b4963b..ad858265 100644 --- a/docs/modules/core_math_clamp.html +++ b/docs/modules/core_math_clamp.html @@ -1,4 +1,4 @@ -core/math/clamp | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Functions

    Functions

    clamp

    • clamp(x: number, min: number, max: number): number

    Returns number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_math_lerp.html b/docs/modules/core_math_lerp.html index 65a5b668..bd33419e 100644 --- a/docs/modules/core_math_lerp.html +++ b/docs/modules/core_math_lerp.html @@ -1,4 +1,4 @@ -core/math/lerp | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Functions

    Functions

    lerp

    • lerp(start: number, end: number, amount: number): number

    Returns number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_math_randomFloat.html b/docs/modules/core_math_randomFloat.html index 2a8fdaad..1220beec 100644 --- a/docs/modules/core_math_randomFloat.html +++ b/docs/modules/core_math_randomFloat.html @@ -1,6 +1,6 @@ -core/math/randomFloat | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/math/randomFloat

    Index

    Functions

    Functions

    randomFloat

    • randomFloat(min: number, max: number, fixed?: number): number
  • Optional fixed: number
  • Returns number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_math_randomInt.html b/docs/modules/core_math_randomInt.html index f02dfdb9..99f7b119 100644 --- a/docs/modules/core_math_randomInt.html +++ b/docs/modules/core_math_randomInt.html @@ -1,6 +1,6 @@ -core/math/randomInt | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/math/randomInt

    Index

    Functions

    Functions

    randomInt

    • randomInt(min: number, max: number): number

    Returns number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_math_vector2.html b/docs/modules/core_math_vector2.html index 90580eac..40c7208b 100644 --- a/docs/modules/core_math_vector2.html +++ b/docs/modules/core_math_vector2.html @@ -1 +1 @@ -core/math/vector2 | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/math/vector2

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/math/vector2 | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_misc_pluginManager.html b/docs/modules/core_misc_pluginManager.html index 3ee2a31a..4f2932cf 100644 --- a/docs/modules/core_misc_pluginManager.html +++ b/docs/modules/core_misc_pluginManager.html @@ -1 +1 @@ -core/misc/pluginManager | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/misc/pluginManager

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/misc/pluginManager | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_models_displayList.html b/docs/modules/core_models_displayList.html index 6a913509..01d2b0fc 100644 --- a/docs/modules/core_models_displayList.html +++ b/docs/modules/core_models_displayList.html @@ -1 +1 @@ -core/models/displayList | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/models/displayList

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/models/displayList | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_models_physicsList.html b/docs/modules/core_models_physicsList.html index e20bdac3..7f831aca 100644 --- a/docs/modules/core_models_physicsList.html +++ b/docs/modules/core_models_physicsList.html @@ -1 +1 @@ -core/models/physicsList | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/models/physicsList

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/models/physicsList | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_models_area.html b/docs/modules/core_physics_models_area.html index d5083381..76933047 100644 --- a/docs/modules/core_physics_models_area.html +++ b/docs/modules/core_physics_models_area.html @@ -1 +1 @@ -core/physics/models/area | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/models/area

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/physics/models/area | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_models_collider.html b/docs/modules/core_physics_models_collider.html index b5a3d56a..3851c26f 100644 --- a/docs/modules/core_physics_models_collider.html +++ b/docs/modules/core_physics_models_collider.html @@ -1 +1 @@ -core/physics/models/collider | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/models/collider

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/physics/models/collider | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/models/collider

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_models_hitbox.html b/docs/modules/core_physics_models_hitbox.html index ae3a9e3b..30901cde 100644 --- a/docs/modules/core_physics_models_hitbox.html +++ b/docs/modules/core_physics_models_hitbox.html @@ -1 +1 @@ -core/physics/models/hitbox | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/models/hitbox

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/physics/models/hitbox | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/models/hitbox

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_physicsBody.html b/docs/modules/core_physics_physicsBody.html index 8931bec9..bf08662c 100644 --- a/docs/modules/core_physics_physicsBody.html +++ b/docs/modules/core_physics_physicsBody.html @@ -1 +1 @@ -core/physics/physicsBody | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/physicsBody

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/physics/physicsBody | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_server_physicsServer.html b/docs/modules/core_physics_server_physicsServer.html index 19e51144..57016925 100644 --- a/docs/modules/core_physics_server_physicsServer.html +++ b/docs/modules/core_physics_server_physicsServer.html @@ -1 +1 @@ -core/physics/server/physicsServer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/server/physicsServer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/physics/server/physicsServer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/server/physicsServer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_utils_circleToRectIntersect.html b/docs/modules/core_physics_utils_circleToRectIntersect.html index dea24883..8973b7a5 100644 --- a/docs/modules/core_physics_utils_circleToRectIntersect.html +++ b/docs/modules/core_physics_utils_circleToRectIntersect.html @@ -1,3 +1,3 @@ -core/physics/utils/circleToRectIntersect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/utils/circleToRectIntersect

    Index

    Functions

    circleRectCollision

    • circleRectCollision(circle: Circle | { h: number; position: { x: number; y: number }; r: number; w: number }, rect: Sprite | Rect | { h: number; position: { x: number; y: number }; w: number }): boolean

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_utils_hitboxFaceIntersect.html b/docs/modules/core_physics_utils_hitboxFaceIntersect.html index d1086d4d..824e618e 100644 --- a/docs/modules/core_physics_utils_hitboxFaceIntersect.html +++ b/docs/modules/core_physics_utils_hitboxFaceIntersect.html @@ -1 +1 @@ -core/physics/utils/hitboxFaceIntersect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/utils/hitboxFaceIntersect

    Index

    Functions

    hitboxFaceIntersect

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/physics/utils/hitboxFaceIntersect | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/utils/hitboxFaceIntersect

    Index

    Functions

    hitboxFaceIntersect

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_physics_utils_rectToRectIntersect.html b/docs/modules/core_physics_utils_rectToRectIntersect.html index ca5cab77..1a252a1f 100644 --- a/docs/modules/core_physics_utils_rectToRectIntersect.html +++ b/docs/modules/core_physics_utils_rectToRectIntersect.html @@ -1,3 +1,3 @@ -core/physics/utils/rectToRectIntersect | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/physics/utils/rectToRectIntersect

    Index

    Functions

    rectToRectIntersect

    • rectToRectIntersect(rect: Sprite | Rect | RoundRect | { h: number; position: { x: number; y: number }; w: number }, rect2: Sprite | Rect | RoundRect | { h: number; position: { x: number; y: number }; w: number }): boolean

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_renderer_baseRenderer.html b/docs/modules/core_renderer_baseRenderer.html index c4ba2735..c5235b69 100644 --- a/docs/modules/core_renderer_baseRenderer.html +++ b/docs/modules/core_renderer_baseRenderer.html @@ -1 +1 @@ -core/renderer/baseRenderer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/baseRenderer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/renderer/baseRenderer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/baseRenderer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_renderer_canvas_canvasRenderer.html b/docs/modules/core_renderer_canvas_canvasRenderer.html index 8e893db7..e593b0c8 100644 --- a/docs/modules/core_renderer_canvas_canvasRenderer.html +++ b/docs/modules/core_renderer_canvas_canvasRenderer.html @@ -1 +1 @@ -core/renderer/canvas/canvasRenderer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/canvas/canvasRenderer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/renderer/canvas/canvasRenderer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/canvas/canvasRenderer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_renderer_canvas_const_blendModes.html b/docs/modules/core_renderer_canvas_const_blendModes.html index 161e91e9..9ef17f17 100644 --- a/docs/modules/core_renderer_canvas_const_blendModes.html +++ b/docs/modules/core_renderer_canvas_const_blendModes.html @@ -1 +1 @@ -core/renderer/canvas/const/blendModes | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/canvas/const/blendModes

    Index

    Variables

    Variables

    BlendModes

    BlendModes: { color: "color"; color-burn: "color-burn"; color-dodge: "color-dodge"; copy: "copy"; darken: "darken"; destination-atop: "destination-atop"; destination-in: "destination-in"; destination-out: "destination-out"; destination-over: "destination-over"; difference: "difference"; exclusion: "exclusion"; hard-light: "hard-light"; hue: "hue"; lighten: "lighten"; lighter: "lighter"; luminosity: "luminosity"; multiply: "multiply"; overlay: "overlay"; saturation: "saturation"; screen: "screen"; soft-light: "soft-light"; source-atop: "source-atop"; source-in: "source-in"; source-out: "source-out"; source-over: "source-over"; xor: "xor" } = ...

    Type declaration

    • color: "color"
    • color-burn: "color-burn"
    • color-dodge: "color-dodge"
    • copy: "copy"
    • darken: "darken"
    • destination-atop: "destination-atop"
    • destination-in: "destination-in"
    • destination-out: "destination-out"
    • destination-over: "destination-over"
    • difference: "difference"
    • exclusion: "exclusion"
    • hard-light: "hard-light"
    • hue: "hue"
    • lighten: "lighten"
    • lighter: "lighter"
    • luminosity: "luminosity"
    • multiply: "multiply"
    • overlay: "overlay"
    • saturation: "saturation"
    • screen: "screen"
    • soft-light: "soft-light"
    • source-atop: "source-atop"
    • source-in: "source-in"
    • source-out: "source-out"
    • source-over: "source-over"
    • xor: "xor"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/renderer/canvas/const/blendModes | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/canvas/const/blendModes

    Index

    Variables

    Variables

    BlendModes

    BlendModes: { color: "color"; color-burn: "color-burn"; color-dodge: "color-dodge"; copy: "copy"; darken: "darken"; destination-atop: "destination-atop"; destination-in: "destination-in"; destination-out: "destination-out"; destination-over: "destination-over"; difference: "difference"; exclusion: "exclusion"; hard-light: "hard-light"; hue: "hue"; lighten: "lighten"; lighter: "lighter"; luminosity: "luminosity"; multiply: "multiply"; overlay: "overlay"; saturation: "saturation"; screen: "screen"; soft-light: "soft-light"; source-atop: "source-atop"; source-in: "source-in"; source-out: "source-out"; source-over: "source-over"; xor: "xor" } = ...

    Type declaration

    • color: "color"
    • color-burn: "color-burn"
    • color-dodge: "color-dodge"
    • copy: "copy"
    • darken: "darken"
    • destination-atop: "destination-atop"
    • destination-in: "destination-in"
    • destination-out: "destination-out"
    • destination-over: "destination-over"
    • difference: "difference"
    • exclusion: "exclusion"
    • hard-light: "hard-light"
    • hue: "hue"
    • lighten: "lighten"
    • lighter: "lighter"
    • luminosity: "luminosity"
    • multiply: "multiply"
    • overlay: "overlay"
    • saturation: "saturation"
    • screen: "screen"
    • soft-light: "soft-light"
    • source-atop: "source-atop"
    • source-in: "source-in"
    • source-out: "source-out"
    • source-over: "source-over"
    • xor: "xor"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_renderer_canvas_pipeline_rendererPipeline.html b/docs/modules/core_renderer_canvas_pipeline_rendererPipeline.html index 5e3d2443..de0f3c27 100644 --- a/docs/modules/core_renderer_canvas_pipeline_rendererPipeline.html +++ b/docs/modules/core_renderer_canvas_pipeline_rendererPipeline.html @@ -1 +1 @@ -core/renderer/canvas/pipeline/rendererPipeline | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/canvas/pipeline/rendererPipeline

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/renderer/canvas/pipeline/rendererPipeline | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/canvas/pipeline/rendererPipeline

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_renderer_models_color.html b/docs/modules/core_renderer_models_color.html new file mode 100644 index 00000000..30184b2c --- /dev/null +++ b/docs/modules/core_renderer_models_color.html @@ -0,0 +1 @@ +core/renderer/models/color | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/renderer/models/color

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_scene.html b/docs/modules/core_scene.html index fbdc8431..782c5ddf 100644 --- a/docs/modules/core_scene.html +++ b/docs/modules/core_scene.html @@ -1 +1 @@ -core/scene | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/scene | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_sound_models_baseSoundPlayer.html b/docs/modules/core_sound_models_baseSoundPlayer.html new file mode 100644 index 00000000..1ee58b7c --- /dev/null +++ b/docs/modules/core_sound_models_baseSoundPlayer.html @@ -0,0 +1 @@ +core/sound/models/baseSoundPlayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/sound/models/baseSoundPlayer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_sound_models_htmlSoundPlayer.html b/docs/modules/core_sound_models_htmlSoundPlayer.html new file mode 100644 index 00000000..189cfe21 --- /dev/null +++ b/docs/modules/core_sound_models_htmlSoundPlayer.html @@ -0,0 +1 @@ +core/sound/models/htmlSoundPlayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/sound/models/htmlSoundPlayer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_sound_models_misc_soundSprite.html b/docs/modules/core_sound_models_misc_soundSprite.html new file mode 100644 index 00000000..84b695f1 --- /dev/null +++ b/docs/modules/core_sound_models_misc_soundSprite.html @@ -0,0 +1 @@ +core/sound/models/misc/soundSprite | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/sound/models/misc/soundSprite

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_sound_models_webSoundPlayer.html b/docs/modules/core_sound_models_webSoundPlayer.html new file mode 100644 index 00000000..f39f8ffb --- /dev/null +++ b/docs/modules/core_sound_models_webSoundPlayer.html @@ -0,0 +1 @@ +core/sound/models/webSoundPlayer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/sound/models/webSoundPlayer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_sound_sound.html b/docs/modules/core_sound_sound.html new file mode 100644 index 00000000..184dd9a4 --- /dev/null +++ b/docs/modules/core_sound_sound.html @@ -0,0 +1 @@ +core/sound/sound | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_sound_soundPlayer.html b/docs/modules/core_sound_soundPlayer.html deleted file mode 100644 index 47dd47e4..00000000 --- a/docs/modules/core_sound_soundPlayer.html +++ /dev/null @@ -1 +0,0 @@ -core/sound/soundPlayer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/sound/soundPlayer

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_storage_cacheManager.html b/docs/modules/core_storage_cacheManager.html index f294a098..ba744d78 100644 --- a/docs/modules/core_storage_cacheManager.html +++ b/docs/modules/core_storage_cacheManager.html @@ -1 +1 @@ -core/storage/cacheManager | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/storage/cacheManager

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/storage/cacheManager | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/storage/cacheManager

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_texture_texture.html b/docs/modules/core_texture_texture.html index 077342c8..776f3c85 100644 --- a/docs/modules/core_texture_texture.html +++ b/docs/modules/core_texture_texture.html @@ -1 +1 @@ -core/texture/texture | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/texture/texture

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/texture/texture | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Classes

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_texture_textureAtlas.html b/docs/modules/core_texture_textureAtlas.html index 52f9fa4e..26937c30 100644 --- a/docs/modules/core_texture_textureAtlas.html +++ b/docs/modules/core_texture_textureAtlas.html @@ -1 +1 @@ -core/texture/textureAtlas | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/texture/textureAtlas

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/texture/textureAtlas | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/texture/textureAtlas

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_texture_textureBase.html b/docs/modules/core_texture_textureBase.html index 08d318a8..8152a711 100644 --- a/docs/modules/core_texture_textureBase.html +++ b/docs/modules/core_texture_textureBase.html @@ -1 +1 @@ -core/texture/textureBase | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/texture/textureBase

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/texture/textureBase | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/core_texture_textureSheet.html b/docs/modules/core_texture_textureSheet.html index 16e45b61..6fb94e73 100644 --- a/docs/modules/core_texture_textureSheet.html +++ b/docs/modules/core_texture_textureSheet.html @@ -1 +1 @@ -core/texture/textureSheet | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/texture/textureSheet

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +core/texture/textureSheet | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Module core/texture/textureSheet

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Animation.html b/docs/modules/index.Duck.Classes.Animation.html index 488e0f88..6edc78c5 100644 --- a/docs/modules/index.Duck.Classes.Animation.html +++ b/docs/modules/index.Duck.Classes.Animation.html @@ -1 +1 @@ -Animation | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Animation

    Animation: typeof Animation = AnimationClass

    AnimationFrame

    AnimationFrame: typeof AnimationFrame = AnimationFrameClass

    AnimationManager

    AnimationManager: typeof AnimationManager = AnimationManagerClass

    AnimationState

    AnimationState: typeof AnimationState = AnimationStateClass

    StateMachine

    StateMachine: typeof StateMachine = StateMachineClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Animation | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Animation

    Animation: typeof Animation = AnimationClass

    AnimationFrame

    AnimationFrame: typeof AnimationFrame = AnimationFrameClass

    AnimationManager

    AnimationManager: typeof AnimationManager = AnimationManagerClass

    AnimationState

    AnimationState: typeof AnimationState = AnimationStateClass

    StateMachine

    StateMachine: typeof StateMachine = StateMachineClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Base.html b/docs/modules/index.Duck.Classes.Base.html index 4b215c64..22bb3d1c 100644 --- a/docs/modules/index.Duck.Classes.Base.html +++ b/docs/modules/index.Duck.Classes.Base.html @@ -1 +1 @@ -Base | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Amount

    Amount: typeof default = AmountClass

    Once

    Once: typeof default = OnceClass

    Render

    Render: typeof default = RenderClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Base | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Amount

    Amount: typeof default = AmountClass

    Once

    Once: typeof default = OnceClass

    Render

    Render: typeof default = RenderClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Cameras.html b/docs/modules/index.Duck.Classes.Cameras.html index 6c3025d0..3229ea51 100644 --- a/docs/modules/index.Duck.Classes.Cameras.html +++ b/docs/modules/index.Duck.Classes.Cameras.html @@ -1 +1 @@ -Cameras | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Camera

    Camera: typeof Camera = CameraClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Cameras | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Camera

    Camera: typeof Camera = CameraClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Effects.Presets.html b/docs/modules/index.Duck.Classes.Effects.Presets.html index f41b644d..bfbbaa24 100644 --- a/docs/modules/index.Duck.Classes.Effects.Presets.html +++ b/docs/modules/index.Duck.Classes.Effects.Presets.html @@ -1 +1 @@ -Presets | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    ExplosionEffect

    ExplosionEffect: typeof ExplosionEffect = ExplosionEffectClass

    SmokeEffect

    SmokeEffect: typeof SmokeEffect = SmokeEffectClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Presets | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    ExplosionEffect

    ExplosionEffect: typeof ExplosionEffect = ExplosionEffectClass

    SmokeEffect

    SmokeEffect: typeof SmokeEffect = SmokeEffectClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Effects.html b/docs/modules/index.Duck.Classes.Effects.html index c90d5469..a858297a 100644 --- a/docs/modules/index.Duck.Classes.Effects.html +++ b/docs/modules/index.Duck.Classes.Effects.html @@ -1 +1 @@ -Effects | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Variables

    Variables

    Effect

    Effect: typeof Effect = EffectClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Effects | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Variables

    Variables

    Effect

    Effect: typeof Effect = EffectClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.GameObjects.Misc.html b/docs/modules/index.Duck.Classes.GameObjects.Misc.html index 4ce615da..c7fe505e 100644 --- a/docs/modules/index.Duck.Classes.GameObjects.Misc.html +++ b/docs/modules/index.Duck.Classes.GameObjects.Misc.html @@ -1 +1 @@ -Misc | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    CanvasModulate

    CanvasModulate: typeof CanvasModulate = CanvasModulateClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Misc | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    CanvasModulate

    CanvasModulate: typeof CanvasModulate = CanvasModulateClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.GameObjects.Particles.html b/docs/modules/index.Duck.Classes.GameObjects.Particles.html index d4605441..e7ed22ba 100644 --- a/docs/modules/index.Duck.Classes.GameObjects.Particles.html +++ b/docs/modules/index.Duck.Classes.GameObjects.Particles.html @@ -1 +1 @@ -Particles | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Particle

    Particle: typeof Particle = ParticleClass

    ParticleEmitter

    ParticleEmitter: typeof ParticleEmitter = ParticleEmitterClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Particles | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Particle

    Particle: typeof Particle = ParticleClass

    ParticleEmitter

    ParticleEmitter: typeof ParticleEmitter = ParticleEmitterClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.GameObjects.UI.html b/docs/modules/index.Duck.Classes.GameObjects.UI.html index a0d9f4a4..1d674c2f 100644 --- a/docs/modules/index.Duck.Classes.GameObjects.UI.html +++ b/docs/modules/index.Duck.Classes.GameObjects.UI.html @@ -1 +1 @@ -UI | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Button

    Button: typeof Button = ButtonClass

    Text

    Text: typeof Text = TextClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +UI | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Button

    Button: typeof Button = ButtonClass

    Text

    Text: typeof Text = TextClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.GameObjects.html b/docs/modules/index.Duck.Classes.GameObjects.html index 2b66a07e..82cf2f89 100644 --- a/docs/modules/index.Duck.Classes.GameObjects.html +++ b/docs/modules/index.Duck.Classes.GameObjects.html @@ -1 +1 @@ -GameObjects | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Circle

    Circle: typeof Circle = CircleClass

    GameObject

    GameObject: typeof GameObject = GameObjectClass

    Rect

    Rect: typeof Rect = RectClass

    RoundRect

    RoundRect: typeof RoundRect = RoundRectClass

    Sprite

    Sprite: typeof Sprite = SpriteClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +GameObjects | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Circle

    Circle: typeof Circle = CircleClass

    GameObject

    GameObject: typeof GameObject = GameObjectClass

    Rect

    Rect: typeof Rect = RectClass

    RoundRect

    RoundRect: typeof RoundRect = RoundRectClass

    Sprite

    Sprite: typeof Sprite = SpriteClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Input.Models.html b/docs/modules/index.Duck.Classes.Input.Models.html index 494a6896..1b721f3e 100644 --- a/docs/modules/index.Duck.Classes.Input.Models.html +++ b/docs/modules/index.Duck.Classes.Input.Models.html @@ -1 +1 @@ -Models | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Key

    Key: typeof Key = KeyClass

    Mouse

    Mouse: typeof Mouse = MouseClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Models | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Key

    Key: typeof Key = KeyClass

    Mouse

    Mouse: typeof Mouse = MouseClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Input.html b/docs/modules/index.Duck.Classes.Input.html index 20edb194..091490a7 100644 --- a/docs/modules/index.Duck.Classes.Input.html +++ b/docs/modules/index.Duck.Classes.Input.html @@ -1 +1 @@ -Input | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Input

    Input: typeof Input = InputClass

    KeyboardInput

    KeyboardInput: typeof KeyboardInput = KeyboardInputClass

    MouseInput

    MouseInput: typeof MouseInput = MouseInputClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Input | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Input

    Input: typeof Input = InputClass

    KeyboardInput

    KeyboardInput: typeof KeyboardInput = KeyboardInputClass

    MouseInput

    MouseInput: typeof MouseInput = MouseInputClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Lights.html b/docs/modules/index.Duck.Classes.Lights.html index 641b8871..bef08566 100644 --- a/docs/modules/index.Duck.Classes.Lights.html +++ b/docs/modules/index.Duck.Classes.Lights.html @@ -1 +1 @@ -Lights | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    StaticLight

    StaticLight: typeof StaticLight = StaticLightClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Lights | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    StaticLight

    StaticLight: typeof StaticLight = StaticLightClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Map.html b/docs/modules/index.Duck.Classes.Map.html index 06b618c7..5035caed 100644 --- a/docs/modules/index.Duck.Classes.Map.html +++ b/docs/modules/index.Duck.Classes.Map.html @@ -1 +1 @@ -Map | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Map

    Map: typeof Map = MapClass

    TileMap

    TileMap: typeof TileMap = TileMapClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Map | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Map

    Map: typeof Map = MapClass

    TileMap

    TileMap: typeof TileMap = TileMapClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Math.html b/docs/modules/index.Duck.Classes.Math.html index d359cd35..c40df3b9 100644 --- a/docs/modules/index.Duck.Classes.Math.html +++ b/docs/modules/index.Duck.Classes.Math.html @@ -1 +1 @@ -Math | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Vector2

    Vector2: typeof Vector2 = Vector2Class

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Math | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Vector2

    Vector2: typeof Vector2 = Vector2Class

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Misc.html b/docs/modules/index.Duck.Classes.Misc.html index 3e3e8c9e..e4a028fe 100644 --- a/docs/modules/index.Duck.Classes.Misc.html +++ b/docs/modules/index.Duck.Classes.Misc.html @@ -1 +1 @@ -Misc | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    CacheManager

    CacheManager: typeof CacheManager = CacheManagerClass

    Cutscene

    Cutscene: typeof Cutscene = CutsceneClass

    Group

    Group: typeof Group = GroupClass

    Loader

    Loader: typeof Loader = LoaderClass

    PluginManager

    PluginManager: typeof PluginManager = PluginManagerClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Misc | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    CacheManager

    CacheManager: typeof CacheManager = CacheManagerClass

    Cutscene

    Cutscene: typeof Cutscene = CutsceneClass

    Group

    Group: typeof Group = GroupClass

    Loader

    Loader: typeof Loader = LoaderClass

    PluginManager

    PluginManager: typeof PluginManager = PluginManagerClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Models.html b/docs/modules/index.Duck.Classes.Models.html index 009ce383..e57f11d1 100644 --- a/docs/modules/index.Duck.Classes.Models.html +++ b/docs/modules/index.Duck.Classes.Models.html @@ -1 +1 @@ -Models | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    DisplayList

    DisplayList: typeof DisplayList = DisplayListClass

    PhysicsList

    PhysicsList: typeof PhysicsList = PhysicsListClass

    Texture

    Texture: typeof Texture = TextureClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Models | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Color

    Color: typeof Color = ColorClass

    DisplayList

    DisplayList: typeof DisplayList = DisplayListClass

    PhysicsList

    PhysicsList: typeof PhysicsList = PhysicsListClass

    Texture

    Texture: typeof Texture = TextureClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Physics.Models.html b/docs/modules/index.Duck.Classes.Physics.Models.html index f48295eb..7a3e32fc 100644 --- a/docs/modules/index.Duck.Classes.Physics.Models.html +++ b/docs/modules/index.Duck.Classes.Physics.Models.html @@ -1 +1 @@ -Models | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Area

    Area: typeof Area = AreaClass

    Hitbox

    Hitbox: typeof Hitbox = HitboxClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Models | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    Area

    Area: typeof Area = AreaClass

    Hitbox

    Hitbox: typeof Hitbox = HitboxClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Physics.html b/docs/modules/index.Duck.Classes.Physics.html index bb9145b5..3e4ca4ba 100644 --- a/docs/modules/index.Duck.Classes.Physics.html +++ b/docs/modules/index.Duck.Classes.Physics.html @@ -1 +1 @@ -Physics | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Collider

    Collider: typeof Collider = ColliderClass

    PhysicsBody

    PhysicsBody: typeof PhysicsBody = PhysicsBodyClass

    PhysicsServer

    PhysicsServer: typeof PhysicsServer = PhysicsServerClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Physics | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Collider

    Collider: typeof Collider = ColliderClass

    PhysicsBody

    PhysicsBody: typeof PhysicsBody = PhysicsBodyClass

    PhysicsServer

    PhysicsServer: typeof PhysicsServer = PhysicsServerClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.Sound.html b/docs/modules/index.Duck.Classes.Sound.html index 612a3629..b9902262 100644 --- a/docs/modules/index.Duck.Classes.Sound.html +++ b/docs/modules/index.Duck.Classes.Sound.html @@ -1 +1 @@ -Sound | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    SoundPlayer

    SoundPlayer: typeof SoundPlayer = SoundPlayerClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Sound | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    HTMLSoundPlayer

    HTMLSoundPlayer: typeof HTMLSoundPlayer = HTMLSoundPlayerClass

    Sound

    Sound: typeof Sound = SoundClass

    SoundSprite

    SoundSprite: typeof SoundSprite = SoundSpriteClass

    WebSoundPlayer

    WebSoundPlayer: typeof WebSoundPlayer = WebSoundPlayerClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Classes.html b/docs/modules/index.Duck.Classes.html index b92cc4b9..3654aca4 100644 --- a/docs/modules/index.Duck.Classes.html +++ b/docs/modules/index.Duck.Classes.html @@ -1,5 +1,5 @@ -Classes | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.Classes

    +Classes | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.Classes

    memberof

    Duck

    description

    All classes are stored here so that it can be extended.

    since

    2.0.0

    -

    Index

    Variables

    Game

    Game: typeof Game = GameClass

    Scene

    Scene: typeof Scene = SceneClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Index

    Variables

    Game

    Game: typeof Game = GameClass

    Scene

    Scene: typeof Scene = SceneClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Layers.Rendering.html b/docs/modules/index.Duck.Layers.Rendering.html index fe13030f..3ae5d5c8 100644 --- a/docs/modules/index.Duck.Layers.Rendering.html +++ b/docs/modules/index.Duck.Layers.Rendering.html @@ -1 +1 @@ -Rendering | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    zIndex

    zIndex: { button: number; canvasModulate: number; fades: number; gameobject: number; graphicDebug: number; particle: number; text: number } = ...

    Type declaration

    • button: number
    • canvasModulate: number
    • fades: number
    • gameobject: number
    • graphicDebug: number
    • particle: number
    • text: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Rendering | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Variables

    Variables

    zIndex

    zIndex: { button: number; canvasModulate: number; fades: number; gameobject: number; graphicDebug: number; particle: number; text: number } = ...

    Type declaration

    • button: number
    • canvasModulate: number
    • fades: number
    • gameobject: number
    • graphicDebug: number
    • particle: number
    • text: number

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Layers.html b/docs/modules/index.Duck.Layers.html index ed965a67..b251577d 100644 --- a/docs/modules/index.Duck.Layers.html +++ b/docs/modules/index.Duck.Layers.html @@ -1,5 +1,5 @@ -Layers | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.Layers

    +Layers | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.Layers

    memberof

    Duck

    description

    All rendering zIndexes are stored here.

    since

    2.0.0

    -

    Index

    Namespaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Index

    Namespaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Animation.html b/docs/modules/index.Duck.TypeClasses.Animation.html index c132f530..f0b86f0c 100644 --- a/docs/modules/index.Duck.TypeClasses.Animation.html +++ b/docs/modules/index.Duck.TypeClasses.Animation.html @@ -1 +1 @@ -Animation | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Animation

    Animation: Animation

    AnimationFrame

    AnimationFrame: AnimationFrame

    AnimationManager

    AnimationManager: AnimationManager

    AnimationState

    AnimationState: AnimationState

    StateMachine

    StateMachine: StateMachine

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Animation | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Animation

    Animation: Animation

    AnimationFrame

    AnimationFrame: AnimationFrame

    AnimationManager

    AnimationManager: AnimationManager

    AnimationState

    AnimationState: AnimationState

    StateMachine

    StateMachine: StateMachine

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Base.html b/docs/modules/index.Duck.TypeClasses.Base.html index 7e3abd13..79b3fd5d 100644 --- a/docs/modules/index.Duck.TypeClasses.Base.html +++ b/docs/modules/index.Duck.TypeClasses.Base.html @@ -1 +1 @@ -Base | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Amount

    Amount: AmountClass

    Once

    Once: OnceClass

    Render

    Render: RenderClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Base | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Amount

    Amount: AmountClass

    Once

    Once: OnceClass

    Render

    Render: RenderClass

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Cameras.html b/docs/modules/index.Duck.TypeClasses.Cameras.html index c12d5791..066da902 100644 --- a/docs/modules/index.Duck.TypeClasses.Cameras.html +++ b/docs/modules/index.Duck.TypeClasses.Cameras.html @@ -1 +1 @@ -Cameras | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Camera

    Camera: Camera

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Cameras | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Camera

    Camera: Camera

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Effects.Presets.html b/docs/modules/index.Duck.TypeClasses.Effects.Presets.html index 54897b24..67acd19d 100644 --- a/docs/modules/index.Duck.TypeClasses.Effects.Presets.html +++ b/docs/modules/index.Duck.TypeClasses.Effects.Presets.html @@ -1 +1 @@ -Presets | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    ExplosionEffect

    ExplosionEffect: ExplosionEffect

    SmokeEffect

    SmokeEffect: SmokeEffect

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Presets | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    ExplosionEffect

    ExplosionEffect: ExplosionEffect

    SmokeEffect

    SmokeEffect: SmokeEffect

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Effects.html b/docs/modules/index.Duck.TypeClasses.Effects.html index 2e9495f4..d5bf985f 100644 --- a/docs/modules/index.Duck.TypeClasses.Effects.html +++ b/docs/modules/index.Duck.TypeClasses.Effects.html @@ -1 +1 @@ -Effects | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Type aliases

    Type aliases

    Effect

    Effect: Effect

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Effects | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Type aliases

    Type aliases

    Effect

    Effect: Effect

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.GameObjects.Misc.html b/docs/modules/index.Duck.TypeClasses.GameObjects.Misc.html index 61d5dc80..f4cd11eb 100644 --- a/docs/modules/index.Duck.TypeClasses.GameObjects.Misc.html +++ b/docs/modules/index.Duck.TypeClasses.GameObjects.Misc.html @@ -1 +1 @@ -Misc | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    CanvasModulate

    CanvasModulate: CanvasModulate

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Misc | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    CanvasModulate

    CanvasModulate: CanvasModulate

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.GameObjects.Particles.html b/docs/modules/index.Duck.TypeClasses.GameObjects.Particles.html index 730bba9f..cf991fbb 100644 --- a/docs/modules/index.Duck.TypeClasses.GameObjects.Particles.html +++ b/docs/modules/index.Duck.TypeClasses.GameObjects.Particles.html @@ -1 +1 @@ -Particles | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Particle

    Particle: Particle

    ParticleEmitter

    ParticleEmitter: ParticleEmitter

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Particles | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Particle

    Particle: Particle

    ParticleEmitter

    ParticleEmitter: ParticleEmitter

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.GameObjects.UI.html b/docs/modules/index.Duck.TypeClasses.GameObjects.UI.html index d7fedf50..16f623e4 100644 --- a/docs/modules/index.Duck.TypeClasses.GameObjects.UI.html +++ b/docs/modules/index.Duck.TypeClasses.GameObjects.UI.html @@ -1 +1 @@ -UI | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Button

    Button: Button

    Text

    Text: Text

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +UI | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Button

    Button: Button

    Text

    Text: Text

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.GameObjects.html b/docs/modules/index.Duck.TypeClasses.GameObjects.html index 2dc35a20..de399f86 100644 --- a/docs/modules/index.Duck.TypeClasses.GameObjects.html +++ b/docs/modules/index.Duck.TypeClasses.GameObjects.html @@ -1 +1 @@ -GameObjects | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Circle

    Circle: Circle

    GameObject

    GameObject<t>: GameObject<t>

    Type parameters

    Rect

    Rect: Rect

    RoundRect

    RoundRect: RoundRect

    Sprite

    Sprite: Sprite

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +GameObjects | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Circle

    Circle: Circle

    GameObject

    GameObject<t>: GameObject<t>

    Type parameters

    Rect

    Rect: Rect

    RoundRect

    RoundRect: RoundRect

    Sprite

    Sprite: Sprite

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Input.Models.html b/docs/modules/index.Duck.TypeClasses.Input.Models.html index c65f2ee7..94475983 100644 --- a/docs/modules/index.Duck.TypeClasses.Input.Models.html +++ b/docs/modules/index.Duck.TypeClasses.Input.Models.html @@ -1 +1 @@ -Models | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Key

    Key: Key

    Mouse

    Mouse: Mouse

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Models | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Key

    Key: Key

    Mouse

    Mouse: Mouse

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Input.html b/docs/modules/index.Duck.TypeClasses.Input.html index 9e18a822..8adef662 100644 --- a/docs/modules/index.Duck.TypeClasses.Input.html +++ b/docs/modules/index.Duck.TypeClasses.Input.html @@ -1 +1 @@ -Input | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Input

    Input: Input

    KeyboardInput

    KeyboardInput: KeyboardInput

    MouseInput

    MouseInput: MouseInput

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Input | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Input

    Input: Input

    KeyboardInput

    KeyboardInput: KeyboardInput

    MouseInput

    MouseInput: MouseInput

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Lights.html b/docs/modules/index.Duck.TypeClasses.Lights.html index fb773a3a..92799758 100644 --- a/docs/modules/index.Duck.TypeClasses.Lights.html +++ b/docs/modules/index.Duck.TypeClasses.Lights.html @@ -1 +1 @@ -Lights | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    StaticLight

    StaticLight: StaticLight

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Lights | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    StaticLight

    StaticLight: StaticLight

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Map.html b/docs/modules/index.Duck.TypeClasses.Map.html index 67657bf0..b58b282c 100644 --- a/docs/modules/index.Duck.TypeClasses.Map.html +++ b/docs/modules/index.Duck.TypeClasses.Map.html @@ -1 +1 @@ -Map | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Map

    Map: Map

    TileMap

    TileMap: TileMap

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Map | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Map

    Map: Map

    TileMap

    TileMap: TileMap

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Math.html b/docs/modules/index.Duck.TypeClasses.Math.html index 98e65efe..a24e52c4 100644 --- a/docs/modules/index.Duck.TypeClasses.Math.html +++ b/docs/modules/index.Duck.TypeClasses.Math.html @@ -1 +1 @@ -Math | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Vector2

    Vector2: Vector2

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Math | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Vector2

    Vector2: Vector2

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Misc.html b/docs/modules/index.Duck.TypeClasses.Misc.html index fd90f23c..7bde478d 100644 --- a/docs/modules/index.Duck.TypeClasses.Misc.html +++ b/docs/modules/index.Duck.TypeClasses.Misc.html @@ -1 +1 @@ -Misc | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    CacheManager

    CacheManager: CacheManager

    Cutscene

    Cutscene: Cutscene

    Group

    Group<t>: Group<t>

    Type parameters

    • t

    Loader

    Loader: Loader

    PluginManager

    PluginManager: PluginManager

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Misc | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    CacheManager

    CacheManager: CacheManager

    Cutscene

    Cutscene: Cutscene

    Group

    Group<t>: Group<t>

    Type parameters

    • t

    Loader

    Loader: Loader

    PluginManager

    PluginManager: PluginManager

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Models.html b/docs/modules/index.Duck.TypeClasses.Models.html index 9484d929..b3844326 100644 --- a/docs/modules/index.Duck.TypeClasses.Models.html +++ b/docs/modules/index.Duck.TypeClasses.Models.html @@ -1 +1 @@ -Models | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    DisplayList

    DisplayList: DisplayList

    PhysicsList

    PhysicsList: PhysicsList

    Texture

    Texture<t>: Texture<t>

    Type parameters

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Models | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Color

    Color: Color

    DisplayList

    DisplayList: DisplayList

    PhysicsList

    PhysicsList: PhysicsList

    Texture

    Texture<t>: Texture<t>

    Type parameters

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Physics.Models.html b/docs/modules/index.Duck.TypeClasses.Physics.Models.html index 1976952c..5fb12665 100644 --- a/docs/modules/index.Duck.TypeClasses.Physics.Models.html +++ b/docs/modules/index.Duck.TypeClasses.Physics.Models.html @@ -1 +1 @@ -Models | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Area

    Area: Area

    Hitbox

    Hitbox: Hitbox

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Models | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    Area

    Area: Area

    Hitbox

    Hitbox: Hitbox

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Physics.html b/docs/modules/index.Duck.TypeClasses.Physics.html index c59416d5..b5504f0e 100644 --- a/docs/modules/index.Duck.TypeClasses.Physics.html +++ b/docs/modules/index.Duck.TypeClasses.Physics.html @@ -1 +1 @@ -Physics | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Collider

    Collider: Collider

    PhysicsBody

    PhysicsBody<t>: PhysicsBody<t>

    Type parameters

    PhysicsServer

    PhysicsServer: PhysicsServer

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Physics | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Collider

    Collider: Collider

    PhysicsBody

    PhysicsBody<t>: PhysicsBody<t>

    Type parameters

    PhysicsServer

    PhysicsServer: PhysicsServer

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.Sound.html b/docs/modules/index.Duck.TypeClasses.Sound.html index 4b7e78ac..d21a2155 100644 --- a/docs/modules/index.Duck.TypeClasses.Sound.html +++ b/docs/modules/index.Duck.TypeClasses.Sound.html @@ -1 +1 @@ -Sound | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    SoundPlayer

    SoundPlayer: SoundPlayer

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Sound | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    HTMLSoundPlayer

    HTMLSoundPlayer: HTMLSoundPlayer

    Sound

    Sound: Sound

    SoundSprite

    SoundSprite: SoundSprite

    WebSoundPlayer

    WebSoundPlayer: WebSoundPlayer

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.TypeClasses.html b/docs/modules/index.Duck.TypeClasses.html index baf12f6a..eb543ad0 100644 --- a/docs/modules/index.Duck.TypeClasses.html +++ b/docs/modules/index.Duck.TypeClasses.html @@ -1,5 +1,5 @@ -TypeClasses | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.TypeClasses

    +TypeClasses | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.TypeClasses

    memberof

    Duck

    description

    All type classes are stored here so that it can be referenced.

    since

    2.0.0

    -

    Index

    Type aliases

    Game

    Game: Game

    Scene

    Scene: Scene

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Index

    Type aliases

    Game

    Game: Game

    Scene

    Scene: Scene

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Animation.html b/docs/modules/index.Duck.Types.Animation.html index 4b3e6487..ee09dcaa 100644 --- a/docs/modules/index.Duck.Types.Animation.html +++ b/docs/modules/index.Duck.Types.Animation.html @@ -1 +1 @@ -Animation | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Animation | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Camera.html b/docs/modules/index.Duck.Types.Camera.html index 39c84353..9616c4f6 100644 --- a/docs/modules/index.Duck.Types.Camera.html +++ b/docs/modules/index.Duck.Types.Camera.html @@ -1 +1 @@ -Camera | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Camera | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Collider.html b/docs/modules/index.Duck.Types.Collider.html index 9e18cb17..b29c7627 100644 --- a/docs/modules/index.Duck.Types.Collider.html +++ b/docs/modules/index.Duck.Types.Collider.html @@ -1 +1 @@ -Collider | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    CollisionResponseType

    CollisionResponseType: "none" | "top" | "left" | "right" | "bottom"

    ShapeString

    ShapeString: "rect" | "circle" | "roundrect" | "sprite"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Collider | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    CollisionResponseType

    CollisionResponseType: "none" | "top" | "left" | "right" | "bottom"

    ShapeString

    ShapeString: "rect" | "circle" | "roundrect" | "sprite"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Cutscene.html b/docs/modules/index.Duck.Types.Cutscene.html index 3fb33069..42a859fe 100644 --- a/docs/modules/index.Duck.Types.Cutscene.html +++ b/docs/modules/index.Duck.Types.Cutscene.html @@ -1 +1 @@ -Cutscene | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    OnListenerType

    OnListenerType: "END" | "START" | "NEXT"

    StepType

    StepType: "MOVE" | "DRAW" | "FUNC" | "CAMERA_ZOOM" | "CAMERA_FOV" | "CAMERA_MOVE" | "CAMERA_SHAKE" | "CAMERA_START_FOLLOW" | "CAMERA_STOP_FOLLOW"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Cutscene | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    OnListenerType

    OnListenerType: "END" | "START" | "NEXT"

    StepType

    StepType: "MOVE" | "DRAW" | "FUNC" | "CAMERA_ZOOM" | "CAMERA_FOV" | "CAMERA_MOVE" | "CAMERA_SHAKE" | "CAMERA_START_FOLLOW" | "CAMERA_STOP_FOLLOW"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Game.html b/docs/modules/index.Duck.Types.Game.html index b1355fdc..d5f97a7b 100644 --- a/docs/modules/index.Duck.Types.Game.html +++ b/docs/modules/index.Duck.Types.Game.html @@ -1 +1 @@ -Game | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Game | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.GamepadInput.html b/docs/modules/index.Duck.Types.GamepadInput.html index 12059785..397539e7 100644 --- a/docs/modules/index.Duck.Types.GamepadInput.html +++ b/docs/modules/index.Duck.Types.GamepadInput.html @@ -1 +1 @@ -GamepadInput | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Mapping

    Mapping: typeof XboxMapping | typeof PlaystationMapping

    MappingType

    MappingType: "Xbox" | "Playstation"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +GamepadInput | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Mapping

    Mapping: typeof XboxMapping | typeof PlaystationMapping

    MappingType

    MappingType: "Xbox" | "Playstation"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Group.html b/docs/modules/index.Duck.Types.Group.html index 231278a0..1c43fc5d 100644 --- a/docs/modules/index.Duck.Types.Group.html +++ b/docs/modules/index.Duck.Types.Group.html @@ -1 +1 @@ -Group | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Type aliases

    Type aliases

    Filter

    Filter: "gameobject" | "lights" | "ui" | "physics" | "cameras"

    ListenerType

    ListenerType: "ADD" | "REMOVE"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Group | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Type aliases

    Type aliases

    Filter

    Filter: "gameobject" | "lights" | "ui" | "physics" | "cameras"

    ListenerType

    ListenerType: "ADD" | "REMOVE"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Helper.html b/docs/modules/index.Duck.Types.Helper.html index 750478c0..8647c17d 100644 --- a/docs/modules/index.Duck.Types.Helper.html +++ b/docs/modules/index.Duck.Types.Helper.html @@ -1 +1 @@ -Helper | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    AlphaRange

    AlphaRange: 0 | 0.01 | 0.02 | 0.03 | 0.04 | 0.05 | 0.06 | 0.07 | 0.08 | 0.09 | 0.1 | 0.11 | 0.12 | 0.13 | 0.14 | 0.15 | 0.16 | 0.17 | 0.18 | 0.19 | 0.2 | 0.21 | 0.22 | 0.23 | 0.24 | 0.25 | 0.26 | 0.27 | 0.28 | 0.29 | 0.3 | 0.31 | 0.32 | 0.33 | 0.34 | 0.35 | 0.36 | 0.37 | 0.38 | 0.39 | 0.4 | 0.41 | 0.42 | 0.43 | 0.44 | 0.45 | 0.46 | 0.47 | 0.48 | 0.49 | 0.5 | 0.51 | 0.52 | 0.53 | 0.54 | 0.55 | 0.56 | 0.57 | 0.58 | 0.59 | 0.6 | 0.61 | 0.62 | 0.63 | 0.64 | 0.65 | 0.66 | 0.67 | 0.68 | 0.69 | 0.7 | 0.71 | 0.72 | 0.73 | 0.74 | 0.75 | 0.76 | 0.77 | 0.78 | 0.79 | 0.8 | 0.81 | 0.82 | 0.83 | 0.84 | 0.85 | 0.86 | 0.87 | 0.88 | 0.89 | 0.9 | 0.91 | 0.92 | 0.93 | 0.94 | 0.95 | 0.96 | 0.97 | 0.98 | 0.99 | 1

    FixedLengthArray

    FixedLengthArray<T>: Pick<T, Exclude<keyof T, ArrayLengthMutationKeys>> & { [iterator]: any }

    Type parameters

    • T: unknown[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Helper | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    FixedLengthArray

    FixedLengthArray<T>: Pick<T, Exclude<keyof T, ArrayLengthMutationKeys>> & { [iterator]: any }

    Type parameters

    • T: unknown[]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.KeyboardInput.html b/docs/modules/index.Duck.Types.KeyboardInput.html index 6bccbcf8..36d1715e 100644 --- a/docs/modules/index.Duck.Types.KeyboardInput.html +++ b/docs/modules/index.Duck.Types.KeyboardInput.html @@ -1 +1 @@ -KeyboardInput | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +KeyboardInput | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Loader.html b/docs/modules/index.Duck.Types.Loader.html index 0ddb3f06..eedf902e 100644 --- a/docs/modules/index.Duck.Types.Loader.html +++ b/docs/modules/index.Duck.Types.Loader.html @@ -1 +1 @@ -Loader | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    StackItemType

    StackItemType: "texture" | "json" | "font" | "html" | "xml" | "audio"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Loader | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    StackItemType

    StackItemType: "texture" | "json" | "font" | "html" | "xml" | "audio" | "audioBuffer"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Math.html b/docs/modules/index.Duck.Types.Math.html index 2d193568..7b817141 100644 --- a/docs/modules/index.Duck.Types.Math.html +++ b/docs/modules/index.Duck.Types.Math.html @@ -1 +1 @@ -Math | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Math | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Misc.html b/docs/modules/index.Duck.Types.Misc.html index c1966aa7..c41b025b 100644 --- a/docs/modules/index.Duck.Types.Misc.html +++ b/docs/modules/index.Duck.Types.Misc.html @@ -1 +1 @@ -Misc | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Misc | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.MouseInput.html b/docs/modules/index.Duck.Types.MouseInput.html index 1f78cb47..16931d5b 100644 --- a/docs/modules/index.Duck.Types.MouseInput.html +++ b/docs/modules/index.Duck.Types.MouseInput.html @@ -1 +1 @@ -MouseInput | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +MouseInput | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.ParticleContainer.html b/docs/modules/index.Duck.Types.ParticleContainer.html index 1c596c64..fec73f9b 100644 --- a/docs/modules/index.Duck.Types.ParticleContainer.html +++ b/docs/modules/index.Duck.Types.ParticleContainer.html @@ -1 +1 @@ -ParticleContainer | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +ParticleContainer | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.ParticleEmitter.html b/docs/modules/index.Duck.Types.ParticleEmitter.html index bed040e7..6df13ade 100644 --- a/docs/modules/index.Duck.Types.ParticleEmitter.html +++ b/docs/modules/index.Duck.Types.ParticleEmitter.html @@ -1 +1 @@ -ParticleEmitter | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Type aliases

    Type aliases

    Range

    Range: FixedLengthArray<[number, number]>

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +ParticleEmitter | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Type aliases

    Type aliases

    Range

    Range: FixedLengthArray<[number, number]>

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.PhysicsBody.html b/docs/modules/index.Duck.Types.PhysicsBody.html index 149ed9c0..21aa2699 100644 --- a/docs/modules/index.Duck.Types.PhysicsBody.html +++ b/docs/modules/index.Duck.Types.PhysicsBody.html @@ -1,10 +1,10 @@ -PhysicsBody | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    KinematicBody

    KinematicBody: "KinematicBody"
    memberof

    Duck.Types.PhysicsBody.KinematicBody

    +PhysicsBody | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    KinematicBody

    KinematicBody: "KinematicBody"
    memberof

    Duck.Types.PhysicsBody.KinematicBody

    description

    A type of PhysicsBody that can be moved and can be effected by gravity and friction.

    since

    2.0.0

    -

    RigidBody

    RigidBody: "RigidBody"
    memberof

    Duck.Types.PhysicsBody.KinematicBody

    +

    RigidBody

    RigidBody: "RigidBody"
    memberof

    Duck.Types.PhysicsBody.KinematicBody

    description

    A type of PhysicsBody that cannot be moved but can be effected by gravity and friction.

    since

    2.0.0

    -

    StaticBody

    StaticBody: "StaticBody"
    memberof

    Duck.Types.PhysicsBody.KinematicBody

    +

    StaticBody

    StaticBody: "StaticBody"
    memberof

    Duck.Types.PhysicsBody.KinematicBody

    description

    A type of PhysicsBody that cannot be moved and cannot be effected by gravity and friction.

    since

    2.0.0

    -

    Type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Type

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.RendererPipeline.html b/docs/modules/index.Duck.Types.RendererPipeline.html index a8d0e056..4dc8cc37 100644 --- a/docs/modules/index.Duck.Types.RendererPipeline.html +++ b/docs/modules/index.Duck.Types.RendererPipeline.html @@ -1 +1 @@ -RendererPipeline | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +RendererPipeline | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Sound.html b/docs/modules/index.Duck.Types.Sound.html index 6d9534ac..69de5595 100644 --- a/docs/modules/index.Duck.Types.Sound.html +++ b/docs/modules/index.Duck.Types.Sound.html @@ -1 +1 @@ -Sound | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Sound | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    SoundPlayerType

    SoundPlayerType: "WebAudio" | "HTMLAudio" | "AUTO" | undefined

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.StateMachine.html b/docs/modules/index.Duck.Types.StateMachine.html index 8fa2f6e0..1738edfc 100644 --- a/docs/modules/index.Duck.Types.StateMachine.html +++ b/docs/modules/index.Duck.Types.StateMachine.html @@ -1 +1 @@ -StateMachine | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +StateMachine | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Texture.html b/docs/modules/index.Duck.Types.Texture.html index 9949dbe2..7e5e56cc 100644 --- a/docs/modules/index.Duck.Types.Texture.html +++ b/docs/modules/index.Duck.Types.Texture.html @@ -1 +1 @@ -Texture | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    DataType

    DataType: "sheet" | "base" | "atlas"

    Type

    Type: "image" | "color" | "either"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Texture | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    Type aliases

    DataType

    DataType: "sheet" | "base" | "atlas"

    Type

    Type: "image" | "color" | "either"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.TextureAtlas.html b/docs/modules/index.Duck.Types.TextureAtlas.html index 69289ba3..0f5b1097 100644 --- a/docs/modules/index.Duck.Types.TextureAtlas.html +++ b/docs/modules/index.Duck.Types.TextureAtlas.html @@ -1 +1 @@ -TextureAtlas | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +TextureAtlas | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.Tilemap.html b/docs/modules/index.Duck.Types.Tilemap.html index 193bec3a..0774cc5a 100644 --- a/docs/modules/index.Duck.Types.Tilemap.html +++ b/docs/modules/index.Duck.Types.Tilemap.html @@ -1 +1 @@ -Tilemap | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Type aliases

    Type aliases

    Map

    Map: number[][]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Tilemap | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Type aliases

    Type aliases

    Map

    Map: number[][]

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.UI.Button.html b/docs/modules/index.Duck.Types.UI.Button.html index 460dca02..9601ef5f 100644 --- a/docs/modules/index.Duck.Types.UI.Button.html +++ b/docs/modules/index.Duck.Types.UI.Button.html @@ -1 +1 @@ -Button | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    ListenerFunc

    ListenerFunc: (e: ListenerReturn) => void

    Type declaration

    ListenerType

    ListenerType: "CLICK" | "HOVER" | "NOTHOVER"

    Shape

    Shape: "rect" | "roundrect" | "sprite"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Button | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Type aliases

    ListenerFunc

    ListenerFunc: (e: ListenerReturn) => void

    Type declaration

    ListenerType

    ListenerType: "CLICK" | "HOVER" | "NOTHOVER"

    Shape

    Shape: "rect" | "roundrect" | "sprite"

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.UI.Text.html b/docs/modules/index.Duck.Types.UI.Text.html index c21ed087..dd7b0b26 100644 --- a/docs/modules/index.Duck.Types.UI.Text.html +++ b/docs/modules/index.Duck.Types.UI.Text.html @@ -1 +1 @@ -Text | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +Text | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Interfaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.UI.html b/docs/modules/index.Duck.Types.UI.html index 0dab672f..9c31bfee 100644 --- a/docs/modules/index.Duck.Types.UI.html +++ b/docs/modules/index.Duck.Types.UI.html @@ -1 +1 @@ -UI | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +UI | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.Types.html b/docs/modules/index.Duck.Types.html index 46a80e17..66e1fcfc 100644 --- a/docs/modules/index.Duck.Types.html +++ b/docs/modules/index.Duck.Types.html @@ -1,5 +1,5 @@ -Types | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.Types

    +Types | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck.Types

    memberof

    Duck

    description

    All Class configs and types for that class are stored here. All types are here.

    since

    2.0.0

    -

    Index

    Type aliases

    GameObject

    GameObject<textureType>: GameObject<textureType>

    Type parameters

    PhysicsProcessMember

    PhysicsProcessMember: PhysicsBody<Duck.Types.Texture.Type>

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Index

    Type aliases

    GameObject

    GameObject<textureType>: GameObject<textureType>

    Type parameters

    PhysicsProcessMember

    PhysicsProcessMember: PhysicsBody<Duck.Types.Texture.Type>

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.Duck.html b/docs/modules/index.Duck.html index 446eec10..784bb617 100644 --- a/docs/modules/index.Duck.html +++ b/docs/modules/index.Duck.html @@ -1,7 +1,7 @@ -Duck | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck

    +Duck | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu
    namespace

    Duck

    description

    All Types, Type Classes, Classes, Layers, and Configurations are stored here.

    since

    1.0.0-beta

    -

    Index

    Functions

    Const AutoCanvas

    • AutoCanvas(): { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D }

    Index

    Functions

    Const AutoCanvas

    • AutoCanvas(): { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D }
    • memberof

      Duck

      description

      Returns a HTMLCanvasElement and CanvasRenderingContext2D, finds a canvas, if none exist, it creates and appends one

      -

      Returns { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D }

      • canvas: HTMLCanvasElement
      • ctx: CanvasRenderingContext2D

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Returns { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D }

    • canvas: HTMLCanvasElement
    • ctx: CanvasRenderingContext2D

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/docs/modules/index.html b/docs/modules/index.html index 53f6bade..ade3e55a 100644 --- a/docs/modules/index.html +++ b/docs/modules/index.html @@ -1,5 +1,5 @@ -index | DuckEngine - v2.1.0
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Variables

    Variables

    DuckEngine

    DuckEngine: { Game: typeof Game; Scene: typeof Scene } = ...
    namespace
    property

    {Game} game Game Class

    +index | DuckEngine - v3.0.0-dev
    Options
    All
    • Public
    • Public/Protected
    • All
    Menu

    Index

    Namespaces

    Variables

    Variables

    DuckEngine

    DuckEngine: { Game: typeof Game; Scene: typeof Scene } = ...
    namespace
    property

    {Game} game Game Class

    property

    {Scene} scene Scene Class

    description

    Main Export of DuckEngine

    since

    1.0.0-beta

    -

    Type declaration

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file +

    Type declaration

    Legend

    • Namespace
    • Variable
    • Function
    • Class
    • Class with type parameter

    Settings

    Theme

    Generated using TypeDoc

    \ No newline at end of file diff --git a/examples/README.md b/examples/README.md index 1aa47d75..5e5b0f0c 100644 --- a/examples/README.md +++ b/examples/README.md @@ -1,3 +1,3 @@ -# Examples - -These are only code examples and not live examples. Use webpack/parcel to bundle your files. +# Examples + +These are only code examples and not live examples. Use webpack/parcel to bundle your files. diff --git a/examples/ts/myScene.ts b/examples/ts/myScene.ts index 4abc3879..ee3cb508 100644 --- a/examples/ts/myScene.ts +++ b/examples/ts/myScene.ts @@ -2,125 +2,136 @@ import DuckEngine, { Duck } from '../../dist'; export default class MainScene extends DuckEngine.Scene { - public myRect!: Duck.TypeClasses.GameObjects.GameObject<'color'>; - public myCircle!: Duck.TypeClasses.GameObjects.GameObject<'color'>; - public gameObjects!: Duck.TypeClasses.Misc.Group< - Duck.TypeClasses.GameObjects.GameObject<'color'> - >; - - public myCamera!: Duck.TypeClasses.Cameras.Camera; - - public myParticle!: Duck.TypeClasses.GameObjects.Particles.Particle; - public myParticleEmitter!: Duck.TypeClasses.GameObjects.Particles.ParticleEmitter; - - public myInput!: Duck.TypeClasses.Input.KeyboardInput; - private mySpeed = 250; - - constructor(game: Duck.TypeClasses.Game) { - super('main', game); - } - - public create() { - // gameobjects - this.myRect = this.add.gameobject.rect(0, 0, 15, 15, '#ffffff'); - this.myCircle = this.add.gameobject.circle(50, 50, 10, '#ffffff'); - - this.gameObjects = this.add.group< - Duck.TypeClasses.GameObjects.GameObject - >('gameObjects', [this.myRect, this.myCircle]); - - // colliders and hitboxes - this.myRect.physics.addHitbox(); - this.myCircle.physics.addHitbox(); - - this.myRect.physics.addCollider([this.myCircle]); - - // camera - this.myCamera = this.add.mainCamera(); - this.myCamera.setFOV(1.1); - this.myCamera.setFOVSmooth(50, 0.1, this.myCamera.defaultFOV); - this.myCamera.startFollow(this.myRect, 0.1, 0.1); - - // particles - this.myParticle = this.add.particle( - 'circle', - 0, - 0, - 5, - this.tools.color.randomWithAlpha(0.5) - ); - this.myParticleEmitter = this.add.particleEmitter( - this.myParticle, - [0, 10], - [0, 10], - 50 - ); - - this.myParticleEmitter.emit(); - this.myParticleEmitter.keepEmitting(100, 100); - this.myParticleEmitter.float([-200, 200], [-100, -300]); - - // input - this.myInput = this.add.input().createKeyboardInput(); - - this.myInput.addKeys([ - { - keyCode: 87, // w - descriptor: 'W', - }, - { - keyCode: 83, // s - descriptor: 'S', - }, - { - keyCode: 65, // a - descriptor: 'A', - }, - { - keyCode: 68, // d - descriptor: 'D', - }, - { - keyCode: 16, // shift - descriptor: 'SPRINT', - keyDown: () => { - this.mySpeed = 350; - }, - keyUp: () => { - this.mySpeed = 250; - }, - }, - ]); - } - - public update() { - if (this.myInput.inputs.W.state) { - this.myRect.setVelocity('y', -this.mySpeed); - } - if (this.myInput.inputs.S.state) { - this.myRect.setVelocity('y', this.mySpeed); - } - if (this.myInput.inputs.A.state) { - this.myRect.setVelocity('x', -this.mySpeed); - } - if (this.myInput.inputs.D.state) { - this.myRect.setVelocity('x', this.mySpeed); - } - - // offload particles - this.myParticleEmitter.offloadBounds({ - x: 0, - y: 0, - w: this.game.canvas.width, - h: this.game.canvas.height, - }); - this.myParticleEmitter.offloadMaxAge(10); - this.myParticleEmitter.offloadMaxAmount(100); - - if (this.myRect.isCollidingGroup([this.myCircle])) { - this.myRect.setFillColor('#ff0000'); - } else { - this.myRect.setFillColor('#2185d1'); - } - } + public myRect!: Duck.TypeClasses.GameObjects.GameObject<'color'>; + public myCircle!: Duck.TypeClasses.GameObjects.GameObject<'color'>; + public gameObjects!: Duck.TypeClasses.Misc.Group< + Duck.TypeClasses.GameObjects.GameObject<'color'> + >; + + public myCamera!: Duck.TypeClasses.Cameras.Camera; + + public myParticle!: Duck.TypeClasses.GameObjects.Particles.Particle; + public myParticleEmitter!: Duck.TypeClasses.GameObjects.Particles.ParticleEmitter; + + public myInput!: Duck.TypeClasses.Input.KeyboardInput; + private mySpeed = 250; + + constructor(game: Duck.TypeClasses.Game) { + super('main', game); + } + + public create() { + // gameobjects + this.myRect = this.add.gameobject.rect( + 0, + 0, + 15, + 15, + this.add.color('#ffffff') + ); + this.myCircle = this.add.gameobject.circle( + 50, + 50, + 10, + this.add.color('#ffffff') + ); + + this.gameObjects = this.add.group< + Duck.TypeClasses.GameObjects.GameObject + >('gameObjects', [this.myRect, this.myCircle]); + + // colliders and hitboxes + this.myRect.physics.addHitbox(); + this.myCircle.physics.addHitbox(); + + this.myRect.physics.addCollider([this.myCircle]); + + // camera + this.myCamera = this.add.mainCamera(); + this.myCamera.setFOV(1.1); + this.myCamera.setFOVSmooth(50, 0.1, this.myCamera.defaultFOV); + this.myCamera.startFollow(this.myRect, 0.1, 0.1); + + // particles + this.myParticle = this.add.particle( + 'circle', + 0, + 0, + 5, + this.tools.color.randomWithAlpha(0.5) + ); + this.myParticleEmitter = this.add.particleEmitter( + this.myParticle, + [0, 10], + [0, 10], + 50 + ); + + this.myParticleEmitter.emit(); + this.myParticleEmitter.keepEmitting(100, 100); + this.myParticleEmitter.float([-200, 200], [-100, -300]); + + // input + this.myInput = this.add.input().createKeyboardInput(); + + this.myInput.addKeys([ + { + keyCode: 87, // w + descriptor: 'W', + }, + { + keyCode: 83, // s + descriptor: 'S', + }, + { + keyCode: 65, // a + descriptor: 'A', + }, + { + keyCode: 68, // d + descriptor: 'D', + }, + { + keyCode: 16, // shift + descriptor: 'SPRINT', + keyDown: () => { + this.mySpeed = 350; + }, + keyUp: () => { + this.mySpeed = 250; + }, + }, + ]); + } + + public update() { + if (this.myInput.inputs.W.state) { + this.myRect.setVelocity('y', -this.mySpeed); + } + if (this.myInput.inputs.S.state) { + this.myRect.setVelocity('y', this.mySpeed); + } + if (this.myInput.inputs.A.state) { + this.myRect.setVelocity('x', -this.mySpeed); + } + if (this.myInput.inputs.D.state) { + this.myRect.setVelocity('x', this.mySpeed); + } + + // offload particles + this.myParticleEmitter.offloadBounds({ + x: 0, + y: 0, + w: this.game.canvas.width, + h: this.game.canvas.height, + }); + this.myParticleEmitter.offloadMaxAge(10); + this.myParticleEmitter.offloadMaxAmount(100); + + if (this.myRect.isCollidingGroup([this.myCircle])) { + this.myRect.setFillColor('#ff0000'); + } else { + this.myRect.setFillColor('#2185d1'); + } + } } diff --git a/examples/ts/test.ts b/examples/ts/test.ts index f1e651b2..80fba10d 100644 --- a/examples/ts/test.ts +++ b/examples/ts/test.ts @@ -7,18 +7,18 @@ import DuckEngine, { Duck } from '../../dist'; import MainScene from './myScene'; const game = new DuckEngine.Game({ - canvas: Duck.AutoCanvas(), // grabs canvas element from document if exists, if doesn't, it creates a canvas and appends it to the body - defaultScene: 'main', - background: '#ffffff', - physics: { - enabled: true, // enable use of the PhysicsServer - }, - focus: true, // auto focus - roundPixels: true, // does not allow for floating point values for coordinates for gameobjects excluding particles - scale: { - x: 700, - y: 500, - }, + canvas: Duck.AutoCanvas(), // grabs canvas element from document if exists, if doesn't, it creates a canvas and appends it to the body + defaultScene: 'main', + background: '#ffffff', + physics: { + enabled: true, // enable use of the PhysicsServer + }, + focus: true, // auto focus + roundPixels: true, // does not allow for floating point values for coordinates for gameobjects excluding particles + scale: { + x: 700, + y: 500, + }, }); const main = new MainScene(game); diff --git a/global/README.md b/global/README.md index 25bfbf33..550a5ce3 100644 --- a/global/README.md +++ b/global/README.md @@ -1,12 +1,12 @@ -# Global - -Global Assets and more. - -## Files - -1. Logo.png - Logo -2. Logo.xcf - Gimp save file - -## Attribution - -Cube (Cube found in logo) by JosÊ Manuel de LaÃĄ from the Noun Project. +# Global + +Global Assets and more. + +## Files + +1. Logo.png - Logo +2. Logo.xcf - Gimp save file + +## Attribution + +Cube (Cube found in logo) by JosÊ Manuel de LaÃĄ from the Noun Project. diff --git a/itch.io-description.md b/itch.io-description.md index f08288a3..57bce292 100644 --- a/itch.io-description.md +++ b/itch.io-description.md @@ -1,202 +1,202 @@ -**v2.0.0 released! [Changelog](https://github.com/ksplatdev/DuckEngine/blob/main/CHANGELOG.2.0.0.md)** - -| [Docs](#docs) | [Wiki](#wiki) | [Getting Started](https://github.com/ksplatdev/DuckEngine/wiki/Getting-Started) | [Demos](#demos) | [Download](#download) | - -![Build Badge](https://img.shields.io/github/workflow/status/ksplatdev/DuckEngine/CodeQL?style=flat-square) -![Release Badge](https://img.shields.io/github/v/release/ksplatdev/DuckEngine?style=flat-square) -![License Badge](https://img.shields.io/github/license/ksplatdev/DuckEngine?label=license&style=flat-square) -[![wakatime](https://wakatime.com/badge/github/ksplatdev/DuckEngine.svg)](https://wakatime.com/badge/github/ksplatdev/DuckEngine) -![Lint Badge](https://github.com/ksplatdev/DuckEngine/actions/workflows/lint.yml/badge.svg) -![Format Badge](https://github.com/ksplatdev/DuckEngine/actions/workflows/format.yml/badge.svg) -[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) - -A 2D Game Engine for the web. - -## Features - -- Customizable Hitbox Based Physics Engine -- Multiple Scenes -- Fast & Performant -- Sprites & Spritesheets -- Many GameObjects -- Plugins & PluginManager -- Multiple Cameras with Effects -- Animations & State Machines & Cutscenes -- Hitboxes and Colliders -- Keyboard, and Mouse Inputs -- DPR / Mobile Scaling -- Advanced Particle System -- Cache & Fast Loading Times -- Effects and Presets -- Advanced UI System -- Groups & Management -- Advanced Tilemap System -- Small Package Size -- Static Lighting -- Asset Preloader & Manager -- Textures & Manager -- Made fully in TypeScript -- Typedefs -- [Docs](#docs) -- A lot more... - -## Performance & Compatibility - -### Browser Requirements - -1. Browser supports ES6 (EcmaScript2015) -2. Browser supports Canvas APIs - -### Rankings - -1. Chromium Based Browsers, includes Chrome, Opera, Edge, Vivaldi, and Brave -2. Safari -3. Firefox | [Bugs](#firefox-bugs) - -### Recommendation - -- Google Chrome or any other Chromium based browser - -### Browser Bugs - -#### Firefox Bugs - -- More stuttering than Chromium Browsers and Safari. -- Garbage collection occurs more often than Safari and Chromium Browsers. (Causes *very* minor and not noticeable stutters.) - -## Download - -### Github - -1. Download the [latest release](https://github.com/ksplatdev/DuckEngine/releases/latest). -2. Setup an asset bundler like webpack or parcel. -3. Import DuckEngine. -4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -### NPM - -1. Run `npm install duckengine`. -2. Setup an asset bundler like webpack or parcel. -3. Import DuckEngine. -4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -### CDN - -1. Setup an asset bundler like webpack or parcel. -2. Import DuckEngine from URL - - Regular - - Minified -3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -### Itch.io - -1. Download DuckEngine from -2. Import DuckEngine into your project. -3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). - -## [Docs](https://ksplatdev.github.io/DuckEngine/) - -Learn how to use DuckEngine with simple, clean, documentation with typings and more. - -## [Discussions](https://github.com/ksplatdev/DuckEngine/discussions) - -Ask questions, share ideas, engage with the community, and share your work with DuckEngine Discussions. - -## [Wiki](https://github.com/ksplatdev/DuckEngine/wiki) - -Read and learn about DuckEngine with the DuckEngine wiki. - -## How to use with Typescript - -How to use DuckEngine with Typescript. - -1. Setup webpack/parcel and tsconfig. -2. Import DuckEngine and Duck for types. - -Not working ? Add the following to your tsconfig.json - -```json -{ - "typeRoots": [ - "./node_modules/@types", - "path_to_duckengine_index.d.ts" - ], - "types": [ - "DuckEngine" - ] -} -``` - -### Duck Namespace - -The Duck Namespace has types such as gameobject, every class config, all classes, and more. - -### [Typescript Example](examples/ts/myScene.ts) - -## Developers' Guide - -### Requirements - -1. Knowledge of TypeScript, Git, and HTML Canvas. -2. Reading and agreeing to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. -3. Basic knowledge of how DuckEngine works. - -### How to contribute - -1. Reading and agree to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. -2. Fork the repository and create a new branch following the [branch guidelines](branch_guidelines.md). -3. Clone the fork to your device. -4. CD (change directories) into the cloned directory. -5. Run `yarn upgrade`. -6. Run `yarn run build` or `ctrl + shift + b` for vscode users. -7. Make your changes. -8. Test your changes on codesandbox by forking this [codesandbox](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) and updating the duckengine.js file. (Or any other way you would like to test it.) -9. Create a pull request. -10. Wait for it to be reviewed and revised and possibly merged. - -### Dev Scripts - -1. `yarn run test` - Opens the [codesandbox test](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js). -2. `yarn run build` - Compiles typescript, bundles files, creates minified version, builds docs, and copies package.json to dist. -3. `yarn run build:docs` - Uses TypeDoc to build docs. -4. `yarn run webpack` - Bundles files in lib directory. -5. `yarn run minify` - Uses uglifyjs to minify bundled file. -6. `yarn run format` - Uses Prettier to format files. -7. `yarn run format:watch` - Watches for changes and formats once changes are saved. -8. `yarn run lint` - Uses ESLint to lint all files in the src directory. -9. `yarn run lint:watch` - Watches for changes and fixes all fixable issues found by ESLint. -10. `yarn run lint:fix` - Uses ESLint to fix all fixable issues found by ESLint. -11. `yarn run tree` - Prints out all files and directories used in [readme](#file-structure). -12. `yarn run serve` - Serves the docs on :8080. -13. `yarn run checkout` - Runs the checkout shell script with bash. Run before thinking about publishing a release. - -### Branches - -1. main - main branch -2. staging - stage changes to this branch - -## Versions - -DuckEngine follows [SemVer](https://semver.org/). - -## Demos - -### [Simple Demo Game](https://github.com/ksplatdev/DuckEngine-Demo-Game/tree/main) - -### [Test Template](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) - -### [Particle Test](https://codesandbox.io/s/duckengine-particle-test-dhcr1?file=/src/scene.js) - -### [Tilemap test](https://codesandbox.io/s/duckengine-tilemap-test-ryqqz?file=/src/scene.js) - -## Attribution - -The cube in the [DuckEngine Logo](global/Logo.png) is by JosÊ Manuel de LaÃĄ from the Noun Project. - -## License - -[MIT](LICENSE) - -## Author - -Bleart Emini +**v2.0.0 released! [Changelog](https://github.com/ksplatdev/DuckEngine/blob/main/CHANGELOG.2.0.0.md)** + +| [Docs](#docs) | [Wiki](#wiki) | [Getting Started](https://github.com/ksplatdev/DuckEngine/wiki/Getting-Started) | [Demos](#demos) | [Download](#download) | + +![Build Badge](https://img.shields.io/github/workflow/status/ksplatdev/DuckEngine/CodeQL?style=flat-square) +![Release Badge](https://img.shields.io/github/v/release/ksplatdev/DuckEngine?style=flat-square) +![License Badge](https://img.shields.io/github/license/ksplatdev/DuckEngine?label=license&style=flat-square) +[![wakatime](https://wakatime.com/badge/github/ksplatdev/DuckEngine.svg)](https://wakatime.com/badge/github/ksplatdev/DuckEngine) +![Lint Badge](https://github.com/ksplatdev/DuckEngine/actions/workflows/lint.yml/badge.svg) +![Format Badge](https://github.com/ksplatdev/DuckEngine/actions/workflows/format.yml/badge.svg) +[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) + +A 2D Game Engine for the web. + +## Features + +- Customizable Hitbox Based Physics Engine +- Multiple Scenes +- Fast & Performant +- Sprites & Spritesheets +- Many GameObjects +- Plugins & PluginManager +- Multiple Cameras with Effects +- Animations & State Machines & Cutscenes +- Hitboxes and Colliders +- Keyboard, and Mouse Inputs +- DPR / Mobile Scaling +- Advanced Particle System +- Cache & Fast Loading Times +- Effects and Presets +- Advanced UI System +- Groups & Management +- Advanced Tilemap System +- Small Package Size +- Static Lighting +- Asset Preloader & Manager +- Textures & Manager +- Made fully in TypeScript +- Typedefs +- [Docs](#docs) +- A lot more... + +## Performance & Compatibility + +### Browser Requirements + +1. Browser supports ES6 (EcmaScript2015) +2. Browser supports Canvas APIs + +### Rankings + +1. Chromium Based Browsers, includes Chrome, Opera, Edge, Vivaldi, and Brave +2. Safari +3. Firefox | [Bugs](#firefox-bugs) + +### Recommendation + +- Google Chrome or any other Chromium based browser + +### Browser Bugs + +#### Firefox Bugs + +- More stuttering than Chromium Browsers and Safari. +- Garbage collection occurs more often than Safari and Chromium Browsers. (Causes *very* minor and not noticeable stutters.) + +## Download + +### Github + +1. Download the [latest release](https://github.com/ksplatdev/DuckEngine/releases/latest). +2. Setup an asset bundler like webpack or parcel. +3. Import DuckEngine. +4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +### NPM + +1. Run `npm install duckengine`. +2. Setup an asset bundler like webpack or parcel. +3. Import DuckEngine. +4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +### CDN + +1. Setup an asset bundler like webpack or parcel. +2. Import DuckEngine from URL + - Regular + - Minified +3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +### Itch.io + +1. Download DuckEngine from +2. Import DuckEngine into your project. +3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +## [Docs](https://ksplatdev.github.io/DuckEngine/) + +Learn how to use DuckEngine with simple, clean, documentation with typings and more. + +## [Discussions](https://github.com/ksplatdev/DuckEngine/discussions) + +Ask questions, share ideas, engage with the community, and share your work with DuckEngine Discussions. + +## [Wiki](https://github.com/ksplatdev/DuckEngine/wiki) + +Read and learn about DuckEngine with the DuckEngine wiki. + +## How to use with Typescript + +How to use DuckEngine with Typescript. + +1. Setup webpack/parcel and tsconfig. +2. Import DuckEngine and Duck for types. + +Not working ? Add the following to your tsconfig.json + +```json +{ + "typeRoots": [ + "./node_modules/@types", + "path_to_duckengine_index.d.ts" + ], + "types": [ + "DuckEngine" + ] +} +``` + +### Duck Namespace + +The Duck Namespace has types such as gameobject, every class config, all classes, and more. + +### [Typescript Example](examples/ts/myScene.ts) + +## Developers' Guide + +### Requirements + +1. Knowledge of TypeScript, Git, and HTML Canvas. +2. Reading and agreeing to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. +3. Basic knowledge of how DuckEngine works. + +### How to contribute + +1. Reading and agree to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. +2. Fork the repository and create a new branch following the [branch guidelines](branch_guidelines.md). +3. Clone the fork to your device. +4. CD (change directories) into the cloned directory. +5. Run `yarn upgrade`. +6. Run `yarn run build` or `ctrl + shift + b` for vscode users. +7. Make your changes. +8. Test your changes on codesandbox by forking this [codesandbox](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) and updating the duckengine.js file. (Or any other way you would like to test it.) +9. Create a pull request. +10. Wait for it to be reviewed and revised and possibly merged. + +### Dev Scripts + +1. `yarn run test` - Opens the [codesandbox test](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js). +2. `yarn run build` - Compiles typescript, bundles files, creates minified version, builds docs, and copies package.json to dist. +3. `yarn run build:docs` - Uses TypeDoc to build docs. +4. `yarn run webpack` - Bundles files in lib directory. +5. `yarn run minify` - Uses uglifyjs to minify bundled file. +6. `yarn run format` - Uses Prettier to format files. +7. `yarn run format:watch` - Watches for changes and formats once changes are saved. +8. `yarn run lint` - Uses ESLint to lint all files in the src directory. +9. `yarn run lint:watch` - Watches for changes and fixes all fixable issues found by ESLint. +10. `yarn run lint:fix` - Uses ESLint to fix all fixable issues found by ESLint. +11. `yarn run tree` - Prints out all files and directories used in [readme](#file-structure). +12. `yarn run serve` - Serves the docs on :8080. +13. `yarn run checkout` - Runs the checkout shell script with bash. Run before thinking about publishing a release. + +### Branches + +1. main - main branch +2. staging - stage changes to this branch + +## Versions + +DuckEngine follows [SemVer](https://semver.org/). + +## Demos + +### [Simple Demo Game](https://github.com/ksplatdev/DuckEngine-Demo-Game/tree/main) + +### [Test Template](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) + +### [Particle Test](https://codesandbox.io/s/duckengine-particle-test-dhcr1?file=/src/scene.js) + +### [Tilemap test](https://codesandbox.io/s/duckengine-tilemap-test-ryqqz?file=/src/scene.js) + +## Attribution + +The cube in the [DuckEngine Logo](global/Logo.png) is by JosÊ Manuel de LaÃĄ from the Noun Project. + +## License + +[MIT](LICENSE) + +## Author + +Bleart Emini diff --git a/package.json b/package.json index d5a54b42..639121d8 100644 --- a/package.json +++ b/package.json @@ -1,65 +1,67 @@ { - "name": "duckengine", - "version": "2.1.0", - "description": "A 2D Game Engine for the web.", - "main": "dist/index.js", - "typings": "dist/index.d.ts", - "maintainers": [ - "ksplatdev " - ], - "scripts": { - "test": "npx open-cli https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js", - "build": "bash scripts/build.sh", - "webpack": "npx webpack --config webpack.config.js", - "minify": "npx uglifyjs dist/index.js -o dist/index.min.js", - "build:docs": "npx typedoc src/ --out docs/ --exclude \"src/helper/*.ts\" --exclude \"src/helper/**/*.ts\" --exclude \"src/utils/*.ts\" --exclude \"src/base/*.ts\" --name \"DuckEngine\" --includeVersion --entryPointStrategy expand", - "format": "npx prettier --config .prettierrc --write \"src/**/*.ts\"", - "format:watch": "npx onchange \"src/**/*.ts\" \"*.json\" \"*.md\" \"examples/**/*.ts\" -- prettier --write --ignore-unknown {{changed}}", - "lint": "npx eslint -c .eslintrc.json src/", - "lint:watch": "npx onchange \"src/**/*.ts\" \"examples/**/*.ts\" -- eslint -c .eslintrc.json --fix {{changed}}", - "lint:fix": "npx eslint -c .eslintrc.json --fix src/", - "serve": "npx http-server docs/", - "checkout": "bash scripts/checkout.sh" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/ksplatdev/DuckEngine.git" - }, - "keywords": [ - "Duck", - "Ducky", - "Engine", - "2d", - "game engine", - "simple", - "fast", - "web game engine", - "javascript game engine", - "performant" - ], - "author": "Bleart Emini", - "license": "MIT", - "bugs": { - "url": "https://github.com/ksplatdev/DuckEngine/issues" - }, - "homepage": "https://github.com/ksplatdev/DuckEngine#readme", - "devDependencies": { - "@types/css-font-loading-module": "^0.0.6", - "@typescript-eslint/eslint-plugin": "^4.31.1", - "@typescript-eslint/parser": "^4.31.1", - "eslint": "^7.32.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-prettier": "^3.4.1", - "express": "^4.17.1", - "onchange": "^7.1.0", - "open-cli": "^7.0.1", - "prettier": "^2.4.1", - "typedoc": "0.22.7", - "typedoc-plugin-rename-defaults": "^0.4.0", - "typescript": "^4.4.3", - "uglify-js": "^3.14.2", - "webpack": "^5.53.0", - "webpack-cli": "^4.8.0", - "yarn": "^1.22.11" - } + "name": "duckengine", + "version": "3.0.0-dev", + "description": "A 2D Game Engine for the web.", + "main": "dist/index.js", + "typings": "dist/index.d.ts", + "maintainers": [ + "ksplatdev " + ], + "scripts": { + "test": "npx open-cli https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js", + "build": "bash scripts/build.sh", + "webpack": "npx webpack --config webpack.config.js", + "minify": "npx uglifyjs dist/index.js -o dist/index.min.js", + "build:docs": "npx typedoc src/ --out docs/ --exclude \"src/helper/*.ts\" --exclude \"src/helper/**/*.ts\" --exclude \"src/utils/*.ts\" --exclude \"src/base/*.ts\" --name \"DuckEngine\" --includeVersion --entryPointStrategy expand", + "format": "npx prettier --config .prettierrc --write \"src/**/*.ts\"", + "format:watch": "npx onchange \"src/**/*.ts\" \"*.json\" \"*.md\" \"examples/**/*.ts\" -- prettier --write --ignore-unknown {{changed}}", + "lint": "npx eslint -c .eslintrc.json src/", + "lint:watch": "npx onchange \"src/**/*.ts\" \"examples/**/*.ts\" -- eslint -c .eslintrc.json --fix {{changed}}", + "lint:fix": "npx eslint -c .eslintrc.json --fix src/", + "serve": "npx http-server docs/", + "checkout": "bash scripts/checkout.sh", + "buildNum": "node buildUtils/buildNum.js" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/ksplatdev/DuckEngine.git" + }, + "keywords": [ + "Duck", + "Ducky", + "Engine", + "2d", + "game engine", + "simple", + "fast", + "web game engine", + "javascript game engine", + "performant", + "typescript" + ], + "author": "Bleart Emini", + "license": "MIT", + "bugs": { + "url": "https://github.com/ksplatdev/DuckEngine/issues" + }, + "homepage": "https://github.com/ksplatdev/DuckEngine#readme", + "devDependencies": { + "@types/css-font-loading-module": "^0.0.6", + "@typescript-eslint/eslint-plugin": "^4.31.1", + "@typescript-eslint/parser": "^4.31.1", + "eslint": "^7.32.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^3.4.1", + "express": "^4.17.1", + "onchange": "^7.1.0", + "open-cli": "^7.0.1", + "prettier": "^2.4.1", + "typedoc": "0.22.7", + "typedoc-plugin-rename-defaults": "^0.4.0", + "typescript": "^4.4.3", + "uglify-js": "^3.14.2", + "webpack": "^5.53.0", + "webpack-cli": "^4.8.0", + "yarn": "^1.22.11" + } } diff --git a/src/base/amount.ts b/src/base/amount.ts index 84bd449b..78bea78f 100644 --- a/src/base/amount.ts +++ b/src/base/amount.ts @@ -7,71 +7,71 @@ import Game from '../core/game'; * @since 1.1.0 */ export default class Amount { - protected func: (currentCount: number) => void; - public reachedMaxAmount: boolean; - public game: Game; + protected func: (currentCount: number) => void; + public reachedMaxAmount: boolean; + public game: Game; - public currentCount: number; - public readonly maxAmount: number; + public currentCount: number; + public readonly maxAmount: number; - /** - * @constructor - * @description Creates an Amount instance. - * @param {(currentCount: number) => void} func Callback function - * @param {number} maxAmount Max amount of times the function can be called - * @param {Game} game Game instance - * @param {boolean} [run] Determines if function is run as soon as Amount class is constructed - * @since 1.1.0 - */ - constructor( - func: (currentCount: number) => void, - maxAmount: number, - game: Game, - run?: boolean - ) { - this.func = func; - this.reachedMaxAmount = false; - this.game = game; + /** + * @constructor + * @description Creates an Amount instance. + * @param {(currentCount: number) => void} func Callback function + * @param {number} maxAmount Max amount of times the function can be called + * @param {Game} game Game instance + * @param {boolean} [run] Determines if function is run as soon as Amount class is constructed + * @since 1.1.0 + */ + constructor( + func: (currentCount: number) => void, + maxAmount: number, + game: Game, + run?: boolean + ) { + this.func = func; + this.reachedMaxAmount = false; + this.game = game; - this.currentCount = 0; - this.maxAmount = maxAmount; + this.currentCount = 0; + this.maxAmount = maxAmount; - if (run) { - this.run(); - } - } + if (run) { + this.run(); + } + } - /** - * @memberof Amount - * @description Runs the function once if amount of times ran is not over the maxAmount - * @since 1.1.0 - */ - public run() { - if (this.currentCount < this.maxAmount) { - this.currentCount += 1; - this.func(this.currentCount); - } else { - this.reachedMaxAmount = true; - } - } + /** + * @memberof Amount + * @description Runs the function once if amount of times ran is not over the maxAmount + * @since 1.1.0 + */ + public run() { + if (this.currentCount < this.maxAmount) { + this.currentCount += 1; + this.func(this.currentCount); + } else { + this.reachedMaxAmount = true; + } + } - /** - * @memberof Amount - * @description Resets the amount of times ran - * @since 1.1.0 - */ - public reset() { - this.currentCount = 0; - this.reachedMaxAmount = false; - } + /** + * @memberof Amount + * @description Resets the amount of times ran + * @since 1.1.0 + */ + public reset() { + this.currentCount = 0; + this.reachedMaxAmount = false; + } - /** - * @memberof Amount - * @description Sets the amount of times ran - * @param {number} currentCount Number of times ran - * @since 1.1.0 - */ - public set state(currentCount: number) { - this.currentCount = currentCount; - } + /** + * @memberof Amount + * @description Sets the amount of times ran + * @param {number} currentCount Number of times ran + * @since 1.1.0 + */ + public set state(currentCount: number) { + this.currentCount = currentCount; + } } diff --git a/src/base/once.ts b/src/base/once.ts index 3a00ab57..2aee3fcd 100644 --- a/src/base/once.ts +++ b/src/base/once.ts @@ -5,53 +5,53 @@ * @since 1.0.0 */ export default class Once { - protected func: (...args: unknown[]) => unknown; - public ran: boolean; + protected func: (...args: unknown[]) => unknown; + public ran: boolean; - /** - * @constructor - * @description Creates a Once instance. - * @param {(...args: unknown[]) => unknown} func Function to run on Once.run - * @param {boolean} [run] Determines if function is run as soon as Once class is constructed - * @since 1.0.0 - */ - constructor(func: (...args: unknown[]) => unknown, run?: boolean) { - this.func = func; - this.ran = false; + /** + * @constructor + * @description Creates a Once instance. + * @param {(...args: unknown[]) => unknown} func Function to run on Once.run + * @param {boolean} [run] Determines if function is run as soon as Once class is constructed + * @since 1.0.0 + */ + constructor(func: (...args: unknown[]) => unknown, run?: boolean) { + this.func = func; + this.ran = false; - if (run) { - this.run(); - } - } + if (run) { + this.run(); + } + } - /** - * @memberof Once - * @description Runs the function once - * @since 1.0.0 - */ - public run() { - if (!this.ran) { - this.func(); - this.ran = true; - } - } + /** + * @memberof Once + * @description Runs the function once + * @since 1.0.0 + */ + public run() { + if (!this.ran) { + this.func(); + this.ran = true; + } + } - /** - * @memberof Once - * @description Resets the state and allows the function to be ran again if called - * @since 1.0.0 - */ - public reset() { - this.ran = false; - } + /** + * @memberof Once + * @description Resets the state and allows the function to be ran again if called + * @since 1.0.0 + */ + public reset() { + this.ran = false; + } - /** - * @memberof Once - * @description Sets the ran state - * @param {boolean} ran Ran state - * @since 1.0.0 - */ - public set state(ran: boolean) { - this.ran = ran; - } + /** + * @memberof Once + * @description Sets the ran state + * @param {boolean} ran Ran state + * @since 1.0.0 + */ + public set state(ran: boolean) { + this.ran = ran; + } } diff --git a/src/base/render.ts b/src/base/render.ts index 4b5b0d17..ad278f6a 100644 --- a/src/base/render.ts +++ b/src/base/render.ts @@ -8,36 +8,25 @@ * @since 1.0.0-beta */ export default class Render { - /** - * @memberof Render - * @description Preloads assets, gets called before DuckEngine loads - * @since 2.0.0 - */ - public async preload() {} + /** + * @memberof Render + * @description Preloads assets, gets called before DuckEngine loads + * @since 2.0.0 + */ + public async preload() {} - /** - * @memberof Render - * @description Creates objects, put all your Scene.add calls in here, gets after preload - * @since 2.0.0 - */ - public create() {} + /** + * @memberof Render + * @description Creates objects, put all your Scene.add calls in here, gets after preload + * @since 2.0.0 + */ + public create() {} - /** - * @memberof Render - * @description Updates everything in method, gets called **second** in the Game loop - * @param {number} deltaTime Time since the last frame - * @since 1.0.0-beta - */ - public update(deltaTime: number) {} - - /** - * @memberof Render - * @description Gets called on scene switch to this scene - * @deprecated Set the Scene.onActive property instead - * - * **THIS WILL BE REMOVED IN 3.0.0** - * - * @since 1.0.0-beta - */ - public onChange() {} + /** + * @memberof Render + * @description Updates everything in method, gets called **second** in the Game loop + * @param {number} deltaTime Time since the last frame + * @since 1.0.0-beta + */ + public update(deltaTime: number) {} } diff --git a/src/base/timer.ts b/src/base/timer.ts index cb754418..35d516ba 100644 --- a/src/base/timer.ts +++ b/src/base/timer.ts @@ -1,74 +1,74 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ export default class Timer { - public seconds: number; - public cb: (...args: any[]) => any; - public args: any[]; - public repeat: number; + public seconds: number; + public cb: (...args: any[]) => any; + public args: any[]; + public repeat: number; - public counter: number; - public repeatCounter: number; + public counter: number; + public repeatCounter: number; - public done: boolean; + public done: boolean; - constructor( - ms: number, - cb: (...args: any[]) => any, - args: any[], - repeat: number - ) { - this.seconds = ms / 1000; - this.cb = cb; - this.repeat = repeat - 1; + constructor( + ms: number, + cb: (...args: any[]) => any, + args: any[], + repeat: number + ) { + this.seconds = ms / 1000; + this.cb = cb; + this.repeat = repeat - 1; - this.counter = 0; - this.repeatCounter = 0; + this.counter = 0; + this.repeatCounter = 0; - this.done = false; + this.done = false; - this.args = args; - } + this.args = args; + } - public count(delta: number) { - if (this.done) { - return; - } + public count(delta: number) { + if (this.done) { + return; + } - if (this.counter < this.seconds) { - // normal count - this.counter += delta; - return; - } + if (this.counter < this.seconds) { + // normal count + this.counter += delta; + return; + } - if (this.repeatCounter < this.repeat) { - // repeat - this.repeatCounter++; - this.counter = 0; - this.cb(...this.args, this.counter, this.repeatCounter, this.done); - return; - } + if (this.repeatCounter < this.repeat) { + // repeat + this.repeatCounter++; + this.counter = 0; + this.cb(...this.args, this.counter, this.repeatCounter, this.done); + return; + } - if (this.counter > this.seconds) { - // done - this.done = true; - this.cb(...this.args, this.counter, this.repeatCounter, this.done); - return; - } - } + if (this.counter > this.seconds) { + // done + this.done = true; + this.cb(...this.args, this.counter, this.repeatCounter, this.done); + return; + } + } - public stop() { - this.done = true; - } + public stop() { + this.done = true; + } - public reset() { - this.done = false; - this.counter = 0; - this.repeatCounter = 0; - } + public reset() { + this.done = false; + this.counter = 0; + this.repeatCounter = 0; + } - public pause() { - this.done = true; - } - public resume() { - this.done = true; - } + public pause() { + this.done = true; + } + public resume() { + this.done = true; + } } diff --git a/src/core/animation/animation.ts b/src/core/animation/animation.ts index e3a9cf96..e4f62c86 100644 --- a/src/core/animation/animation.ts +++ b/src/core/animation/animation.ts @@ -12,365 +12,358 @@ import AnimationFrame from './animationFrame'; * @since 2.0.0 */ export default class Animation { - /** - * @memberof Animation - * @description A name/key for the Animation, used by AnimationManager to play the animation - * @type string - * @since 2.0.0 - */ - public readonly key: string; - - /** - * @memberof Animation - * @description Configuration for the Animation, changing this has no effect, instead change the values of the Animation. - * @type Duck.Types.Animation.Config - * @since 2.0.0 - */ - public config: Duck.Types.Animation.Config; - - /** - * @memberof Animation - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; - - /** - * @memberof Animation - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; - - /** - * @memberof Animation - * @description Sprite that the animation is attached to - * @type Sprite - * @since 2.0.0 - */ - public sprite: Sprite; - - /** - * @memberof Animation - * @description What the internal timers count by, defaults to the game delta time so that it can be used in the Scene.update loop - * @type number - * @since 2.0.0 - */ - public countBy: number; - - /** - * @memberof Animation - * @description The amount of times the animation repeats, modified from config so that it would work with the internal Timers - * @type number - * @since 2.0.0 - */ - public repeat: number; - - /** - * @memberof Animation - * @description The current amount of times an animation played/repeated - * @type number - * @since 2.0.0 - */ - public repeatCounter: number; - - /** - * @memberof Animation - * @description An array of AnimationFrames generated from Duck.Types.Animation.FrameBase array in config - * @type AnimationFrame[] - * @since 2.0.0 - */ - public frames: AnimationFrame[]; - - /** - * @memberof Animation - * @description The same as Animation#AnimationFrames but reversed - * @type AnimationFrame[]; - * @since 2.0.0 - */ - public reversedFrames: AnimationFrame[]; - - /** - * @memberof Animation - * @description An internal Timer that is used for counting and playing an AnimationFrame normally - * @type Timer - * @since 2.0.0 - */ - public animationNormalTimer: Timer; - - /** - * @memberof Animation - * @description An internal Timer that is used for counting and playing an AnimationFrame reversely - * @type Timer - * @since 2.0.0 - */ - public animationReverseTimer: Timer; - - /** - * @memberof Animation - * @description An internal Timer that is used for counting and delaying before playing the Animation, undefined - * if Config.delay is not a number - * @type Timer | undefined - * @since 2.0.0 - */ - public delayTimer: Timer | undefined; - - /** - * @memberof Animation - * @description The current index of the Animation#frames or Animation#reversedFrames - * @type number - * @since 2.0.0 - */ - public currentIndex: number; - - /** - * @memberof Animation - * @description The current frame being played - * @type AnimationFrame - * @since 2.0.0 - */ - public currentFrame: AnimationFrame; - - /** - * @constructor Animation - * @description Creates an Animation instance - * @param {Duck.Types.Animation.Config} config Animation configuration - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @param {Sprite} sprite Sprite that the Animation is attached to - * @since 2.0.0 - */ - constructor( - config: Duck.Types.Animation.Config, - game: Game, - scene: Scene, - sprite: Sprite - ) { - this.key = config.key; - this.config = config; - this.game = game; - this.scene = scene; - this.sprite = sprite; - - this.countBy = this.config.useDelta - ? this.game.deltaTime - : 1000 / this.config.frameRate; - - this.repeat = this.config.repeat || 1; - this.repeatCounter = 0; - this.frames = this.createFrames(); - this.reversedFrames = this.frames.slice().reverse(); - - this.animationNormalTimer = new Timer( - 1000 / this.config.frameRate, - () => { - this.normalStep(this); - }, - [], - this.frames.length * this.repeat - ); - this.animationReverseTimer = new Timer( - 1000 / this.config.frameRate, - () => { - this.reverseStep(this); - }, - [], - this.reversedFrames.length * this.repeat - ); - - if (this.config.delay) { - this.delayTimer = new Timer( - this.config.delay, - () => undefined, - [], - 1 - ); - } - - this.currentIndex = 0; - this.currentFrame = this.frames[this.currentIndex]; - } - - protected createFrames() { - const res: AnimationFrame[] = []; - for (let i = 0; i < this.config.frames.length; i++) { - const frameBase = this.config.frames[i]; - res.push( - new AnimationFrame(frameBase.col, frameBase.row, this.sprite) - ); - } - return res; - } - - protected normalStep(self: Animation) { - if (self.currentIndex < self.frames.length - 1) { - self.currentIndex += 1; - self.currentFrame = self.frames[self.currentIndex]; - self.currentFrame.set(); - } else { - self.repeatCounter += 1; - if (self.config.yoyo) { - self.stop(); - self.playReverse(); - } else if (self.repeatCounter < self.repeat) { - self.currentIndex = 0; - self.currentFrame = self.frames[self.currentIndex]; - self.currentFrame.set(); - } - } - } - - protected reverseStep(self: Animation) { - if (self.currentIndex < self.reversedFrames.length - 1) { - self.currentIndex += 1; - self.currentFrame = self.reversedFrames[self.currentIndex]; - self.currentFrame.set(); - } else { - self.repeatCounter += 1; - if (self.config.yoyo) { - self.stopReverse(); - self.play(); - } else if (self.repeatCounter < self.repeat) { - self.currentIndex = 0; - self.currentFrame = self.frames[self.currentIndex]; - self.currentFrame.set(); - } - } - } - - /** - * @memberof Animation - * @description Sets the repeat amount of the internal normal timer - * @param {number} repeat Repeat amount - * @since 2.0.0 - */ - public setRepeat(repeat: number) { - this.repeat = repeat; - this.animationNormalTimer.repeat = this.repeat; - } - - /** - * @memberof Animation - * @description Sets the repeat amount of the internal reverse timer - * @param {number} repeat Repeat amount - * @since 2.0.0 - */ - public setRepeatReverse(repeat: number) { - this.repeat = repeat; - this.animationReverseTimer.repeat = this.repeat; - } - - /** - * @memberof Animation - * @description Plays the Animation using the internal normal timer - * @since 2.0.0 - */ - public play() { - this.countBy = this.config.useDelta - ? this.game.deltaTime - : 1000 / this.config.frameRate; - - if (this.delayTimer) { - this.delayTimer.count(this.countBy); - if (this.delayTimer.done) { - this.animationNormalTimer.count(this.countBy); - } - } else { - this.animationNormalTimer.count(this.countBy); - } - } - - /** - * @memberof Animation - * @description Plays the Animation using the internal reverse timer - * @since 2.0.0 - */ - public playReverse() { - this.countBy = this.config.useDelta - ? this.game.deltaTime - : 1000 / this.config.frameRate; - - if (this.delayTimer) { - this.delayTimer.count(this.countBy); - if (this.delayTimer.done) { - this.animationReverseTimer.count(this.countBy); - } - } else { - this.animationReverseTimer.count(this.countBy); - } - } - - /** - * @memberof Animation - * @description Pauses the Animation using the internal normal timer - * @since 2.0.0 - */ - public pause() { - this.animationNormalTimer.pause(); - } - - /** - * @memberof Animation - * @description Pauses the Animation using the internal reverse timer - * @since 2.0.0 - */ - public pauseReverse() { - this.animationReverseTimer.pause(); - } - - /** - * @memberof Animation - * @description REsumes the Animation using the internal normal timer - * @since 2.0.0 - */ - public resume() { - this.animationNormalTimer.resume(); - } - - /** - * @memberof Animation - * @description Resumes the Animation using the internal reverse timer - * @since 2.0.0 - */ - public resumeReverse() { - this.animationReverseTimer.resume(); - } - - /** - * @memberof Animation - * @description Stops/Cancels the Animation using the internal normal timer - * @since 2.0.0 - */ - public stop() { - this.animationNormalTimer.stop(); - } - - /** - * @memberof Animation - * @description Stops/Cancels the Animation using the internal reverse timer - * @since 2.0.0 - */ - public stopReverse() { - this.animationReverseTimer.stop(); - } - - /** - * @memberof Animation - * @description Restarts the Animation using the internal normal timer - * @since 2.0.0 - */ - public restart() { - this.animationNormalTimer.reset(); - } - - /** - * @memberof Animation - * @description Restarts the Animation using the internal reverse timer - * @since 2.0.0 - */ - public restartReverse() { - this.animationReverseTimer.reset(); - } + /** + * @memberof Animation + * @description A name/key for the Animation, used by AnimationManager to play the animation + * @type string + * @since 2.0.0 + */ + public readonly key: string; + + /** + * @memberof Animation + * @description Configuration for the Animation, changing this has no effect, instead change the values of the Animation. + * @type Duck.Types.Animation.Config + * @since 2.0.0 + */ + public config: Duck.Types.Animation.Config; + + /** + * @memberof Animation + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; + + /** + * @memberof Animation + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; + + /** + * @memberof Animation + * @description Sprite that the animation is attached to + * @type Sprite + * @since 2.0.0 + */ + public sprite: Sprite; + + /** + * @memberof Animation + * @description What the internal timers count by, defaults to the game delta time so that it can be used in the Scene.update loop + * @type number + * @since 2.0.0 + */ + public countBy: number; + + /** + * @memberof Animation + * @description The amount of times the animation repeats, modified from config so that it would work with the internal Timers + * @type number + * @since 2.0.0 + */ + public repeat: number; + + /** + * @memberof Animation + * @description The current amount of times an animation played/repeated + * @type number + * @since 2.0.0 + */ + public repeatCounter: number; + + /** + * @memberof Animation + * @description An array of AnimationFrames generated from Duck.Types.Animation.FrameBase array in config + * @type AnimationFrame[] + * @since 2.0.0 + */ + public frames: AnimationFrame[]; + + /** + * @memberof Animation + * @description The same as Animation#AnimationFrames but reversed + * @type AnimationFrame[]; + * @since 2.0.0 + */ + public reversedFrames: AnimationFrame[]; + + /** + * @memberof Animation + * @description An internal Timer that is used for counting and playing an AnimationFrame normally + * @type Timer + * @since 2.0.0 + */ + public animationNormalTimer: Timer; + + /** + * @memberof Animation + * @description An internal Timer that is used for counting and playing an AnimationFrame reversely + * @type Timer + * @since 2.0.0 + */ + public animationReverseTimer: Timer; + + /** + * @memberof Animation + * @description An internal Timer that is used for counting and delaying before playing the Animation, undefined + * if Config.delay is not a number + * @type Timer | undefined + * @since 2.0.0 + */ + public delayTimer: Timer | undefined; + + /** + * @memberof Animation + * @description The current index of the Animation#frames or Animation#reversedFrames + * @type number + * @since 2.0.0 + */ + public currentIndex: number; + + /** + * @memberof Animation + * @description The current frame being played + * @type AnimationFrame + * @since 2.0.0 + */ + public currentFrame: AnimationFrame; + + /** + * @constructor Animation + * @description Creates an Animation instance + * @param {Duck.Types.Animation.Config} config Animation configuration + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @param {Sprite} sprite Sprite that the Animation is attached to + * @since 2.0.0 + */ + constructor( + config: Duck.Types.Animation.Config, + game: Game, + scene: Scene, + sprite: Sprite + ) { + this.key = config.key; + this.config = config; + this.game = game; + this.scene = scene; + this.sprite = sprite; + + this.countBy = this.config.useDelta + ? this.game.deltaTime + : 1000 / this.config.frameRate; + + this.repeat = this.config.repeat || 1; + this.repeatCounter = 0; + this.frames = this.createFrames(); + this.reversedFrames = this.frames.slice().reverse(); + + this.animationNormalTimer = new Timer( + 1000 / this.config.frameRate, + () => { + this.normalStep(this); + }, + [], + this.frames.length * this.repeat + ); + this.animationReverseTimer = new Timer( + 1000 / this.config.frameRate, + () => { + this.reverseStep(this); + }, + [], + this.reversedFrames.length * this.repeat + ); + + if (this.config.delay) { + this.delayTimer = new Timer(this.config.delay, () => undefined, [], 1); + } + + this.currentIndex = 0; + this.currentFrame = this.frames[this.currentIndex]; + } + + protected createFrames() { + const res: AnimationFrame[] = []; + for (let i = 0; i < this.config.frames.length; i++) { + const frameBase = this.config.frames[i]; + res.push(new AnimationFrame(frameBase.col, frameBase.row, this.sprite)); + } + return res; + } + + protected normalStep(self: Animation) { + if (self.currentIndex < self.frames.length - 1) { + self.currentIndex += 1; + self.currentFrame = self.frames[self.currentIndex]; + self.currentFrame.set(); + } else { + self.repeatCounter += 1; + if (self.config.yoyo) { + self.stop(); + self.playReverse(); + } else if (self.repeatCounter < self.repeat) { + self.currentIndex = 0; + self.currentFrame = self.frames[self.currentIndex]; + self.currentFrame.set(); + } + } + } + + protected reverseStep(self: Animation) { + if (self.currentIndex < self.reversedFrames.length - 1) { + self.currentIndex += 1; + self.currentFrame = self.reversedFrames[self.currentIndex]; + self.currentFrame.set(); + } else { + self.repeatCounter += 1; + if (self.config.yoyo) { + self.stopReverse(); + self.play(); + } else if (self.repeatCounter < self.repeat) { + self.currentIndex = 0; + self.currentFrame = self.frames[self.currentIndex]; + self.currentFrame.set(); + } + } + } + + /** + * @memberof Animation + * @description Sets the repeat amount of the internal normal timer + * @param {number} repeat Repeat amount + * @since 2.0.0 + */ + public setRepeat(repeat: number) { + this.repeat = repeat; + this.animationNormalTimer.repeat = this.repeat; + } + + /** + * @memberof Animation + * @description Sets the repeat amount of the internal reverse timer + * @param {number} repeat Repeat amount + * @since 2.0.0 + */ + public setRepeatReverse(repeat: number) { + this.repeat = repeat; + this.animationReverseTimer.repeat = this.repeat; + } + + /** + * @memberof Animation + * @description Plays the Animation using the internal normal timer + * @since 2.0.0 + */ + public play() { + this.countBy = this.config.useDelta + ? this.game.deltaTime + : 1000 / this.config.frameRate; + + if (this.delayTimer) { + this.delayTimer.count(this.countBy); + if (this.delayTimer.done) { + this.animationNormalTimer.count(this.countBy); + } + } else { + this.animationNormalTimer.count(this.countBy); + } + } + + /** + * @memberof Animation + * @description Plays the Animation using the internal reverse timer + * @since 2.0.0 + */ + public playReverse() { + this.countBy = this.config.useDelta + ? this.game.deltaTime + : 1000 / this.config.frameRate; + + if (this.delayTimer) { + this.delayTimer.count(this.countBy); + if (this.delayTimer.done) { + this.animationReverseTimer.count(this.countBy); + } + } else { + this.animationReverseTimer.count(this.countBy); + } + } + + /** + * @memberof Animation + * @description Pauses the Animation using the internal normal timer + * @since 2.0.0 + */ + public pause() { + this.animationNormalTimer.pause(); + } + + /** + * @memberof Animation + * @description Pauses the Animation using the internal reverse timer + * @since 2.0.0 + */ + public pauseReverse() { + this.animationReverseTimer.pause(); + } + + /** + * @memberof Animation + * @description REsumes the Animation using the internal normal timer + * @since 2.0.0 + */ + public resume() { + this.animationNormalTimer.resume(); + } + + /** + * @memberof Animation + * @description Resumes the Animation using the internal reverse timer + * @since 2.0.0 + */ + public resumeReverse() { + this.animationReverseTimer.resume(); + } + + /** + * @memberof Animation + * @description Stops/Cancels the Animation using the internal normal timer + * @since 2.0.0 + */ + public stop() { + this.animationNormalTimer.stop(); + } + + /** + * @memberof Animation + * @description Stops/Cancels the Animation using the internal reverse timer + * @since 2.0.0 + */ + public stopReverse() { + this.animationReverseTimer.stop(); + } + + /** + * @memberof Animation + * @description Restarts the Animation using the internal normal timer + * @since 2.0.0 + */ + public restart() { + this.animationNormalTimer.reset(); + } + + /** + * @memberof Animation + * @description Restarts the Animation using the internal reverse timer + * @since 2.0.0 + */ + public restartReverse() { + this.animationReverseTimer.reset(); + } } diff --git a/src/core/animation/animationFrame.ts b/src/core/animation/animationFrame.ts index 7040adf5..502f805c 100644 --- a/src/core/animation/animationFrame.ts +++ b/src/core/animation/animationFrame.ts @@ -7,51 +7,51 @@ import Sprite from '../gameobjects/sprite'; * @since 2.0.0 */ export default class AnimationFrame { - /** - * @memberof AnimationFrame - * @description The column of the AnimationFrame, sets the Sprite.currentCol to this when played - * @type number - * @since 2.0.0 - */ - public col: number; + /** + * @memberof AnimationFrame + * @description The column of the AnimationFrame, sets the Sprite.currentCol to this when played + * @type number + * @since 2.0.0 + */ + public col: number; - /** - * @memberof AnimationFrame - * @description The row of the AnimationFrame, sets the Sprite.currentRow to this when played - * @type number - * @since 2.0.0 - */ - public row: number; + /** + * @memberof AnimationFrame + * @description The row of the AnimationFrame, sets the Sprite.currentRow to this when played + * @type number + * @since 2.0.0 + */ + public row: number; - /** - * @memberof AnimationFrame - * @description The Sprite to modify the currentCol and currentRow of - * @type Sprite - * @since 2.0.0 - */ - public sprite: Sprite; + /** + * @memberof AnimationFrame + * @description The Sprite to modify the currentCol and currentRow of + * @type Sprite + * @since 2.0.0 + */ + public sprite: Sprite; - /** - * @constructor AnimationFrame - * @description Creates an AnimationFrame instance - * @param {number} col Column of the Frame - * @param {number} row Row of the Frame - * @param {Sprite} sprite Sprite to modify the currentCol and currentRow of - * @since 2.0.0 - */ - constructor(col: number, row: number, sprite: Sprite) { - this.col = col; - this.row = row; - this.sprite = sprite; - } + /** + * @constructor AnimationFrame + * @description Creates an AnimationFrame instance + * @param {number} col Column of the Frame + * @param {number} row Row of the Frame + * @param {Sprite} sprite Sprite to modify the currentCol and currentRow of + * @since 2.0.0 + */ + constructor(col: number, row: number, sprite: Sprite) { + this.col = col; + this.row = row; + this.sprite = sprite; + } - /** - * @memberof AnimationFrame - * @description Sets the Sprite.currentCol to AnimationFrame.col and Sprite.currentRow to AnimationFrame.row - * @since 2.0.0 - */ - public set() { - this.sprite.currentCol = this.col; - this.sprite.currentRow = this.row; - } + /** + * @memberof AnimationFrame + * @description Sets the Sprite.currentCol to AnimationFrame.col and Sprite.currentRow to AnimationFrame.row + * @since 2.0.0 + */ + public set() { + this.sprite.currentCol = this.col; + this.sprite.currentRow = this.row; + } } diff --git a/src/core/animation/animationManager.ts b/src/core/animation/animationManager.ts index faaa1ef6..b1ea0a0f 100644 --- a/src/core/animation/animationManager.ts +++ b/src/core/animation/animationManager.ts @@ -6,261 +6,261 @@ import Animation from './animation'; import StateMachine from './stateMachine'; export default class AnimationManager { - /** - * @memberof AnimationManager - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof AnimationManager + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof AnimationManager - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof AnimationManager + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @memberof AnimationManager - * @description Sprite that the AnimationManager is attached to - * @type Sprite - * @since 2.0.0 - */ - public sprite: Sprite; + /** + * @memberof AnimationManager + * @description Sprite that the AnimationManager is attached to + * @type Sprite + * @since 2.0.0 + */ + public sprite: Sprite; - /** - * @memberof AnimationManager - * @description Animations that are registered and added to the AnimationManager - * @type Animation[] - * @since 2.0.0 - */ - public animations: Animation[]; + /** + * @memberof AnimationManager + * @description Animations that are registered and added to the AnimationManager + * @type Animation[] + * @since 2.0.0 + */ + public animations: Animation[]; - /** - * @memberof AnimationManager - * @description The current selected animation, last played or currently playing - * @type Animation - * @since 2.0.0 - */ - public currentAnimation: Animation; + /** + * @memberof AnimationManager + * @description The current selected animation, last played or currently playing + * @type Animation + * @since 2.0.0 + */ + public currentAnimation: Animation; - /** - * @constructor AnimationManager - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @param {Sprite} sprite Sprite that the AnimationManager is attached to - * @param {Duck.Types.Animation.Config} defaultAnimation Configuration to make a default animation of the Sprite - * @since 2.0.0 - */ - constructor( - game: Game, - scene: Scene, - sprite: Sprite, - defaultAnimation: Duck.Types.Animation.Config - ) { - this.game = game; - this.scene = scene; - this.sprite = sprite; + /** + * @constructor AnimationManager + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @param {Sprite} sprite Sprite that the AnimationManager is attached to + * @param {Duck.Types.Animation.Config} defaultAnimation Configuration to make a default animation of the Sprite + * @since 2.0.0 + */ + constructor( + game: Game, + scene: Scene, + sprite: Sprite, + defaultAnimation: Duck.Types.Animation.Config + ) { + this.game = game; + this.scene = scene; + this.sprite = sprite; - this.animations = []; + this.animations = []; - this.currentAnimation = this.add(defaultAnimation); - } + this.currentAnimation = this.add(defaultAnimation); + } - /** - * @memberof AnimationManager - * @description Creates a StateMachine - * @param {Duck.Types.StateMachine.Config} config StateMachine config - * @param {Animation[]} animations Animations to add to the StateMachine - * @returns {StateMachine} - * @since 2.0.0 - */ - public createStateMachine( - config: Duck.Types.StateMachine.Config, - animations: Animation[] - ) { - return new StateMachine(config, animations); - } + /** + * @memberof AnimationManager + * @description Creates a StateMachine + * @param {Duck.Types.StateMachine.Config} config StateMachine config + * @param {Animation[]} animations Animations to add to the StateMachine + * @returns {StateMachine} + * @since 2.0.0 + */ + public createStateMachine( + config: Duck.Types.StateMachine.Config, + animations: Animation[] + ) { + return new StateMachine(config, animations); + } - /** - * @memberof AnimationManager - * @description Sets the current animation - * @param {string} key Key of the Animation to set as the currentAnimation - * @since 2.0.0 - */ - public setCurrentAnimation(key: string) { - this.currentAnimation = this.get(key) as Animation; - } + /** + * @memberof AnimationManager + * @description Sets the current animation + * @param {string} key Key of the Animation to set as the currentAnimation + * @since 2.0.0 + */ + public setCurrentAnimation(key: string) { + this.currentAnimation = this.get(key) as Animation; + } - /** - * @memberof AnimationManager - * @description Adds and creates a new Animation - * @param {string} key Key of the Animation to set as the currentAnimation - * @returns {Animation} - * @since 2.0.0 - */ - public add(config: Duck.Types.Animation.Config) { - const anim = new Animation(config, this.game, this.scene, this.sprite); + /** + * @memberof AnimationManager + * @description Adds and creates a new Animation + * @param {string} key Key of the Animation to set as the currentAnimation + * @returns {Animation} + * @since 2.0.0 + */ + public add(config: Duck.Types.Animation.Config) { + const anim = new Animation(config, this.game, this.scene, this.sprite); - this.animations.push(anim); + this.animations.push(anim); - return anim; - } + return anim; + } - /** - * @memberof AnimationManager - * @description Removes an Animation from the array of animations (AnimationManager#animations) - * @param {string} key Key of the Animation to remove - * @since 2.0.0 - */ - public remove(key: string) { - const anim = this.get(key); + /** + * @memberof AnimationManager + * @description Removes an Animation from the array of animations (AnimationManager#animations) + * @param {string} key Key of the Animation to remove + * @since 2.0.0 + */ + public remove(key: string) { + const anim = this.get(key); - if (anim) { - this.animations.splice(this.getIndex(key)); - } - } + if (anim) { + this.animations.splice(this.getIndex(key)); + } + } - /** - * @memberof AnimationManager - * @description Finds and returns an Animation from the array of animations (AnimationManager#animations) - * @param {string} key Key of the Animation find - * @returns {Animation | undefined} - * @since 2.0.0 - */ - public get(key: string) { - return this.animations.find((anim) => anim.key === key); - } + /** + * @memberof AnimationManager + * @description Finds and returns an Animation from the array of animations (AnimationManager#animations) + * @param {string} key Key of the Animation find + * @returns {Animation | undefined} + * @since 2.0.0 + */ + public get(key: string) { + return this.animations.find((anim) => anim.key === key); + } - /** - * @memberof AnimationManager - * @description Finds and returns the index of an Animation from the array of animations (AnimationManager#animations) - * @param {string} key Key of the Animation find the index of - * @returns {number} - * @since 2.0.0 - */ - public getIndex(key: string) { - return this.animations.findIndex((anim) => anim.key === key); - } + /** + * @memberof AnimationManager + * @description Finds and returns the index of an Animation from the array of animations (AnimationManager#animations) + * @param {string} key Key of the Animation find the index of + * @returns {number} + * @since 2.0.0 + */ + public getIndex(key: string) { + return this.animations.findIndex((anim) => anim.key === key); + } - /** - * @memberof AnimationManager - * @description Clears all animations - * @since 2.0.0 - */ - public clear() { - this.animations = []; - } + /** + * @memberof AnimationManager + * @description Clears all animations + * @since 2.0.0 + */ + public clear() { + this.animations = []; + } - /** - * @memberof AnimationManager - * @description Sets the current animation repeat - * @param {number} repeat - * @since 2.0.0 - */ - public setRepeat(repeat: number) { - this.currentAnimation.setRepeat(repeat); - } + /** + * @memberof AnimationManager + * @description Sets the current animation repeat + * @param {number} repeat + * @since 2.0.0 + */ + public setRepeat(repeat: number) { + this.currentAnimation.setRepeat(repeat); + } - /** - * @memberof AnimationManager - * @description Sets the current animation reversed repeat - * @param {number} repeat - * @since 2.0.0 - */ - public setRepeatReverse(repeat: number) { - this.currentAnimation.setRepeatReverse(repeat); - } + /** + * @memberof AnimationManager + * @description Sets the current animation reversed repeat + * @param {number} repeat + * @since 2.0.0 + */ + public setRepeatReverse(repeat: number) { + this.currentAnimation.setRepeatReverse(repeat); + } - /** - * @memberof AnimationManager - * @description Plays the current animation normally - * @since 2.0.0 - */ - public play() { - this.currentAnimation.play(); - } + /** + * @memberof AnimationManager + * @description Plays the current animation normally + * @since 2.0.0 + */ + public play() { + this.currentAnimation.play(); + } - /** - * @memberof AnimationManager - * @description Plays the current animation reversely - * @since 2.0.0 - */ - public playReverse() { - this.currentAnimation.playReverse(); - } + /** + * @memberof AnimationManager + * @description Plays the current animation reversely + * @since 2.0.0 + */ + public playReverse() { + this.currentAnimation.playReverse(); + } - /** - * @memberof AnimationManager - * @description Pauses the current animation normally - * @since 2.0.0 - */ - public pause() { - this.currentAnimation.pause(); - } + /** + * @memberof AnimationManager + * @description Pauses the current animation normally + * @since 2.0.0 + */ + public pause() { + this.currentAnimation.pause(); + } - /** - * @memberof AnimationManager - * @description Pauses the current animation reversely - * @since 2.0.0 - */ - public pauseReverse() { - this.currentAnimation.pause(); - } + /** + * @memberof AnimationManager + * @description Pauses the current animation reversely + * @since 2.0.0 + */ + public pauseReverse() { + this.currentAnimation.pause(); + } - /** - * @memberof AnimationManager - * @description Resumes the current animation normally - * @since 2.0.0 - */ - public resume() { - this.currentAnimation.resume(); - } + /** + * @memberof AnimationManager + * @description Resumes the current animation normally + * @since 2.0.0 + */ + public resume() { + this.currentAnimation.resume(); + } - /** - * @memberof AnimationManager - * @description Resumes the current animation reversely - * @since 2.0.0 - */ - public resumeReverse() { - this.currentAnimation.resumeReverse(); - } + /** + * @memberof AnimationManager + * @description Resumes the current animation reversely + * @since 2.0.0 + */ + public resumeReverse() { + this.currentAnimation.resumeReverse(); + } - /** - * @memberof AnimationManager - * @description Stops the current animation normally - * @since 2.0.0 - */ - public stop() { - this.currentAnimation.stop(); - } + /** + * @memberof AnimationManager + * @description Stops the current animation normally + * @since 2.0.0 + */ + public stop() { + this.currentAnimation.stop(); + } - /** - * @memberof AnimationManager - * @description Stops the current animation reversely - * @since 2.0.0 - */ - public stopReverse() { - this.currentAnimation.stopReverse(); - } + /** + * @memberof AnimationManager + * @description Stops the current animation reversely + * @since 2.0.0 + */ + public stopReverse() { + this.currentAnimation.stopReverse(); + } - /** - * @memberof AnimationManager - * @description Restarts the current animation normally - * @since 2.0.0 - */ - public restart() { - this.currentAnimation.restart(); - } + /** + * @memberof AnimationManager + * @description Restarts the current animation normally + * @since 2.0.0 + */ + public restart() { + this.currentAnimation.restart(); + } - /** - * @memberof AnimationManager - * @description Restarts the current animation reversely - * @since 2.0.0 - */ - public restartReverse() { - this.currentAnimation.restartReverse(); - } + /** + * @memberof AnimationManager + * @description Restarts the current animation reversely + * @since 2.0.0 + */ + public restartReverse() { + this.currentAnimation.restartReverse(); + } } diff --git a/src/core/animation/animationState.ts b/src/core/animation/animationState.ts index 2f9e848f..c9b07a53 100644 --- a/src/core/animation/animationState.ts +++ b/src/core/animation/animationState.ts @@ -8,66 +8,66 @@ import Animation from './animation'; * @since 2.0.0 */ export default class AnimationState { - /** - * @memberof AnimationState - * @description The name/key of the AnimationState, used to identify between states, the same as the Animation - * @type string - * @since 2.0.0 - */ - public readonly key: string; + /** + * @memberof AnimationState + * @description The name/key of the AnimationState, used to identify between states, the same as the Animation + * @type string + * @since 2.0.0 + */ + public readonly key: string; - /** - * @memberof AnimationState - * @description The Animation to play by the AnimationState - * @type Animation - * @since 2.0.0 - */ - public animation: Animation; + /** + * @memberof AnimationState + * @description The Animation to play by the AnimationState + * @type Animation + * @since 2.0.0 + */ + public animation: Animation; - /** - * @memberof AnimationState - * @description Determines whether the AnimationState auto advances to another AnimationState on completion - * @type boolean - * @since 2.0.0 - */ - public autoAdvance: boolean; + /** + * @memberof AnimationState + * @description Determines whether the AnimationState auto advances to another AnimationState on completion + * @type boolean + * @since 2.0.0 + */ + public autoAdvance: boolean; - /** - * @memberof AnimationState - * @description The Vector2 position of the AnimationState on an imaginary 2D Plane, used to travel in between states by StateMachine - * @type Vector2 - * @since 2.0.0 - */ - public vector: Vector2; + /** + * @memberof AnimationState + * @description The Vector2 position of the AnimationState on an imaginary 2D Plane, used to travel in between states by StateMachine + * @type Vector2 + * @since 2.0.0 + */ + public vector: Vector2; - /** - * @memberof AnimationState - * @description An array of AnimationStates that are connected to this AnimationState, can only travel between connections - * @type - * @since 2.0.0 - */ - public connections: AnimationState[]; + /** + * @memberof AnimationState + * @description An array of AnimationStates that are connected to this AnimationState, can only travel between connections + * @type + * @since 2.0.0 + */ + public connections: AnimationState[]; - /** - * @constructor AnimationState - * @param {string} key The name/key of the AnimationState, used to identify between states, the same as the Animation - * @param {Animation} animation The Animation to play by the AnimationState - * @param {Vector2} vector The Vector2 position of the AnimationState on an imaginary 2D Plane, used to travel in between states by StateMachine - * @param {boolean} autoAdvance Determines whether the AnimationState auto advances to another AnimationState on completion - * @since 2.0.0 - */ - constructor( - key: string, - animation: Animation, - vector: Vector2, - autoAdvance: boolean - ) { - this.key = key; - this.animation = animation; - this.autoAdvance = autoAdvance; + /** + * @constructor AnimationState + * @param {string} key The name/key of the AnimationState, used to identify between states, the same as the Animation + * @param {Animation} animation The Animation to play by the AnimationState + * @param {Vector2} vector The Vector2 position of the AnimationState on an imaginary 2D Plane, used to travel in between states by StateMachine + * @param {boolean} autoAdvance Determines whether the AnimationState auto advances to another AnimationState on completion + * @since 2.0.0 + */ + constructor( + key: string, + animation: Animation, + vector: Vector2, + autoAdvance: boolean + ) { + this.key = key; + this.animation = animation; + this.autoAdvance = autoAdvance; - this.vector = vector; + this.vector = vector; - this.connections = []; - } + this.connections = []; + } } diff --git a/src/core/animation/stateMachine.ts b/src/core/animation/stateMachine.ts index 82abb3f3..2aac1358 100644 --- a/src/core/animation/stateMachine.ts +++ b/src/core/animation/stateMachine.ts @@ -4,168 +4,161 @@ import Animation from './animation'; import AnimationState from './animationState'; export default class StateMachine { - /** - * @memberof StateMachine - * @description The configuration of the StateMachine - * @type Duck.Types.StateMachine.Config - * @since 2.0.0 - */ - public config: Duck.Types.StateMachine.Config; - - /** - * @memberof StateMachine - * @description All animations used by the StateMachine - * @type - * @since 2.0.0 - */ - public animations: Animation[]; - - /** - * @memberof StateMachine - * @description A 2D Array of AnimationStates, one connection is represented by a nested array, ex: StateMachine.connections = [[\/* one connection here *\/]] - * @type AnimationState[][] - * @since 2.0.0 - */ - public connections: AnimationState[][]; - - /** - * @memberof StateMachine - * @description The current AnimationState that is traveled to, use this to get and play the animation - * @type AnimationState - * @since 2.0.0 - */ - public currentState: AnimationState; - - /** - * @memberof StateMachine - * @description Creates a StateMachine instance - * @param {Duck.Types.StateMachine.Config} config StateMachine configuration - * @param {Animation[]} animations All Animations needed by the StateMachine - * @since 2.0.0 - */ - constructor( - config: Duck.Types.StateMachine.Config, - animations: Animation[] - ) { - this.config = config; - this.animations = animations; - this.connections = []; - - // connect from base connections config - this.config.connections.forEach((base) => { - if (base.connType === 'one') { - this.connectTo(base.from, base.to); - } else { - this.connectLoop(base.from, base.to); - } - }); - - this.currentState = this.connections.find((conn) => - conn.find((state) => state.key === this.config.defaultState) - ) as unknown as AnimationState; - } - - /** - * @memberof StateMachine - * @description Creates an AnimationState for both passed and values and makes a connection between from -> to - * @param {Duck.Types.StateMachine.ConnectionBaseValue} from AnimationState base config to connect from - * @param {Duck.Types.StateMachine.ConnectionBaseValue} to AnimationState base config to connect to - * @since 2.0.0 - */ - public connectTo( - from: Duck.Types.StateMachine.ConnectionBaseValue, - to: Duck.Types.StateMachine.ConnectionBaseValue - ) { - const fromAnim = this.animations.find( - (anim) => anim.config.key === from.key - ); - const toAnim = this.animations.find( - (anim) => anim.config.key === to.key - ); - - if (fromAnim && toAnim) { - const fromState = new AnimationState( - fromAnim.key, - fromAnim, - from.vector, - from.autoAdvance || false - ); - const toState = new AnimationState( - toAnim.key, - toAnim, - to.vector, - to.autoAdvance || false - ); - - this.connections.push([fromState, toState]); - } - } - - /** - * @memberof StateMachine - * @description Creates an AnimationState for both passed and values and makes a connection between from -> to and to -> from - * @param {Duck.Types.StateMachine.ConnectionBaseValue} from AnimationState base config to connect from - * @param {Duck.Types.StateMachine.ConnectionBaseValue} to AnimationState base config to connect to - * @since 2.0.0 - */ - public connectLoop( - from: Duck.Types.StateMachine.ConnectionBaseValue, - to: Duck.Types.StateMachine.ConnectionBaseValue - ) { - const fromAnim = this.animations.find( - (anim) => anim.config.key === from.key - ); - const toAnim = this.animations.find( - (anim) => anim.config.key === to.key - ); - - if (fromAnim && toAnim) { - const fromState = new AnimationState( - fromAnim.key, - fromAnim, - from.vector, - from.autoAdvance || false - ); - const toState = new AnimationState( - toAnim.key, - toAnim, - to.vector, - to.autoAdvance || false - ); - - fromState.connections.push(toState); - toState.connections.push(fromState); - - this.connections.push([fromState, toState], [toState, fromState]); - } - } - - /** - * @memberof StateMachine - * @description Travels along the imaginary 2D plane to find a connection based on other connections' vectors - * @param {Vector2} vector Vector to match to another Connection that will set the currentState as - * @since 2.0.0 - */ - public travel(vector: Vector2) { - const state: AnimationState = this.connections.find((connArray) => - connArray.find((state) => state.vector.equals(vector)) - ) as unknown as AnimationState; - - if (this.canTravel(state.key)) { - this.currentState = state; - } - } - - /** - * @memberof StateMachine - * @description Checks if the currentState's connections include another AnimationState connection with a passed key - * @param {string} dest The destination or key to find - * @returns {boolean} - * @since 2.0.0 - */ - public canTravel(dest: string) { - return this.currentState.connections.find((state) => state.key === dest) - ? true - : false; - } + /** + * @memberof StateMachine + * @description The configuration of the StateMachine + * @type Duck.Types.StateMachine.Config + * @since 2.0.0 + */ + public config: Duck.Types.StateMachine.Config; + + /** + * @memberof StateMachine + * @description All animations used by the StateMachine + * @type + * @since 2.0.0 + */ + public animations: Animation[]; + + /** + * @memberof StateMachine + * @description A 2D Array of AnimationStates, one connection is represented by a nested array, ex: StateMachine.connections = [[\/* one connection here *\/]] + * @type AnimationState[][] + * @since 2.0.0 + */ + public connections: AnimationState[][]; + + /** + * @memberof StateMachine + * @description The current AnimationState that is traveled to, use this to get and play the animation + * @type AnimationState + * @since 2.0.0 + */ + public currentState: AnimationState; + + /** + * @memberof StateMachine + * @description Creates a StateMachine instance + * @param {Duck.Types.StateMachine.Config} config StateMachine configuration + * @param {Animation[]} animations All Animations needed by the StateMachine + * @since 2.0.0 + */ + constructor(config: Duck.Types.StateMachine.Config, animations: Animation[]) { + this.config = config; + this.animations = animations; + this.connections = []; + + // connect from base connections config + this.config.connections.forEach((base) => { + if (base.connType === 'one') { + this.connectTo(base.from, base.to); + } else { + this.connectLoop(base.from, base.to); + } + }); + + this.currentState = this.connections.find((conn) => + conn.find((state) => state.key === this.config.defaultState) + ) as unknown as AnimationState; + } + + /** + * @memberof StateMachine + * @description Creates an AnimationState for both passed and values and makes a connection between from -> to + * @param {Duck.Types.StateMachine.ConnectionBaseValue} from AnimationState base config to connect from + * @param {Duck.Types.StateMachine.ConnectionBaseValue} to AnimationState base config to connect to + * @since 2.0.0 + */ + public connectTo( + from: Duck.Types.StateMachine.ConnectionBaseValue, + to: Duck.Types.StateMachine.ConnectionBaseValue + ) { + const fromAnim = this.animations.find( + (anim) => anim.config.key === from.key + ); + const toAnim = this.animations.find((anim) => anim.config.key === to.key); + + if (fromAnim && toAnim) { + const fromState = new AnimationState( + fromAnim.key, + fromAnim, + from.vector, + from.autoAdvance || false + ); + const toState = new AnimationState( + toAnim.key, + toAnim, + to.vector, + to.autoAdvance || false + ); + + this.connections.push([fromState, toState]); + } + } + + /** + * @memberof StateMachine + * @description Creates an AnimationState for both passed and values and makes a connection between from -> to and to -> from + * @param {Duck.Types.StateMachine.ConnectionBaseValue} from AnimationState base config to connect from + * @param {Duck.Types.StateMachine.ConnectionBaseValue} to AnimationState base config to connect to + * @since 2.0.0 + */ + public connectLoop( + from: Duck.Types.StateMachine.ConnectionBaseValue, + to: Duck.Types.StateMachine.ConnectionBaseValue + ) { + const fromAnim = this.animations.find( + (anim) => anim.config.key === from.key + ); + const toAnim = this.animations.find((anim) => anim.config.key === to.key); + + if (fromAnim && toAnim) { + const fromState = new AnimationState( + fromAnim.key, + fromAnim, + from.vector, + from.autoAdvance || false + ); + const toState = new AnimationState( + toAnim.key, + toAnim, + to.vector, + to.autoAdvance || false + ); + + fromState.connections.push(toState); + toState.connections.push(fromState); + + this.connections.push([fromState, toState], [toState, fromState]); + } + } + + /** + * @memberof StateMachine + * @description Travels along the imaginary 2D plane to find a connection based on other connections' vectors + * @param {Vector2} vector Vector to match to another Connection that will set the currentState as + * @since 2.0.0 + */ + public travel(vector: Vector2) { + const state: AnimationState = this.connections.find((connArray) => + connArray.find((state) => state.vector.equals(vector)) + ) as unknown as AnimationState; + + if (this.canTravel(state.key)) { + this.currentState = state; + } + } + + /** + * @memberof StateMachine + * @description Checks if the currentState's connections include another AnimationState connection with a passed key + * @param {string} dest The destination or key to find + * @returns {boolean} + * @since 2.0.0 + */ + public canTravel(dest: string) { + return this.currentState.connections.find((state) => state.key === dest) + ? true + : false; + } } diff --git a/src/core/camera/camera.ts b/src/core/camera/camera.ts index e1fa80ed..05f15c7e 100644 --- a/src/core/camera/camera.ts +++ b/src/core/camera/camera.ts @@ -12,14 +12,10 @@ import Debug from '../debug/debug'; import randomInt from '../math/randomInt'; import lerp from '../math/lerp'; import circleRectCollision from '../physics/utils/circleToRectIntersect'; -import RoundRect from '../gameobjects/roundrect'; -import Sprite from '../gameobjects/sprite'; -import StaticLight from '../lights/staticLight'; -import Button from '../gameobjects/ui/button'; -import Text from '../gameobjects/ui/text'; -import Particle from '../gameobjects/particles/particle'; import PhysicsBody from '../physics/physicsBody'; import Map from '../map/map'; +import Vector2 from '../math/vector2'; +import GameObject from '../gameobjects/gameObject'; /** * @class Camera @@ -28,714 +24,760 @@ import Map from '../map/map'; * @since 1.0.0-beta */ export default class Camera { - /** - * @memberof Camera - * @description Game instance - * @type Game - * @since 1.0.0-beta - */ - public game: Game; - - /** - * @memberof Camera - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; - protected lookAt: number[]; - - /** - * @memberof Camera - * @description The Camera's current FOV - * @type number - * @since 2.1.0 - */ - public fieldOfView: number; - - /** - * @memberof Camera - * @description The Camera's current zoom - * @type number - * @since 2.1.0 - */ - public distance: number; - - /** - * @memberof Camera - * @description Camera's viewport, has info about the viewport - * @since 1.0.0-beta - */ - public viewport: { - left: number; - right: number; - top: number; - bottom: number; - w: number; - h: number; - scale: number[]; - }; - protected aspectRatio: number | undefined; - - /** - * @memberof Camera - * @description Determines if the camera is a main camera in the attached scene. Must be added by Scene.mainCamera - * @type boolean - * @since 1.0.0-beta - */ - public readonly isMain: boolean; - - protected bounds: - | { position: { x: number; y: number }; w: number; h: number } - | undefined; - - /** - * @memberof Camera - * @description A gameobject that the Camera is currently following - * @type Duck.TypeClasses.GameObjects.GameObject | undefined - * @since - */ - public following: - | Duck.TypeClasses.GameObjects.GameObject - | undefined; - protected lerpX = 1; - protected lerpY = 1; - - /** - * @constructor Camera - * @description Creates a Camera instance. - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor(game: Game, scene: Scene) { - this.game = game; - this.scene = scene; - this.distance = 1000.0; - this.isMain = false; - if (scene.mainCamera === this) { - this.isMain = true; - } - this.lookAt = [0, 0]; - this.fieldOfView = Math.PI / 4.0; - this.viewport = { - left: 0, - right: 0, - top: 0, - bottom: 0, - w: 0, - h: 0, - scale: [1.0, 1.0], - }; - - this.bounds; - - this.following; - - this.updateViewport(); - } - - /** - * @memberof Camera - * @description Begins camera path - * - * DO NOT CALL MANUALLY, CALLED IN GAME -> SCENE LOOP AUTOMATICALLY - * - * @since 1.0.0-beta - */ - public begin() { - this.game.renderer.save(); - this.applyScale(); - this.applyTranslation(); - - // follow - if (this.following) { - if (this.following.shape === 'rect') { - if (this.bounds) { - if ( - rectToRectIntersect(this.following as Rect, this.bounds) - ) { - this.lookAt[0] = lerp( - this.lookAt[0], - this.following.getCenterX(), - this.lerpX - ); - this.lookAt[1] = lerp( - this.lookAt[1], - this.following.getCenterY(), - this.lerpY - ); - } - } else { - this.lookAt[0] = lerp( - this.lookAt[0], - this.following.getCenterX(), - this.lerpX - ); - this.lookAt[1] = lerp( - this.lookAt[1], - this.following.getCenterY(), - this.lerpY - ); - } - } - - if (this.following.shape === 'circle') { - if (this.bounds) { - if ( - circleToRectIntersect( - this.following as Circle, - this.bounds - ) - ) { - this.lookAt[0] = lerp( - this.lookAt[0], - this.following.getCenterX(), - this.lerpX - ); - this.lookAt[1] = lerp( - this.lookAt[1], - this.following.getCenterY(), - this.lerpY - ); - } - } else { - this.lookAt[0] = lerp( - this.lookAt[0], - this.following.getCenterX(), - this.lerpX - ); - this.lookAt[1] = lerp( - this.lookAt[1], - this.following.getCenterY(), - this.lerpY - ); - } - } - - this.updateViewport(); - } - } - - /** - * @memberof Camera - * @description Ends camera path - * - * DO NOT CALL MANUALLY, CALLED IN GAME -> SCENE LOOP AUTOMATICALLY - * - * @since 1.0.0-beta - */ - public end() { - this.game.renderer.restore(); - } - - protected applyScale() { - this.game.renderer.scale( - this.viewport.scale[0], - this.viewport.scale[1] - ); - } - - protected applyTranslation() { - this.game.renderer.translate(-this.viewport.left, -this.viewport.top); - } - - protected updateViewport() { - if (this.game.renderer.ctx) { - // dpr scaling - let cWidth = this.game.canvas.width; - let cHeight = this.game.canvas.height; - - if (this.game.config.dprScale && window.devicePixelRatio !== 1) { - cWidth = Number(this.game.canvas.style.width.replace('px', '')); - - cHeight = Number( - this.game.canvas.style.height.replace('px', '') - ); - - // set zoom for dpr scaling - this.distance = 1000 / window.devicePixelRatio; - } - - this.aspectRatio = cWidth / cHeight; - this.viewport.w = this.distance * Math.tan(this.fieldOfView); - this.viewport.h = this.viewport.w / this.aspectRatio; - this.viewport.left = this.lookAt[0] - this.viewport.w / 2.0; - this.viewport.top = this.lookAt[1] - this.viewport.h / 2.0; - this.viewport.right = this.viewport.left + this.viewport.w; - this.viewport.bottom = this.viewport.top + this.viewport.h; - this.viewport.scale[0] = cWidth / this.viewport.w; - this.viewport.scale[1] = cHeight / this.viewport.h; - } else { - new Debug.Error( - 'Cannot update camera. CanvasRenderingContext2D is undefined.' - ); - } - } - - /** - * @memberof Camera - * @description Sets the zoom - * @param {number} z Zoom value - * @since 1.0.0-beta - */ - public setZoom(z: number) { - this.distance = z; - this.updateViewport(); - } - - /** - * @memberof Camera - * @description Sets the zoom smoothly - * @param {number} intervalMS How often zoom is modified by smoothValue - * @param {number} smoothValue The number that is added to zoom on an interval - * @param {number} z Target Zoom value - * @since 1.0.0-beta - */ - public setZoomSmooth(intervalMS: number, smoothValue: number, z: number) { - let operation: 'add' | 'subtract' = 'add'; - - if (this.distance < z) { - operation = 'add'; - } else { - operation = 'subtract'; - } - - const int = setInterval(() => { - if (operation === 'add') { - if (this.distance < z) { - this.distance += smoothValue; - } else { - clearInterval(int); - if (this.game.config.debug) { - new Debug.Log( - 'Reached target camera Zoom with setZoomSmooth' - ); - } - } - } else { - if (this.distance > z) { - this.distance -= smoothValue; - } else { - clearInterval(int); - if (this.game.config.debug) { - new Debug.Log( - 'Reached target camera Zoom with setZoomSmooth' - ); - } - } - } - }, intervalMS); - } - - /** - * @memberof Camera - * @description Moves the camera to a position - * @param {number} x X position - * @param {number} y Y position - * @since 1.0.0-beta - */ - public moveTo(x: number, y: number) { - this.lookAt[0] = x; - this.lookAt[1] = y; - this.updateViewport(); - } - - /** - * @memberof Camera - * @description Follows a GameObject - * @param {Duck.TypeClasses.GameObjects.GameObject} gameObject Game object to follow - * @param {number} [lerpX=1] Lerp on the x axis, optional -> defaults: 1 - * @param {number} [lerpY=1] Lerp on the y axis, optional -> defaults: 1 - * @since 1.0.0-beta - */ - public startFollow( - gameObject: Duck.TypeClasses.GameObjects.GameObject, - lerpX = 1, - lerpY = 1 - ) { - this.following = gameObject; - this.lerpX = lerpX; - this.lerpY = lerpY; - } - - /** - * @memberof Camera - * @description Stops following a gameobject - * @since 1.0.0-beta - */ - public stopFollow() { - this.following = undefined; - } - - /** - * @memberof Camera - * @description Transforms a coordinate pair from screen coordinates (relative to the canvas) into world coordinates - * @param {number} x X position - * @param {number} y Y position - * @param {Duck.TypeClasses.GameObjects.GameObject} obj GameObject - * @since 1.0.0-beta - */ - public screenToWorld( - x: number, - y: number, - obj: Duck.TypeClasses.GameObjects.GameObject - ) { - obj.position.x = x / this.viewport.scale[0] + this.viewport.left; - obj.position.y = y / this.viewport.scale[1] + this.viewport.top; - return obj; - } - - /** - * @memberof Camera - * @description Transforms a coordinate pair from world coordinates into screen coordinates (relative to the canvas) - - * useful for interacting with a Button while having a camera - * @param {number} x X position - * @param {number} y Y position - * @param {Duck.TypeClasses.GameObjects.GameObject} obj GameObject - * @since 1.0.0-beta - */ - public worldToScreen( - x: number, - y: number, - obj: Duck.TypeClasses.GameObjects.GameObject - ) { - obj.position.x = (x - this.viewport.left) * this.viewport.scale[0]; - obj.position.y = (y - this.viewport.top) * this.viewport.scale[1]; - return obj; - } - - /** - * @memberof Camera - * @description Sets the FOV - * @param {number} f FOV value - * @since 1.0.0-beta - */ - public setFOV(f: number) { - this.fieldOfView = f; - } - - /** - * @memberof Camera - * @description Sets the FOV smoothly - * @param {number} intervalMS How often FOV is modified by smoothValue - * @param {number} smoothValue The number that is added to FOV on an interval - * @param {number} f Target FOV value - * @since 1.0.0-beta - */ - public setFOVSmooth(intervalMS: number, smoothValue: number, f: number) { - let operation: 'add' | 'subtract' = 'add'; - - if (this.fieldOfView < f) { - operation = 'add'; - } else { - operation = 'subtract'; - } - - const int = setInterval(() => { - if (operation === 'add') { - if (this.fieldOfView < f) { - this.fieldOfView += smoothValue; - } else { - clearInterval(int); - if (this.game.config.debug) { - new Debug.Log( - 'Reached target camera FOV with setFOVSmooth' - ); - } - } - } else { - if (this.fieldOfView > f) { - this.fieldOfView -= smoothValue; - } else { - clearInterval(int); - if (this.game.config.debug) { - new Debug.Log( - 'Reached target camera FOV with setFOVSmooth' - ); - } - } - } - }, intervalMS); - } - - /** - * @memberof Camera - * @description Resets the FOV to the default value - * @since 1.0.0-beta - */ - public resetFOV() { - this.fieldOfView = Math.PI / 4.0; - } - - /** - * @memberof Camera - * @description Resets the Zoom to the default value - * @since 1.0.0-beta - */ - public resetZoom() { - this.distance = 1000.0; - } - - /** - * @memberof Camera - * @description Bounds of the Camera, an area the camera can be in - * @param {{ position: { x:number; y:number }; w:number; h:number; }} bounds An object with the bounds - * @since 1.0.0-beta - */ - public setBounds(bounds: { - position: { x: number; y: number }; - w: number; - h: number; - }) { - this.bounds = bounds; - } - - /** - * @memberof Camera - * @description Shakes the camera - * @param {number} intervalMS How often (in milliseconds) the passed value is added/subtracted from the Camera viewport position - * @param {number} timeMS For how long in milliseconds the shake lasts - * @param {number} v Value to be added/subtracted from the Camera viewport position - * @since 1.0.0 - */ - public shake(intervalMS: number, timeMS: number, v: number) { - const int = setInterval(() => { - const r = randomInt(1, 4); - - if (r === 1) { - this.lookAt[0] += v; - } - - if (r === 2) { - this.lookAt[0] -= v; - } - - if (r === 3) { - this.lookAt[1] += v; - } - - if (r === 2) { - this.lookAt[1] += v; - } - - this.updateViewport(); - }, intervalMS); - - setTimeout(() => { - clearInterval(int); - }, timeMS); - } - - /** - * @memberof Camera - * @description Culls/Renders objects that are passed and does not render other object that are not passed - * @param {Duck.Types.Renderable[]} renderableObjects Objects that should be culled/rendered - * @param {Duck.Types.Camera.CullingOptions} [options] Options to modify how objects are culled, optional -> defaults: - * { preserveVisibility: true, modifyPhysicsEnable: true } - * - * Notes: - * - Calls CanvasRenderer.pipeline.pool() ignoring the pool interval - * - * @since 2.0.0 - */ - public cull( - renderableObjects: Duck.Types.Renderable[], - options?: Duck.Types.Camera.CullingOptions - ) { - const preserveVisibility = options ? options.preserveVisibility : true; - const modifyPhysicsEnable = options - ? options.modifyPhysicsEnable - : true; - - const visibleObjects = this.scene.displayList.visibilityFilter(true); - - const culledObjects = visibleObjects.filter((r) => - renderableObjects.find((_r) => _r.id === r.id) - ); - const nonCulledObjects = visibleObjects.filter( - (r) => !culledObjects.includes(r) - ); - - for (const culledObject of culledObjects) { - // skip maps - if (culledObject instanceof Map) { - continue; - } - - if (preserveVisibility) { - culledObject.culled = true; - } else { - culledObject.visible = true; - } - - if (modifyPhysicsEnable) { - if (culledObject instanceof PhysicsBody) { - culledObject.enabled = true; - } - } - } - - for (const nonCulledObject of nonCulledObjects) { - // skip maps - if (nonCulledObject instanceof Map) { - continue; - } - - if (preserveVisibility) { - nonCulledObject.culled = false; - } else { - nonCulledObject.visible = false; - } - - if (modifyPhysicsEnable) { - if (nonCulledObject instanceof PhysicsBody) { - nonCulledObject.enabled = false; - } - } - } - - // pool RendererPipeline - this.game.renderer.pipeline.pool(); - } - - /** - * @memberof Camera - * @description A form of Frustum Culling that gets all objects visible to the player by the viewport's width and height and culls those objects - * and does not render objects outside/not-visible to the player/camera - * @param {Duck.Types.Camera.CullingOptions} [options] Options to modify how objects are culled, optional -> defaults: - * { preserveVisibility: true, modifyPhysicsEnable: true } - * - * Notes: - * - Calls CanvasRenderer.pipeline.pool() ignoring the pool interval - * - * @since 2.0.0 - */ - public autoCull(options?: Duck.Types.Camera.CullingOptions) { - const preserveVisibility = options ? options.preserveVisibility : true; - const modifyPhysicsEnable = options - ? options.modifyPhysicsEnable - : true; - - const objects = this.scene.displayList.list; - - const culledObjects = objects.filter((r) => { - if ( - r instanceof Rect || - r instanceof RoundRect || - r instanceof Sprite || - r instanceof Button || - r instanceof Text - ) { - if ( - rectToRectIntersect(r, { - position: { - x: this.viewport.left, - y: this.viewport.top, - }, - w: this.viewport.w, - h: this.viewport.h, - }) - ) { - return true; - } else { - return false; - } - } - - if ( - r instanceof Circle || - r instanceof StaticLight || - r instanceof Particle - ) { - if ( - circleRectCollision(r, { - position: { - x: this.viewport.left, - y: this.viewport.top, - }, - w: this.viewport.w, - h: this.viewport.h, - }) - ) { - return true; - } else { - return false; - } - } - - return false; - }); - const nonCulledObjects = objects.filter( - (r) => !culledObjects.includes(r) - ); - - for (const culledObject of culledObjects) { - // skip maps - if (culledObject instanceof Map) { - continue; - } - - if (preserveVisibility) { - culledObject.culled = true; - } else { - culledObject.visible = true; - } - - if (modifyPhysicsEnable) { - if (culledObject instanceof PhysicsBody) { - culledObject.enabled = true; - } - } - } - - for (const nonCulledObject of nonCulledObjects) { - // skip maps - if (nonCulledObject instanceof Map) { - continue; - } - - if (preserveVisibility) { - nonCulledObject.culled = false; - } else { - nonCulledObject.visible = false; - } - - if (modifyPhysicsEnable) { - if (nonCulledObject instanceof PhysicsBody) { - nonCulledObject.enabled = false; - } - } - } - - // pool RendererPipeline - this.game.renderer.pipeline.pool(); - } - - /** - * @memberof Camera - * @description Returns the default zoom, also uses DPR scaling if enabled - * @since 1.0.0 - */ - public get defaultZoom() { - if (this.game.config.dprScale) { - if (this.game.config.debug) { - new Debug.Log( - 'Getter defaultZoom returned default zoom with dpr scaling. (info)' - ); - } - return 1000 / window.devicePixelRatio; - } else { - return 1000; - } - } - - /** - * @memberof Camera - * @description Returns the default FOV - * @since 1.0.0 - */ - public get defaultFOV() { - return Math.PI / 4; - } + /** + * @memberof Camera + * @description Game instance + * @type Game + * @since 1.0.0-beta + */ + public game: Game; + + /** + * @memberof Camera + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; + + /** + * @memberof Camera + * @description The position of the Camera + * @type Vector2 + * @since 3.0.0 + */ + public position: Vector2; + + /** + * @memberof Camera + * @description The Camera's current FOV, default: PI / 4 + * @type number + * @since 2.1.0 + */ + public fieldOfView: number; + + /** + * @memberof Camera + * @description The Camera's current zoom, default: 1000.0 + * @type number + * @since 3.0.0 + */ + public zoom: number; + + /** + * @memberof Camera + * @description Camera's viewport, has info about the viewport + * @since 1.0.0-beta + */ + public viewport: { + left: number; + right: number; + top: number; + bottom: number; + w: number; + h: number; + scale: Vector2; + }; + protected aspectRatio: number | undefined; + + /** + * @memberof Camera + * @description Determines if the camera is a main camera in the attached scene. Must be added by Scene.mainCamera + * @type boolean + * @since 1.0.0-beta + */ + public readonly isMain: boolean; + + protected bounds: + | { position: { x: number; y: number }; w: number; h: number } + | undefined; + + /** + * @memberof Camera + * @description A gameobject that the Camera is currently following + * @type Duck.TypeClasses.GameObjects.GameObject | undefined + * @since 1.0.0 + */ + public following: + | Duck.TypeClasses.GameObjects.GameObject + | undefined; + + /** + * @memberof Camera + * @description If the Camera is following a GameObject, this is the amount that will be used to lerp the Camera.position to the GameObject.position + * @type Vector2 + * @since 3.0.0 + */ + public lerpAmount: Vector2; + + /** + * @constructor Camera + * @description Creates a Camera instance. + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor(game: Game, scene: Scene) { + this.game = game; + this.scene = scene; + + this.isMain = false; + if (scene.mainCamera === this) { + this.isMain = true; + } + + this.position = Vector2.ZERO; + + this.fieldOfView = Math.PI / 4.0; + this.zoom = 1000.0; + + this.viewport = { + left: 0, + right: 0, + top: 0, + bottom: 0, + w: 0, + h: 0, + scale: new Vector2(1.0, 1.0), + }; + + this.bounds; + + this.following; + this.lerpAmount = new Vector2(1, 1); + + this.updateViewport(); + } + + /** + * @memberof Camera + * @description Begins camera path + * + * DO NOT CALL MANUALLY, CALLED IN GAME -> SCENE LOOP AUTOMATICALLY + * + * @since 1.0.0-beta + */ + public begin() { + this.game.renderer.save(); + this.applyScale(); + this.applyTranslation(); + + // follow + if (this.following) { + if ( + this.following.shape === 'rect' || + this.following.shape === 'roundrect' || + this.following.shape === 'sprite' + ) { + this.followRect(); + } + if (this.following.shape === 'circle') { + this.followCircle(); + } + } + } + + protected followRect() { + if (this.following) { + if (this.bounds) { + if (rectToRectIntersect(this.following as Rect, this.bounds)) { + this.position.x = lerp( + this.position.x, + this.following.getCenterX(), + this.lerpAmount.x + ); + this.position.y = lerp( + this.position.y, + this.following.getCenterY(), + this.lerpAmount.y + ); + } + } else { + this.position.x = lerp( + this.position.x, + this.following.getCenterX(), + this.lerpAmount.x + ); + this.position.y = lerp( + this.position.y, + this.following.getCenterY(), + this.lerpAmount.y + ); + } + + this.updateViewport(); + } + } + + protected followCircle() { + if (this.following) { + if (this.bounds) { + if (circleToRectIntersect(this.following as Circle, this.bounds)) { + this.position.x = lerp( + this.position.x, + this.following.getCenterX(), + this.lerpAmount.x + ); + this.position.y = lerp( + this.position.y, + this.following.getCenterY(), + this.lerpAmount.y + ); + } + } else { + this.position.x = lerp( + this.position.x, + this.following.getCenterX(), + this.lerpAmount.x + ); + this.position.y = lerp( + this.position.y, + this.following.getCenterY(), + this.lerpAmount.y + ); + } + + this.updateViewport(); + } + } + + /** + * @memberof Camera + * @description Ends camera path + * + * DO NOT CALL MANUALLY, CALLED IN GAME -> SCENE LOOP AUTOMATICALLY + * + * @since 1.0.0-beta + */ + public end() { + this.game.renderer.restore(); + } + + protected applyScale() { + this.game.renderer.scale(this.viewport.scale.x, this.viewport.scale.y); + } + + protected applyTranslation() { + this.game.renderer.translate(-this.viewport.left, -this.viewport.top); + } + + protected updateViewport() { + if (this.game.renderer.ctx) { + // dpr scaling + let cWidth = this.game.canvas.width; + let cHeight = this.game.canvas.height; + + if (this.game.config.dprScale && window.devicePixelRatio !== 1) { + cWidth = Number(this.game.canvas.style.width.replace('px', '')); + + cHeight = Number(this.game.canvas.style.height.replace('px', '')); + + // set zoom for dpr scaling + this.zoom = 1000 / window.devicePixelRatio; + } + + this.aspectRatio = cWidth / cHeight; + this.viewport.w = this.zoom * Math.tan(this.fieldOfView); + this.viewport.h = this.viewport.w / this.aspectRatio; + this.viewport.left = this.position.x - this.viewport.w / 2.0; + this.viewport.top = this.position.y - this.viewport.h / 2.0; + this.viewport.right = this.viewport.left + this.viewport.w; + this.viewport.bottom = this.viewport.top + this.viewport.h; + this.viewport.scale.x = cWidth / this.viewport.w; + this.viewport.scale.y = cHeight / this.viewport.h; + } else { + new Debug.Error( + 'Cannot update camera. CanvasRenderingContext2D is undefined.' + ); + } + } + + /** + * @memberof Camera + * @description Sets the zoom + * @param {number} z Zoom value + * @since 1.0.0-beta + */ + public setZoom(z: number) { + this.zoom = z; + this.updateViewport(); + } + + /** + * @memberof Camera + * @description Sets the zoom smoothly + * @param {number} intervalMS How often zoom is modified by smoothValue + * @param {number} smoothValue The number that is added to zoom on an interval + * @param {number} z Target Zoom value + * @since 1.0.0-beta + */ + public setZoomSmooth(intervalMS: number, smoothValue: number, z: number) { + // make sure it is positive + smoothValue = Math.abs(smoothValue); + + const direction = z < this.zoom ? -1 : +1; // determines fov in or fov out + const interval = setInterval(() => { + // check if current FOV reached or surpassed target FOV + const fixedVolume = Number(this.zoom.toFixed(2)); + if (direction === 1) { + if (fixedVolume >= z) { + this.setZoom(z); + + clearInterval(interval); + return; + } + } else { + if (fixedVolume <= z) { + this.setZoom(z); + + clearInterval(interval); + return; + } + } + + if (direction === 1) { + const newVolume = this.zoom + smoothValue; + this.setFOV(newVolume); // set fov + } else { + const newVolume = this.zoom - smoothValue; + this.setFOV(newVolume); // set fov + } + }, intervalMS); + } + + /** + * @memberof Camera + * @description Moves the camera to a position + * @param {number} x X position + * @param {number} y Y position + * @since 1.0.0-beta + */ + public moveTo(x: number, y: number) { + this.position.x = x; + this.position.y = y; + this.updateViewport(); + } + + /** + * @memberof Camera + * @description Follows a GameObject + * @param {Duck.TypeClasses.GameObjects.GameObject} gameObject Game object to follow + * @param {number} [lerpX=1] Lerp on the x axis, optional -> defaults: 1 + * @param {number} [lerpY=1] Lerp on the y axis, optional -> defaults: 1 + * @since 1.0.0-beta + */ + public startFollow( + gameObject: Duck.TypeClasses.GameObjects.GameObject, + lerpX = 1, + lerpY = 1 + ) { + this.following = gameObject; + this.lerpAmount.x = lerpX; + this.lerpAmount.y = lerpY; + } + + /** + * @memberof Camera + * @description Stops following a gameobject + * @since 1.0.0-beta + */ + public stopFollow() { + this.following = undefined; + } + + /** + * @memberof Camera + * @description Transforms a coordinate pair from screen coordinates (relative to the canvas) into world coordinates + * @param {number} x X position + * @param {number} y Y position + * @param {Duck.TypeClasses.GameObjects.GameObject} obj GameObject + * @since 1.0.0-beta + */ + public screenToWorld( + x: number, + y: number, + obj: Duck.TypeClasses.GameObjects.GameObject + ) { + obj.position.x = x / this.viewport.scale.x + this.viewport.left; + obj.position.y = y / this.viewport.scale.y + this.viewport.top; + return obj; + } + + /** + * @memberof Camera + * @description Transforms a coordinate pair from world coordinates into screen coordinates (relative to the canvas) - + * useful for interacting with a Button while having a camera + * @param {number} x X position + * @param {number} y Y position + * @param {Duck.TypeClasses.GameObjects.GameObject} obj GameObject + * @since 1.0.0-beta + */ + public worldToScreen( + x: number, + y: number, + obj: Duck.TypeClasses.GameObjects.GameObject + ) { + obj.position.x = (x - this.viewport.left) * this.viewport.scale.x; + obj.position.y = (y - this.viewport.top) * this.viewport.scale.y; + return obj; + } + + /** + * @memberof Camera + * @description Sets the FOV + * @param {number} f FOV value + * @since 1.0.0-beta + */ + public setFOV(f: number) { + this.fieldOfView = f; + } + + /** + * @memberof Camera + * @description Sets the FOV smoothly + * @param {number} intervalMS How often FOV is modified by smoothValue + * @param {number} smoothValue The number that is added to FOV on an interval + * @param {number} f Target FOV value + * @since 1.0.0-beta + */ + public setFOVSmooth(intervalMS: number, smoothValue: number, f: number) { + // make sure it is positive + smoothValue = Math.abs(smoothValue); + + const direction = f < this.fieldOfView ? -1 : +1; // determines fov in or fov out + const interval = setInterval(() => { + // check if current FOV reached or surpassed target FOV + const fixedVolume = Number(this.fieldOfView.toFixed(2)); + if (direction === 1) { + if (fixedVolume >= f) { + this.setFOV(f); + + clearInterval(interval); + return; + } + } else { + if (fixedVolume <= f) { + this.setFOV(f); + + clearInterval(interval); + return; + } + } + + if (direction === 1) { + const newVolume = this.fieldOfView + smoothValue; + this.setFOV(newVolume); // set fov + } else { + const newVolume = this.fieldOfView - smoothValue; + this.setFOV(newVolume); // set fov + } + }, intervalMS); + } + + /** + * @memberof Camera + * @description Resets the FOV to the default value + * @since 1.0.0-beta + */ + public resetFOV() { + this.fieldOfView = Math.PI / 4.0; + } + + /** + * @memberof Camera + * @description Resets the Zoom to the default value + * @since 1.0.0-beta + */ + public resetZoom() { + this.zoom = 1000.0; + } + + /** + * @memberof Camera + * @description Bounds of the Camera, an area the camera can be in + * @param {{ position: { x:number; y:number }; w:number; h:number; }} bounds An object with the bounds + * @since 1.0.0-beta + */ + public setBounds(bounds: { + position: { x: number; y: number }; + w: number; + h: number; + }) { + this.bounds = bounds; + } + + /** + * @memberof Camera + * @description Shakes the camera in a random direction + * @param {number} intervalMS How often (in milliseconds) the passed value is added/subtracted from the Camera viewport position + * @param {number} timeMS For how long in milliseconds the shake lasts + * @param {number} v Value to be added/subtracted from the Camera viewport position + * @since 1.0.0 + */ + public shake(intervalMS: number, timeMS: number, v: number) { + const int = setInterval(() => { + const r = randomInt(1, 4); + + if (r === 1) { + this.position.x += v; + } + + if (r === 2) { + this.position.x -= v; + } + + if (r === 3) { + this.position.y += v; + } + + if (r === 2) { + this.position.y += v; + } + + this.updateViewport(); + }, intervalMS); + + setTimeout(() => { + clearInterval(int); + }, timeMS); + } + + /** + * @memberof Camera + * @description Shakes the camera in a direction + * @param {number} intervalMS How often (in milliseconds) the passed value is added/subtracted from the Camera viewport position + * @param {number} timeMS For how long in milliseconds the shake lasts + * @param {Vector2} vector Vector to be added/subtracted from the Camera viewport position, also used for direction of shaking + * @param {boolean} [opposite] Toggle to shake in the specified direction and the opposite direction as well, ex (true): shakes in both left and right + * directions, optional -> defaults: true + * @since 3.0.0 + */ + public shakeDir( + intervalMS: number, + timeMS: number, + vector: Vector2, + opposite = true + ) { + const oppositeVector = vector.clone().negate(); + const int = setInterval(() => { + if (opposite) { + const r = randomInt(0, 1); + if (r === 0) { + this.position.add(vector); + } else { + this.position.add(oppositeVector); + } + } else { + this.position.add(vector); + } + }, intervalMS); + + setTimeout(() => { + clearInterval(int); + }, timeMS); + } + + /** + * @memberof Camera + * @description Culls/Renders objects that are passed and does not render other object that are not passed + * @param {Duck.Types.Renderable[]} renderableObjects Objects that should be culled/rendered + * @param {Duck.Types.Camera.CullingOptions} [options] Options to modify how objects are culled, optional -> defaults: + * { preserveVisibility: true, modifyPhysicsEnable: true } + * + * Notes: + * - Calls CanvasRenderer.pipeline.pool() ignoring the pool interval + * + * @since 2.0.0 + */ + public cull( + renderableObjects: Duck.Types.Renderable[], + options?: Duck.Types.Camera.CullingOptions + ) { + const preserveVisibility = options ? options.preserveVisibility : true; + const modifyPhysicsEnable = options ? options.modifyPhysicsEnable : true; + + const visibleObjects = this.scene.displayList.visibilityFilter(true); + + const culledObjects = visibleObjects.filter((r) => + renderableObjects.find((_r) => _r.id === r.id) + ); + const nonCulledObjects = visibleObjects.filter( + (r) => !culledObjects.includes(r) + ); + + for (const culledObject of culledObjects) { + // skip maps + if (culledObject instanceof Map) { + continue; + } + + if (preserveVisibility) { + culledObject.culled = true; + } else { + culledObject.visible = true; + } + + if (modifyPhysicsEnable) { + if (culledObject instanceof PhysicsBody) { + culledObject.enabled = true; + } + } + } + + for (const nonCulledObject of nonCulledObjects) { + // skip maps + if (nonCulledObject instanceof Map) { + continue; + } + + if (preserveVisibility) { + nonCulledObject.culled = false; + } else { + nonCulledObject.visible = false; + } + + if (modifyPhysicsEnable) { + if (nonCulledObject instanceof PhysicsBody) { + nonCulledObject.enabled = false; + } + } + } + + // pool RendererPipeline + this.game.renderer.pipeline.pool(); + } + + /** + * @memberof Camera + * @description A form of Frustum Culling that gets all objects visible to the player by the viewport's width and height and culls those objects + * and does not render objects outside/not-visible to the player/camera + * @param {Duck.Types.Camera.CullingOptions} [options] Options to modify how objects are culled, optional -> defaults: + * { preserveVisibility: true, modifyPhysicsEnable: true } + * + * Notes: + * - Calls CanvasRenderer.pipeline.pool() ignoring the pool interval + * + * @since 2.0.0 + */ + public autoCull(options?: Duck.Types.Camera.CullingOptions) { + const preserveVisibility = options ? options.preserveVisibility : true; + const modifyPhysicsEnable = options ? options.modifyPhysicsEnable : true; + + const objects = this.scene.displayList.list; + + const culledObjects = objects.filter((r) => { + if (r instanceof GameObject) { + if ( + r.shape === 'rect' || + r.shape === 'sprite' || + r.shape === 'roundrect' + ) { + if ( + rectToRectIntersect(r, { + position: { + x: this.viewport.left, + y: this.viewport.top, + }, + w: this.viewport.w, + h: this.viewport.h, + }) + ) { + return true; + } else { + return false; + } + } + + if (r.shape === 'circle') { + if ( + circleRectCollision(r, { + position: { + x: this.viewport.left, + y: this.viewport.top, + }, + w: this.viewport.w, + h: this.viewport.h, + }) + ) { + return true; + } else { + return false; + } + } + + return false; + } else { + return false; + } + }); + const nonCulledObjects = objects.filter((r) => !culledObjects.includes(r)); + + for (const culledObject of culledObjects) { + // skip maps + if (culledObject instanceof Map) { + continue; + } + + if (preserveVisibility) { + culledObject.culled = true; + } else { + culledObject.visible = true; + } + + if (modifyPhysicsEnable) { + if (culledObject instanceof PhysicsBody) { + culledObject.enabled = true; + } + } + } + + for (const nonCulledObject of nonCulledObjects) { + // skip maps + if (nonCulledObject instanceof Map) { + continue; + } + + if (preserveVisibility) { + nonCulledObject.culled = false; + } else { + nonCulledObject.visible = false; + } + + if (modifyPhysicsEnable) { + if (nonCulledObject instanceof PhysicsBody) { + nonCulledObject.enabled = false; + } + } + } + + // pool RendererPipeline + this.game.renderer.pipeline.pool(); + } + + /** + * @memberof Camera + * @description Returns the default zoom, also uses DPR scaling if enabled + * @since 1.0.0 + */ + public get defaultZoom() { + if (this.game.config.dprScale) { + if (this.game.config.debug) { + new Debug.Log( + 'Getter defaultZoom returned default zoom with dpr scaling. (info)' + ); + } + return 1000 / window.devicePixelRatio; + } else { + return 1000; + } + } + + /** + * @memberof Camera + * @description Returns the default FOV + * @since 1.0.0 + */ + public get defaultFOV() { + return Math.PI / 4; + } } diff --git a/src/core/cutscene/cutscene.ts b/src/core/cutscene/cutscene.ts index 784a6050..cce114ee 100644 --- a/src/core/cutscene/cutscene.ts +++ b/src/core/cutscene/cutscene.ts @@ -11,308 +11,290 @@ import Game from '../game'; * @since 1.0.0-beta */ export default class Cutscene { - protected config: Duck.Types.Cutscene.Config; - protected instructions: Duck.Types.Cutscene.Instructions; - /** - * @memberof Cutscene - * @description Game instance - * @type Game - * @since 1.0.0-beta - */ - public game: Game; + protected config: Duck.Types.Cutscene.Config; + protected instructions: Duck.Types.Cutscene.Instructions; + /** + * @memberof Cutscene + * @description Game instance + * @type Game + * @since 1.0.0-beta + */ + public game: Game; - protected steps: Duck.Types.Cutscene.Step[]; - protected mainObject: Duck.TypeClasses.GameObjects.GameObject; - protected otherObjects: Duck.TypeClasses.GameObjects.GameObject[]; - protected camera: Camera; - protected otherCameras: Camera[]; - /** - * @memberof Cutscene - * @description The index of the current cutscene step - * @type number - * @since 1.0.0-beta - */ - public index: number; - /** - * @memberof Cutscene - * @description The state of the Cutscene running - * @type boolean - * @since 1.0.0-beta - */ - public running: boolean; + protected steps: Duck.Types.Cutscene.Step[]; + protected mainObject: Duck.TypeClasses.GameObjects.GameObject; + protected otherObjects: Duck.TypeClasses.GameObjects.GameObject[]; + protected camera: Camera; + protected otherCameras: Camera[]; + /** + * @memberof Cutscene + * @description The index of the current cutscene step + * @type number + * @since 1.0.0-beta + */ + public index: number; + /** + * @memberof Cutscene + * @description The state of the Cutscene running + * @type boolean + * @since 1.0.0-beta + */ + public running: boolean; - /** - * @constructor Cutscene - * @description Creates an instance of a Cutscene. - * @param {Duck.Types.Cutscene.Config} config Configuration - * @param {Duck.Types.Cutscene.Instructions} instructions Cutscene instructions - * @param {Game} game - * @since 1.0.0-beta - */ - constructor( - config: Duck.Types.Cutscene.Config, - instructions: Duck.Types.Cutscene.Instructions, - game: Game - ) { - this.config = config; - this.instructions = instructions; - this.game = game; + /** + * @constructor Cutscene + * @description Creates an instance of a Cutscene. + * @param {Duck.Types.Cutscene.Config} config Configuration + * @param {Duck.Types.Cutscene.Instructions} instructions Cutscene instructions + * @param {Game} game + * @since 1.0.0-beta + */ + constructor( + config: Duck.Types.Cutscene.Config, + instructions: Duck.Types.Cutscene.Instructions, + game: Game + ) { + this.config = config; + this.instructions = instructions; + this.game = game; - this.steps = this.instructions.steps; - this.mainObject = this.config.mainObject; - this.otherObjects = this.config.otherObjects || []; - this.camera = this.config.mainCamera; - this.otherCameras = this.config.otherCameras || []; + this.steps = this.instructions.steps; + this.mainObject = this.config.mainObject; + this.otherObjects = this.config.otherObjects || []; + this.camera = this.config.mainCamera; + this.otherCameras = this.config.otherCameras || []; - this.index = 0; + this.index = 0; - this.running = false; + this.running = false; - this.init(); - } + this.init(); + } - protected init() { - this.mainObject.position.x = this.instructions.init.mainObjectPos.x; - this.mainObject.position.y = this.instructions.init.mainObjectPos.y; + protected init() { + this.mainObject.position.x = this.instructions.init.mainObjectPos.x; + this.mainObject.position.y = this.instructions.init.mainObjectPos.y; - this.otherObjects.forEach((otherObject, index) => { - otherObject.position.x = - this.instructions.init.otherObjectPos[index].x; - otherObject.position.y = - this.instructions.init.otherObjectPos[index].y; - }); - } + this.otherObjects.forEach((otherObject, index) => { + otherObject.position.x = this.instructions.init.otherObjectPos[index].x; + otherObject.position.y = this.instructions.init.otherObjectPos[index].y; + }); + } - /** - * @memberof Cutscene - * @description Starts the cutscene - * @emits EVENTS.CUTSCENE.START - * @since 1.0.0-beta - */ - public start() { - this.running = true; + /** + * @memberof Cutscene + * @description Starts the cutscene + * @emits EVENTS.CUTSCENE.START + * @since 1.0.0-beta + */ + public start() { + this.running = true; - this.game.eventEmitter.emit(EVENTS.CUTSCENE.START); - } + this.game.eventEmitter.emit(EVENTS.CUTSCENE.START); + } - /** - * @memberof Cutscene - * @description Stops the cutscene - * @emits EVENTS.CUTSCENE.END - * @since 1.0.0-beta - */ - public stop() { - this.running = false; + /** + * @memberof Cutscene + * @description Stops the cutscene + * @emits EVENTS.CUTSCENE.END + * @since 1.0.0-beta + */ + public stop() { + this.running = false; - this.game.eventEmitter.emit(EVENTS.CUTSCENE.END); - } + this.game.eventEmitter.emit(EVENTS.CUTSCENE.END); + } - /** - * @memberof Cutscene - * @description Updates the cutscene, must be in a loop or interval and come before Cutscene.next() - * @since 1.0.0-beta - */ - public update() { - if (this.running) { - // camera - if (this.instructions.init.cameraSettings) { - this.camera.setFOV(this.instructions.init.cameraSettings.FOV); - this.camera.setZoom(this.instructions.init.cameraSettings.zoom); - if (this.instructions.init.cameraSettings.pos) { - this.camera.moveTo( - this.instructions.init.cameraSettings.pos.x, - this.instructions.init.cameraSettings.pos.y - ); - } - } + /** + * @memberof Cutscene + * @description Updates the cutscene, must be in a loop or interval and come before Cutscene.next() + * @since 1.0.0-beta + */ + public update() { + if (this.running) { + // camera + if (this.instructions.init.cameraSettings) { + this.camera.setFOV(this.instructions.init.cameraSettings.FOV); + this.camera.setZoom(this.instructions.init.cameraSettings.zoom); + if (this.instructions.init.cameraSettings.pos) { + this.camera.moveTo( + this.instructions.init.cameraSettings.pos.x, + this.instructions.init.cameraSettings.pos.y + ); + } + } - if (this.instructions.init.otherCameraSettings) { - this.otherCameras.forEach((camera, index) => { - if (this.instructions.init.otherCameraSettings) { - camera.setFOV( - this.instructions.init.otherCameraSettings[index] - .FOV - ); - camera.setZoom( - this.instructions.init.otherCameraSettings[index] - .zoom - ); - if ( - this.instructions.init.otherCameraSettings[index] - .pos - ) { - camera.moveTo( - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - this.instructions.init.otherCameraSettings[ - index - ].pos!.x, - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - this.instructions.init.otherCameraSettings[ - index - ].pos!.y - ); - } - } - }); - } + if (this.instructions.init.otherCameraSettings) { + this.otherCameras.forEach((camera, index) => { + if (this.instructions.init.otherCameraSettings) { + camera.setFOV( + this.instructions.init.otherCameraSettings[index].FOV + ); + camera.setZoom( + this.instructions.init.otherCameraSettings[index].zoom + ); + if (this.instructions.init.otherCameraSettings[index].pos) { + camera.moveTo( + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + this.instructions.init.otherCameraSettings[index].pos!.x, + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + this.instructions.init.otherCameraSettings[index].pos!.y + ); + } + } + }); + } - // follow - if (this.instructions.init.cameraSettings?.follow) { - this.camera.startFollow( - this.instructions.init.cameraSettings.follow, - this.instructions.init.cameraSettings.followLerpX, - this.instructions.init.cameraSettings.followLerpY - ); - } + // follow + if (this.instructions.init.cameraSettings?.follow) { + this.camera.startFollow( + this.instructions.init.cameraSettings.follow, + this.instructions.init.cameraSettings.followLerpX, + this.instructions.init.cameraSettings.followLerpY + ); + } - // steps - const step = this.steps[this.index]; + // steps + const step = this.steps[this.index]; - if (step.type === 'DRAW' && step.affect) { - return ( - step.affect as Duck.TypeClasses.GameObjects.GameObject - )._draw(); - } + if (step.type === 'DRAW' && step.affect) { + return ( + step.affect as Duck.TypeClasses.GameObjects.GameObject + )._draw(); + } - if (step.type === 'MOVE' && step.moveTo) { - if (step.moveTo.x) { - ( - step.affect as Duck.TypeClasses.GameObjects.GameObject - ).position.x = step.moveTo.x; - } - if (step.moveTo.y) { - ( - step.affect as Duck.TypeClasses.GameObjects.GameObject - ).position.y = step.moveTo.y; - } - } + if (step.type === 'MOVE' && step.moveTo) { + if (step.moveTo.x) { + ( + step.affect as Duck.TypeClasses.GameObjects.GameObject + ).position.x = step.moveTo.x; + } + if (step.moveTo.y) { + ( + step.affect as Duck.TypeClasses.GameObjects.GameObject + ).position.y = step.moveTo.y; + } + } - if (step.type === 'FUNC' && step.func) { - step.func(); - } + if (step.type === 'FUNC' && step.func) { + step.func(); + } - if (step.type === 'CAMERA_FOV' && step.cameraValue) { - (step.affect as Camera).setFOV(step.cameraValue); - } + if (step.type === 'CAMERA_FOV' && step.cameraValue) { + (step.affect as Camera).setFOV(step.cameraValue); + } - if (step.type === 'CAMERA_ZOOM' && step.cameraValue) { - (step.affect as Camera).setZoom(step.cameraValue); - } + if (step.type === 'CAMERA_ZOOM' && step.cameraValue) { + (step.affect as Camera).setZoom(step.cameraValue); + } - if (step.moveTo && step.affect) { - if ( - step.type === 'CAMERA_MOVE' && - step.moveTo.x && - step.moveTo.y - ) { - (step.affect as Camera).moveTo( - step.moveTo.x, - step.moveTo.y - ); - } - } + if (step.moveTo && step.affect) { + if (step.type === 'CAMERA_MOVE' && step.moveTo.x && step.moveTo.y) { + (step.affect as Camera).moveTo(step.moveTo.x, step.moveTo.y); + } + } - if ( - step.type === 'CAMERA_SHAKE' && - step.cameraIntervalMS && - step.cameraTimeMS && - step.cameraValue && - step.affect - ) { - (step.affect as Camera).shake( - step.cameraIntervalMS, - step.cameraTimeMS, - step.cameraValue - ); - } + if ( + step.type === 'CAMERA_SHAKE' && + step.cameraIntervalMS && + step.cameraTimeMS && + step.cameraValue && + step.affect + ) { + (step.affect as Camera).shake( + step.cameraIntervalMS, + step.cameraTimeMS, + step.cameraValue + ); + } - if ( - step.type === 'CAMERA_START_FOLLOW' && - step.cameraFollow && - step.affect - ) { - // no lerp - if (!step.cameraFollowLerpX && !step.cameraFollowLerpY) { - (step.affect as Camera).startFollow(step.cameraFollow); - } - // only lerpX - if (step.cameraFollowLerpX && !step.cameraFollowLerpY) { - (step.affect as Camera).startFollow( - step.cameraFollow, - step.cameraFollowLerpX - ); - } - // only lerpY - if (!step.cameraFollowLerpX && step.cameraFollowLerpY) { - (step.affect as Camera).startFollow( - step.cameraFollow, - 1, - step.cameraFollowLerpY - ); - } - // lerp both - if (step.cameraFollowLerpX && step.cameraFollowLerpY) { - (step.affect as Camera).startFollow( - step.cameraFollow, - step.cameraFollowLerpX, - step.cameraFollowLerpY - ); - } - } + if ( + step.type === 'CAMERA_START_FOLLOW' && + step.cameraFollow && + step.affect + ) { + // no lerp + if (!step.cameraFollowLerpX && !step.cameraFollowLerpY) { + (step.affect as Camera).startFollow(step.cameraFollow); + } + // only lerpX + if (step.cameraFollowLerpX && !step.cameraFollowLerpY) { + (step.affect as Camera).startFollow( + step.cameraFollow, + step.cameraFollowLerpX + ); + } + // only lerpY + if (!step.cameraFollowLerpX && step.cameraFollowLerpY) { + (step.affect as Camera).startFollow( + step.cameraFollow, + 1, + step.cameraFollowLerpY + ); + } + // lerp both + if (step.cameraFollowLerpX && step.cameraFollowLerpY) { + (step.affect as Camera).startFollow( + step.cameraFollow, + step.cameraFollowLerpX, + step.cameraFollowLerpY + ); + } + } - if (step.type === 'CAMERA_STOP_FOLLOW' && step.affect) { - (step.affect as Camera).stopFollow(); - } - } - } + if (step.type === 'CAMERA_STOP_FOLLOW' && step.affect) { + (step.affect as Camera).stopFollow(); + } + } + } - /** - * @memberof Cutscene - * @description Starts the next step - * @emits EVENTS.CUTSCENE.NEXT - * @since 1.0.0-beta - */ - public next() { - this.index++; - if (this.index > this.steps.length - 1) { - this.stop(); - } + /** + * @memberof Cutscene + * @description Starts the next step + * @emits EVENTS.CUTSCENE.NEXT + * @since 1.0.0-beta + */ + public next() { + this.index++; + if (this.index > this.steps.length - 1) { + this.stop(); + } - this.game.eventEmitter.emit(EVENTS.CUTSCENE.NEXT); - } + this.game.eventEmitter.emit(EVENTS.CUTSCENE.NEXT); + } - /** - * @memberof Cutscene - * @description Sleeps/Waits for a duration - * @param {number} ms Duration in millisecond - * @since 1.0.0-beta - */ - public async sleep(ms: number) { - return new Promise((resolve) => setTimeout(resolve, ms)); - } + /** + * @memberof Cutscene + * @description Sleeps/Waits for a duration + * @param {number} ms Duration in millisecond + * @since 1.0.0-beta + */ + public async sleep(ms: number) { + return new Promise((resolve) => setTimeout(resolve, ms)); + } - /** - * @memberof Cutscene - * @description Adds an event listener to Cutscene - * @param {Duck.Types.Cutscene.OnListenerType} type Listener type - * @param {(...args: any) => void} cb Callback function - * @since 1.0.0-beta - */ - public on( - type: Duck.Types.Cutscene.OnListenerType, - // eslint-disable-next-line @typescript-eslint/no-explicit-any - cb: (...args: any) => void - ) { - this.game.eventEmitter.on(`CUTSCENE_${type}`, cb); - } + /** + * @memberof Cutscene + * @description Adds an event listener to Cutscene + * @param {Duck.Types.Cutscene.OnListenerType} type Listener type + * @param {(...args: any) => void} cb Callback function + * @since 1.0.0-beta + */ + public on( + type: Duck.Types.Cutscene.OnListenerType, + // eslint-disable-next-line @typescript-eslint/no-explicit-any + cb: (...args: any) => void + ) { + this.game.eventEmitter.on(`CUTSCENE_${type}`, cb); + } - /** - * @memberof Cutscene - * @description Removes an event listener from Cutscene - * @param {Duck.Types.Cutscene.OnListenerType} type Listener type - * @since 1.0.0-beta - */ - public off(type: Duck.Types.Cutscene.OnListenerType) { - this.game.eventEmitter.off(`CUTSCENE_${type}`); - } + /** + * @memberof Cutscene + * @description Removes an event listener from Cutscene + * @param {Duck.Types.Cutscene.OnListenerType} type Listener type + * @since 1.0.0-beta + */ + public off(type: Duck.Types.Cutscene.OnListenerType) { + this.game.eventEmitter.off(`CUTSCENE_${type}`); + } } diff --git a/src/core/debug/debug.ts b/src/core/debug/debug.ts index 831c5593..6bfee3ff 100644 --- a/src/core/debug/debug.ts +++ b/src/core/debug/debug.ts @@ -1,33 +1,33 @@ const __debugStack_duckengine: string[] = []; class Error { - constructor(message: string) { - console.error('DuckEngine Error : ' + message); - __debugStack_duckengine.push(message); - } + constructor(message: string) { + console.error('DuckEngine Error : ' + message); + __debugStack_duckengine.push(message); + } } class Warn { - constructor(message: string) { - console.warn('DuckEngine Warning : ' + message); - __debugStack_duckengine.push(message); - } + constructor(message: string) { + console.warn('DuckEngine Warning : ' + message); + __debugStack_duckengine.push(message); + } } class Log { - constructor(message: string) { - console.log('DuckEngine : ' + message); - __debugStack_duckengine.push(message); - } + constructor(message: string) { + console.log('DuckEngine : ' + message); + __debugStack_duckengine.push(message); + } } const Debug = { - stack: () => { - return __debugStack_duckengine; - }, - Error: Error, - Warn: Warn, - Log: Log, + stack: () => { + return __debugStack_duckengine; + }, + Error: Error, + Warn: Warn, + Log: Log, }; export default Debug; diff --git a/src/core/display/displayManager.ts b/src/core/display/displayManager.ts index 42ab92a1..68a33e2b 100644 --- a/src/core/display/displayManager.ts +++ b/src/core/display/displayManager.ts @@ -6,198 +6,196 @@ import EVENTS from '../events/events'; import Game from '../game'; export default class DisplayManager { - public game: Game; - public eventEmitter: EventEmitter; - - constructor(game: Game) { - this.game = game; - this.eventEmitter = new EventEmitter(); - - /* Event Listeners */ - - // blur and focus listener - window.onfocus = () => { - if ( - this.game.config.pauseRenderingOnBlur && - !this.game.config.debugRendering - ) { - this.game.isRendering = true; - this.eventEmitter.emit(EVENTS.DISPLAY.FOCUS); - if (this.game.config.onResumeRendering) { - this.game.config.onResumeRendering('windowFocus'); - } - } - }; - window.onblur = () => { - if ( - this.game.config.pauseRenderingOnBlur && - !this.game.config.debugRendering - ) { - this.game.isRendering = false; - this.eventEmitter.emit(EVENTS.DISPLAY.BLUR); - if (this.game.config.onPauseRendering) { - this.game.config.onPauseRendering('windowBlur'); - } - } - }; - - if (this.game.config.focus) { - window.focus(); - if (this.game.config.onResumeRendering) { - this.game.config.onResumeRendering('gameConfigFocus'); - } - } - - if (this.game.config.blur) { - window.blur(); - if (this.game.config.onPauseRendering) { - this.game.config.onPauseRendering('gameConfigBlur'); - } - } - } - - public scale(scale: Duck.Types.Math.Vector2LikeOptional) { - if (scale.x) { - this.game.canvas.width = scale.x; - } - - if (scale.y) { - this.game.canvas.height = scale.y; - } - } - - public dprScale() { - dprScale( - this.game.canvas, - this.game.renderer.ctx, - window.innerWidth, - window.innerHeight - ); - } - - public smallCorrectionScale() { - if (this.game.canvas.width > window.innerWidth) { - this.game.canvas.width = window.innerWidth; - } else { - this.game.canvas.width = this.game.oldWidth; - } - - if (this.game.canvas.height > window.innerHeight) { - this.game.canvas.height = window.innerHeight; - } else { - this.game.canvas.height = this.game.oldHeight; - } - } - - public scaleAspectRatio(maxScale: Duck.Types.Math.Vector2Like) { - const width = this.game.canvas.width; - const height = this.game.canvas.height; - let ratio = 0; - - if (width > maxScale.x && width > height) { - ratio = width / height; - this.game.canvas.width = maxScale.x; - this.game.canvas.height = maxScale.x / ratio; - } else if (height > maxScale.y && height > width) { - ratio = height / width; - this.game.canvas.width = maxScale.y / ratio; - this.game.canvas.height = maxScale.y; - } else { - this.game.canvas.width = maxScale.x; - this.game.canvas.height = maxScale.y; - } - } - - public scaleToWindow() { - if (window.devicePixelRatio === 1) { - this.game.canvas.width = window.innerWidth; - this.game.canvas.height = window.innerHeight; - return; - } - - if (this.game.config.dprScale && window.devicePixelRatio !== 1) { - this.dprScale(); - if (this.game.config.debug) { - new Debug.Log( - `Scaled with devicePixelRatio of ${window.devicePixelRatio} while fullscreen.` - ); - } - } - - this.eventEmitter.emit(EVENTS.DISPLAY.SET_SCALE, { - w: window.innerWidth, - h: window.innerHeight, - }); - } - - public resetScale() { - if (window.devicePixelRatio === 1) { - this.game.canvas.width = this.game.oldWidth; - this.game.canvas.height = this.game.oldHeight; - this.game.canvas.style.width = this.game.oldWidth + 'px'; - this.game.canvas.style.height = this.game.oldHeight + 'px'; - } - - if (this.game.config.dprScale && window.devicePixelRatio !== 1) { - dprScale( - this.game.canvas, - this.game.renderer.ctx, - this.game.canvas.width, - this.game.canvas.height - ); - } - } - - public fullscreen() { - if (this.game.canvas && document.fullscreenEnabled) { - this.game.canvas - .requestFullscreen() - .then(() => { - this.game.isInFullscreen = true; - if (this.game.canvas) { - this.scaleToWindow(); - } - - this.eventEmitter.emit(EVENTS.DISPLAY.FULLSCREEN); - }) - .catch( - () => - new Debug.Error( - 'User must interact with the page before fullscreen API can be used.' - ) - ); - - // on un fullscreen - this.game.canvas.onfullscreenchange = () => { - if (!document.fullscreenElement) { - this.resetScale(); - this.game.isInFullscreen = false; - if (this.game.config.debug) { - new Debug.Log('Unfullscreen, reset canvas scale.'); - } - } - }; - } - - if (!document.fullscreenEnabled) { - new Debug.Warn( - 'Fullscreen is not supported/enabled on this browser.' - ); - } - } - - public unfullscreen() { - if (document.fullscreenElement) { - document - .exitFullscreen() - .then(() => { - if (this.game.canvas) { - this.resetScale(); - } - - this.eventEmitter.emit(EVENTS.DISPLAY.UNFULLSCREEN); - }) - .catch((e) => new Debug.Error(e)); - } - } + public game: Game; + public eventEmitter: EventEmitter; + + constructor(game: Game) { + this.game = game; + this.eventEmitter = new EventEmitter(); + + /* Event Listeners */ + + // blur and focus listener + window.onfocus = () => { + if ( + this.game.config.pauseRenderingOnBlur && + !this.game.config.debugRendering + ) { + this.game.isRendering = true; + this.eventEmitter.emit(EVENTS.DISPLAY.FOCUS); + if (this.game.config.onResumeRendering) { + this.game.config.onResumeRendering('windowFocus'); + } + } + }; + window.onblur = () => { + if ( + this.game.config.pauseRenderingOnBlur && + !this.game.config.debugRendering + ) { + this.game.isRendering = false; + this.eventEmitter.emit(EVENTS.DISPLAY.BLUR); + if (this.game.config.onPauseRendering) { + this.game.config.onPauseRendering('windowBlur'); + } + } + }; + + if (this.game.config.focus) { + window.focus(); + if (this.game.config.onResumeRendering) { + this.game.config.onResumeRendering('gameConfigFocus'); + } + } + + if (this.game.config.blur) { + window.blur(); + if (this.game.config.onPauseRendering) { + this.game.config.onPauseRendering('gameConfigBlur'); + } + } + } + + public scale(scale: Duck.Types.Math.Vector2LikeOptional) { + if (scale.x) { + this.game.canvas.width = scale.x; + } + + if (scale.y) { + this.game.canvas.height = scale.y; + } + } + + public dprScale() { + dprScale( + this.game.canvas, + this.game.renderer.ctx, + window.innerWidth, + window.innerHeight + ); + } + + public smallCorrectionScale() { + if (this.game.canvas.width > window.innerWidth) { + this.game.canvas.width = window.innerWidth; + } else { + this.game.canvas.width = this.game.oldWidth; + } + + if (this.game.canvas.height > window.innerHeight) { + this.game.canvas.height = window.innerHeight; + } else { + this.game.canvas.height = this.game.oldHeight; + } + } + + public scaleAspectRatio(maxScale: Duck.Types.Math.Vector2Like) { + const width = this.game.canvas.width; + const height = this.game.canvas.height; + let ratio = 0; + + if (width > maxScale.x && width > height) { + ratio = width / height; + this.game.canvas.width = maxScale.x; + this.game.canvas.height = maxScale.x / ratio; + } else if (height > maxScale.y && height > width) { + ratio = height / width; + this.game.canvas.width = maxScale.y / ratio; + this.game.canvas.height = maxScale.y; + } else { + this.game.canvas.width = maxScale.x; + this.game.canvas.height = maxScale.y; + } + } + + public scaleToWindow() { + if (window.devicePixelRatio === 1) { + this.game.canvas.width = window.innerWidth; + this.game.canvas.height = window.innerHeight; + return; + } + + if (this.game.config.dprScale && window.devicePixelRatio !== 1) { + this.dprScale(); + if (this.game.config.debug) { + new Debug.Log( + `Scaled with devicePixelRatio of ${window.devicePixelRatio} while fullscreen.` + ); + } + } + + this.eventEmitter.emit(EVENTS.DISPLAY.SET_SCALE, { + w: window.innerWidth, + h: window.innerHeight, + }); + } + + public resetScale() { + if (window.devicePixelRatio === 1) { + this.game.canvas.width = this.game.oldWidth; + this.game.canvas.height = this.game.oldHeight; + this.game.canvas.style.width = this.game.oldWidth + 'px'; + this.game.canvas.style.height = this.game.oldHeight + 'px'; + } + + if (this.game.config.dprScale && window.devicePixelRatio !== 1) { + dprScale( + this.game.canvas, + this.game.renderer.ctx, + this.game.canvas.width, + this.game.canvas.height + ); + } + } + + public fullscreen() { + if (this.game.canvas && document.fullscreenEnabled) { + this.game.canvas + .requestFullscreen() + .then(() => { + this.game.isInFullscreen = true; + if (this.game.canvas) { + this.scaleToWindow(); + } + + this.eventEmitter.emit(EVENTS.DISPLAY.FULLSCREEN); + }) + .catch( + () => + new Debug.Error( + 'User must interact with the page before fullscreen API can be used.' + ) + ); + + // on un fullscreen + this.game.canvas.onfullscreenchange = () => { + if (!document.fullscreenElement) { + this.resetScale(); + this.game.isInFullscreen = false; + if (this.game.config.debug) { + new Debug.Log('Unfullscreen, reset canvas scale.'); + } + } + }; + } + + if (!document.fullscreenEnabled) { + new Debug.Warn('Fullscreen is not supported/enabled on this browser.'); + } + } + + public unfullscreen() { + if (document.fullscreenElement) { + document + .exitFullscreen() + .then(() => { + if (this.game.canvas) { + this.resetScale(); + } + + this.eventEmitter.emit(EVENTS.DISPLAY.UNFULLSCREEN); + }) + .catch((e) => new Debug.Error(e)); + } + } } diff --git a/src/core/effect/effect.ts b/src/core/effect/effect.ts index 0bbd59f4..b5c200fd 100644 --- a/src/core/effect/effect.ts +++ b/src/core/effect/effect.ts @@ -10,192 +10,192 @@ import uniqueID from '../../utils/uniqueID'; * @since 1.2.0 */ export default class Effect implements Duck.Types.Renderable { - /** - * @memberof Effect - * @description A unique identifier for the Effect - * @type string - * @since 1.2.0 - */ - public readonly id: string; - - /** - * @memberof Effect - * @description Shape, always "Effect" used for Scene.displayList - * @type string - * @since 1.2.0 - */ - public readonly shape: string; - - /** - * @memberof Effect - * @description Range of numbers for x pos - * @type Duck.Types.ParticleEmitter.Range - * @since 1.2.0 - */ - public rangeX: Duck.Types.ParticleEmitter.Range; - - /** - * @memberof Effect - * @description Range of numbers for y pos - * @type Duck.Types.ParticleEmitter.Range - * @since 1.2.0 - */ - public rangeY: Duck.Types.ParticleEmitter.Range; - - /** - * @memberof Effect - * @description ParticleEmitter to control - * @type ParticleEmitter - * @since 1.2.0 - */ - public particleEmitter: ParticleEmitter; - - /** - * @memberof Effect - * @description Game instance - * @type Game - * @since 1.2.0 - */ - public game: Game; - - /** - * @memberof Effect - * @description Determines the visibility of the Effect - * @type boolean - * @since 1.2.0 - */ - public visible: boolean; - - /** - * @memberof Effect - * @description Used for depth sorted - * @type number - * @since 1.2.0 - */ - public zIndex: number; - - /** - * @memberof Effect - * @description Determines if the Effect should be visible by the current scene's current camera - * @type boolean - * @since 2.1.0 - */ - public culled: boolean; - - /** - * @memberof Effect - * @description A gameobject that the Effect is following - * @type Duck.TypeClasses.GameObjects.GameObject| undefined - * @since 1.2.0 - */ - public following: - | Duck.TypeClasses.GameObjects.GameObject - | undefined; - protected randomMaxOffset: number; - - /** - * @constructor Effect - * @description Creates an Effect instance. - * @param {Duck.Types.ParticleEmitter.Range} rangeX A range of 2 numbers to determine the new created particles x position - * @param {Duck.Types.ParticleEmitter.Range} rangeY A range of 2 numbers to determine the new created particles y position - * @param {ParticleEmitter} particleEmitter ParticleEmitter instance - * @param {Game} game Game instance - * @since 1.2.0 - */ - constructor( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - particleEmitter: ParticleEmitter, - game: Game - ) { - this.id = uniqueID(); - this.shape = 'effect'; - this.rangeX = rangeX; - this.rangeY = rangeY; - this.particleEmitter = particleEmitter; - this.game = game; - - this.visible = true; - this.zIndex = 2; - this.culled = true; - - this.particleEmitter.rangeX = rangeX; - this.particleEmitter.rangeY = rangeY; - - this.following; - this.randomMaxOffset = 5; - } - - /** - * @memberof Effect - * @description Makes the particleEmitter emit - * @since 1.2.0 - */ - public emit() { - this.particleEmitter.emit(); - } - - /** - * @memberof Effect - * @description Stops the particleEmitter emitting - * @since 1.2.0 - */ - public stopEmit() { - this.particleEmitter.stopEmit(); - } - - /** - * @memberof Effect - * @description Makes the particleEmitter emit for a duration - * @param {number} ms Duration in milliseconds - * @since 1.2.0 - */ - public emitFor(ms: number) { - this.particleEmitter.emitFor(ms); - } - - /** - * @description Draws the effect. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.following) { - const rangeX: Duck.Types.ParticleEmitter.Range = [ - this.following.position.x, - this.following.position.x + this.randomMaxOffset, - ]; - const rangeY: Duck.Types.ParticleEmitter.Range = [ - this.following.position.y, - this.following.position.y + this.randomMaxOffset, - ]; - - this.particleEmitter.setRange(rangeX, rangeY); - } - } - - /** - * @memberof Effect - * @description Makes the effect follow the GameObject - * @param {Duck.Types.GameObject} object GameObject to follow - * @param {number} [randomMaxOffset] A random offset of the effect relative to the GameObject - * @since 1.2.0 - */ - public follow( - object: Duck.Types.GameObject, - randomMaxOffset = 5 - ) { - this.following = object; - this.randomMaxOffset = randomMaxOffset; - } - - /** - * @memberof Effect - * @description Makes the effect stop following the GameObject - * @since 1.2.0 - */ - public stopFollow() { - this.following = undefined; - } + /** + * @memberof Effect + * @description A unique identifier for the Effect + * @type string + * @since 1.2.0 + */ + public readonly id: string; + + /** + * @memberof Effect + * @description Shape, always "Effect" used for Scene.displayList + * @type string + * @since 1.2.0 + */ + public readonly shape: string; + + /** + * @memberof Effect + * @description Range of numbers for x pos + * @type Duck.Types.ParticleEmitter.Range + * @since 1.2.0 + */ + public rangeX: Duck.Types.ParticleEmitter.Range; + + /** + * @memberof Effect + * @description Range of numbers for y pos + * @type Duck.Types.ParticleEmitter.Range + * @since 1.2.0 + */ + public rangeY: Duck.Types.ParticleEmitter.Range; + + /** + * @memberof Effect + * @description ParticleEmitter to control + * @type ParticleEmitter + * @since 1.2.0 + */ + public particleEmitter: ParticleEmitter; + + /** + * @memberof Effect + * @description Game instance + * @type Game + * @since 1.2.0 + */ + public game: Game; + + /** + * @memberof Effect + * @description Determines the visibility of the Effect + * @type boolean + * @since 1.2.0 + */ + public visible: boolean; + + /** + * @memberof Effect + * @description Used for depth sorted + * @type number + * @since 1.2.0 + */ + public zIndex: number; + + /** + * @memberof Effect + * @description Determines if the Effect should be visible by the current scene's current camera + * @type boolean + * @since 2.1.0 + */ + public culled: boolean; + + /** + * @memberof Effect + * @description A gameobject that the Effect is following + * @type Duck.TypeClasses.GameObjects.GameObject| undefined + * @since 1.2.0 + */ + public following: + | Duck.TypeClasses.GameObjects.GameObject + | undefined; + protected randomMaxOffset: number; + + /** + * @constructor Effect + * @description Creates an Effect instance. + * @param {Duck.Types.ParticleEmitter.Range} rangeX A range of 2 numbers to determine the new created particles x position + * @param {Duck.Types.ParticleEmitter.Range} rangeY A range of 2 numbers to determine the new created particles y position + * @param {ParticleEmitter} particleEmitter ParticleEmitter instance + * @param {Game} game Game instance + * @since 1.2.0 + */ + constructor( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + particleEmitter: ParticleEmitter, + game: Game + ) { + this.id = uniqueID(); + this.shape = 'effect'; + this.rangeX = rangeX; + this.rangeY = rangeY; + this.particleEmitter = particleEmitter; + this.game = game; + + this.visible = true; + this.zIndex = 2; + this.culled = true; + + this.particleEmitter.rangeX = rangeX; + this.particleEmitter.rangeY = rangeY; + + this.following; + this.randomMaxOffset = 5; + } + + /** + * @memberof Effect + * @description Makes the particleEmitter emit + * @since 1.2.0 + */ + public emit() { + this.particleEmitter.emit(); + } + + /** + * @memberof Effect + * @description Stops the particleEmitter emitting + * @since 1.2.0 + */ + public stopEmit() { + this.particleEmitter.stopEmit(); + } + + /** + * @memberof Effect + * @description Makes the particleEmitter emit for a duration + * @param {number} ms Duration in milliseconds + * @since 1.2.0 + */ + public emitFor(ms: number) { + this.particleEmitter.emitFor(ms); + } + + /** + * @description Draws the effect. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.following) { + const rangeX: Duck.Types.ParticleEmitter.Range = [ + this.following.position.x, + this.following.position.x + this.randomMaxOffset, + ]; + const rangeY: Duck.Types.ParticleEmitter.Range = [ + this.following.position.y, + this.following.position.y + this.randomMaxOffset, + ]; + + this.particleEmitter.setRange(rangeX, rangeY); + } + } + + /** + * @memberof Effect + * @description Makes the effect follow the GameObject + * @param {Duck.Types.GameObject} object GameObject to follow + * @param {number} [randomMaxOffset] A random offset of the effect relative to the GameObject + * @since 1.2.0 + */ + public follow( + object: Duck.Types.GameObject, + randomMaxOffset = 5 + ) { + this.following = object; + this.randomMaxOffset = randomMaxOffset; + } + + /** + * @memberof Effect + * @description Makes the effect stop following the GameObject + * @since 1.2.0 + */ + public stopFollow() { + this.following = undefined; + } } diff --git a/src/core/effect/preset/explosion.ts b/src/core/effect/preset/explosion.ts index 79f0bc08..2d3fcc4f 100644 --- a/src/core/effect/preset/explosion.ts +++ b/src/core/effect/preset/explosion.ts @@ -7,79 +7,79 @@ import Scene from '../../scene'; import Effect from '../effect'; export default class ExplosionEffect extends Effect { - protected maxAge: number; - protected speedRange: Duck.Types.ParticleEmitter.Range; + protected maxAge: number; + protected speedRange: Duck.Types.ParticleEmitter.Range; - constructor( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - game: Game, - particleAmount = 50, - speedRange: Duck.Types.ParticleEmitter.Range = [450, 450], - maxAge = 3, - color = '#FFA500', - scene: Scene - ) { - const particle = new Particle('circle', 0, 0, 5, color, game, scene); - particle.visible = false; // for now, ParticleEmitter sets it to true when emits + constructor( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + game: Game, + particleAmount = 50, + speedRange: Duck.Types.ParticleEmitter.Range = [450, 450], + maxAge = 3, + color = '#FFA500', + scene: Scene + ) { + const particle = new Particle('circle', 0, 0, 5, color, game, scene); + particle.visible = false; // for now, ParticleEmitter sets it to true when emits - const particleEmitter = new ParticleEmitter( - particle, - rangeX, - rangeY, - particleAmount, - game, - scene, - false - ); + const particleEmitter = new ParticleEmitter( + particle, + rangeX, + rangeY, + particleAmount, + game, + scene, + false + ); - super(rangeX, rangeY, particleEmitter, game); + super(rangeX, rangeY, particleEmitter, game); - this.maxAge = maxAge; - this.speedRange = speedRange; - } + this.maxAge = maxAge; + this.speedRange = speedRange; + } - /** - * @memberof Effect - * @description Makes the particleEmitter emit - * @since 1.2.0 - */ - public emit() { - const min = randomFloat(-this.speedRange[0], -this.speedRange[1]); - const max = randomFloat(this.speedRange[0], this.speedRange[1]); + /** + * @memberof Effect + * @description Makes the particleEmitter emit + * @since 1.2.0 + */ + public emit() { + const min = randomFloat(-this.speedRange[0], -this.speedRange[1]); + const max = randomFloat(this.speedRange[0], this.speedRange[1]); - this.particleEmitter.create(); - this.particleEmitter.float([min, max], [min, max]); + this.particleEmitter.create(); + this.particleEmitter.float([min, max], [min, max]); - this.particleEmitter.emit(); - } + this.particleEmitter.emit(); + } - /** - * @memberof Effect - * @description Stops the particleEmitter emitting - * @since 1.2.0 - */ - public stopEmit() { - this.particleEmitter.stopEmit(); - } + /** + * @memberof Effect + * @description Stops the particleEmitter emitting + * @since 1.2.0 + */ + public stopEmit() { + this.particleEmitter.stopEmit(); + } - /** - * @memberof Effect - * @description Makes the particleEmitter emit for a duration - * @param {number} ms Duration in milliseconds - * @since 1.2.0 - */ - public emitFor(ms: number) { - this.particleEmitter.emitFor(ms); - } + /** + * @memberof Effect + * @description Makes the particleEmitter emit for a duration + * @param {number} ms Duration in milliseconds + * @since 1.2.0 + */ + public emitFor(ms: number) { + this.particleEmitter.emitFor(ms); + } - /** - * @description Draws the effect. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - this.particleEmitter.offloadMaxAge(this.maxAge); - } + /** + * @description Draws the effect. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + this.particleEmitter.offloadMaxAge(this.maxAge); + } } diff --git a/src/core/effect/preset/smoke.ts b/src/core/effect/preset/smoke.ts index 2b13aa35..6f1921c3 100644 --- a/src/core/effect/preset/smoke.ts +++ b/src/core/effect/preset/smoke.ts @@ -6,86 +6,86 @@ import Scene from '../../scene'; import Effect from '../effect'; export default class SmokeEffect extends Effect { - protected maxAge: number; - protected speedRangeX: Duck.Types.ParticleEmitter.Range; - protected speedRangeY: Duck.Types.ParticleEmitter.Range; - protected interval: number; + protected maxAge: number; + protected speedRangeX: Duck.Types.ParticleEmitter.Range; + protected speedRangeY: Duck.Types.ParticleEmitter.Range; + protected interval: number; - constructor( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - game: Game, - particleAmount = 50, - speedRangeX: Duck.Types.ParticleEmitter.Range = [-10, -40], - speedRangeY: Duck.Types.ParticleEmitter.Range = [-10, -40], - maxAge = 20, - color = '#2e2e2e', - interval = 50, - scene: Scene - ) { - const particle = new Particle('circle', 0, 0, 5, color, game, scene); - particle.visible = false; + constructor( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + game: Game, + particleAmount = 50, + speedRangeX: Duck.Types.ParticleEmitter.Range = [-10, -40], + speedRangeY: Duck.Types.ParticleEmitter.Range = [-10, -40], + maxAge = 20, + color = '#2e2e2e', + interval = 50, + scene: Scene + ) { + const particle = new Particle('circle', 0, 0, 5, color, game, scene); + particle.visible = false; - const particleEmitter = new ParticleEmitter( - particle, - rangeX, - rangeY, - particleAmount, - game, - scene, - false - ); + const particleEmitter = new ParticleEmitter( + particle, + rangeX, + rangeY, + particleAmount, + game, + scene, + false + ); - super(rangeX, rangeY, particleEmitter, game); + super(rangeX, rangeY, particleEmitter, game); - this.maxAge = maxAge; - this.speedRangeX = speedRangeX; - this.speedRangeY = speedRangeY; - this.interval = interval; - } + this.maxAge = maxAge; + this.speedRangeX = speedRangeX; + this.speedRangeY = speedRangeY; + this.interval = interval; + } - /** - * @memberof Effect - * @description Makes the particleEmitter emit - * @since 1.2.0 - */ - public emit() { - this.particleEmitter.create(); - this.particleEmitter.float( - [this.speedRangeX[0], this.speedRangeX[0]], - [this.speedRangeY[1], this.speedRangeY[1]] - ); - this.particleEmitter.keepEmitting(this.interval); + /** + * @memberof Effect + * @description Makes the particleEmitter emit + * @since 1.2.0 + */ + public emit() { + this.particleEmitter.create(); + this.particleEmitter.float( + [this.speedRangeX[0], this.speedRangeX[0]], + [this.speedRangeY[1], this.speedRangeY[1]] + ); + this.particleEmitter.keepEmitting(this.interval); - this.particleEmitter.emit(); - } + this.particleEmitter.emit(); + } - /** - * @memberof Effect - * @description Stops the particleEmitter emitting - * @since 1.2.0 - */ - public stopEmit() { - this.particleEmitter.stopEmit(); - } + /** + * @memberof Effect + * @description Stops the particleEmitter emitting + * @since 1.2.0 + */ + public stopEmit() { + this.particleEmitter.stopEmit(); + } - /** - * @memberof Effect - * @description Makes the particleEmitter emit for a duration - * @param {number} ms Duration in milliseconds - * @since 1.2.0 - */ - public emitFor(ms: number) { - this.particleEmitter.emitFor(ms); - } + /** + * @memberof Effect + * @description Makes the particleEmitter emit for a duration + * @param {number} ms Duration in milliseconds + * @since 1.2.0 + */ + public emitFor(ms: number) { + this.particleEmitter.emitFor(ms); + } - /** - * @description Draws the effect. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - this.particleEmitter.offloadMaxAge(this.maxAge); - } + /** + * @description Draws the effect. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + this.particleEmitter.offloadMaxAge(this.maxAge); + } } diff --git a/src/core/events/eventEmitter.ts b/src/core/events/eventEmitter.ts index a86c62fa..47c8d35a 100644 --- a/src/core/events/eventEmitter.ts +++ b/src/core/events/eventEmitter.ts @@ -1,28 +1,28 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ export default class EventEmitter { - public callbacks: { [s: string]: ((...args: any[]) => any)[] } = {}; + public callbacks: { [s: string]: ((...args: any[]) => any)[] } = {}; - public on(event: string, cb: (...args: any) => void) { - if (!this.callbacks[event]) this.callbacks[event] = []; - this.callbacks[event].push(cb); - } + public on(event: string, cb: (...args: any) => void) { + if (!this.callbacks[event]) this.callbacks[event] = []; + this.callbacks[event].push(cb); + } - public off(event: string) { - if (this.callbacks[event]) { - this.callbacks[event] = []; - } - } + public off(event: string) { + if (this.callbacks[event]) { + this.callbacks[event] = []; + } + } - public emit(event: string, ...args: any) { - const cbs = this.callbacks[event]; - if (cbs) { - cbs.forEach((cb) => { - if (args) { - cb(...args); - } else { - cb(); - } - }); - } - } + public emit(event: string, ...args: any) { + const cbs = this.callbacks[event]; + if (cbs) { + cbs.forEach((cb) => { + if (args) { + cb(...args); + } else { + cb(); + } + }); + } + } } diff --git a/src/core/events/events.ts b/src/core/events/events.ts index cdb04f43..90963a36 100644 --- a/src/core/events/events.ts +++ b/src/core/events/events.ts @@ -6,12 +6,12 @@ import CutsceneEvents from './other/cutsceneEvents'; import GroupEvents from './other/groupEvents'; const EVENTS = { - BUTTON: ButtonEvents, - GROUP: GroupEvents, - CUTSCENE: CutsceneEvents, - GAME: GameEvents, - RENDERER: RendererEvents, - DISPLAY: DisplayEvents, + BUTTON: ButtonEvents, + GROUP: GroupEvents, + CUTSCENE: CutsceneEvents, + GAME: GameEvents, + RENDERER: RendererEvents, + DISPLAY: DisplayEvents, }; export default EVENTS; diff --git a/src/core/events/main/displayEvents.ts b/src/core/events/main/displayEvents.ts index b3aebb36..6aa525aa 100644 --- a/src/core/events/main/displayEvents.ts +++ b/src/core/events/main/displayEvents.ts @@ -1,9 +1,9 @@ const DisplayEvents = { - SET_SCALE: 'DISPLAY_SET_SCALE', - FULLSCREEN: 'DISPLAY_FULLSCREEN', - UNFULLSCREEN: 'DISPLAY_UNFULLSCREEN', - FOCUS: 'DISPLAY_FOCUS', - BLUR: 'DISPLAY_BLUR', + SET_SCALE: 'DISPLAY_SET_SCALE', + FULLSCREEN: 'DISPLAY_FULLSCREEN', + UNFULLSCREEN: 'DISPLAY_UNFULLSCREEN', + FOCUS: 'DISPLAY_FOCUS', + BLUR: 'DISPLAY_BLUR', }; export default DisplayEvents; diff --git a/src/core/events/main/gameEvents.ts b/src/core/events/main/gameEvents.ts index 82c01de4..64c53a80 100644 --- a/src/core/events/main/gameEvents.ts +++ b/src/core/events/main/gameEvents.ts @@ -1,24 +1,24 @@ const GameEvents = { - FOCUS: 'GAME_FOCUS', - BLUR: 'GAME_BLUR', - START: 'GAME_START', - STOP: 'GAME_STOP', - LOAD_BEGIN: 'GAME_LOAD_BEGIN', - LOAD_FINISH: 'GAME_LOAD_FINISH', - SCENE_ADD: 'GAME_SCENE_ADD', - SCENE_REMOVE: 'GAME_SCENE_REMOVE', - LOAD_SCENE: 'GAME_LOAD_SCENE', - SWITCH_SCENE: 'GAME_SWITCH_SCENE', - SHOW_SCENE: 'GAME_SHOW_SCENE', - DRAW_SPLASH: 'GAME_DRAW_SPLASH', - CLEAR_FRAME: 'GAME_CLEAR_FRAME', - SET_SCALE: 'GAME_SET_SCALE', - SET_BACKGROUND: 'GAME_SET_BACKGROUND', - SYNC_CACHE: 'GAME_SYNC_CACHE', - LOCK_POINTER: 'GAME_LOCK_POINTER', - UNLOCK_POINTER: 'GAME_UNLOCK_POINTER', - CONTEXT_LOST: 'GAME_CONTEXT_LOST', - CONTEXT_RESTORED: 'GAME_CONTEXT_RESTORED', + FOCUS: 'GAME_FOCUS', + BLUR: 'GAME_BLUR', + START: 'GAME_START', + STOP: 'GAME_STOP', + LOAD_BEGIN: 'GAME_LOAD_BEGIN', + LOAD_FINISH: 'GAME_LOAD_FINISH', + SCENE_ADD: 'GAME_SCENE_ADD', + SCENE_REMOVE: 'GAME_SCENE_REMOVE', + LOAD_SCENE: 'GAME_LOAD_SCENE', + SWITCH_SCENE: 'GAME_SWITCH_SCENE', + SHOW_SCENE: 'GAME_SHOW_SCENE', + DRAW_SPLASH: 'GAME_DRAW_SPLASH', + CLEAR_FRAME: 'GAME_CLEAR_FRAME', + SET_SCALE: 'GAME_SET_SCALE', + SET_BACKGROUND: 'GAME_SET_BACKGROUND', + SYNC_CACHE: 'GAME_SYNC_CACHE', + LOCK_POINTER: 'GAME_LOCK_POINTER', + UNLOCK_POINTER: 'GAME_UNLOCK_POINTER', + CONTEXT_LOST: 'GAME_CONTEXT_LOST', + CONTEXT_RESTORED: 'GAME_CONTEXT_RESTORED', }; export default GameEvents; diff --git a/src/core/events/main/rendererEvents.ts b/src/core/events/main/rendererEvents.ts index 8c2f929f..db2a9c68 100644 --- a/src/core/events/main/rendererEvents.ts +++ b/src/core/events/main/rendererEvents.ts @@ -1,6 +1,6 @@ const RendererEvents = { - PIPELINE_POOL: 'RENDERER_PIPELINE_POOL', - CLEAR_FRAME: 'CLEAR_FRAME', + PIPELINE_POOL: 'RENDERER_PIPELINE_POOL', + CLEAR_FRAME: 'CLEAR_FRAME', }; export default RendererEvents; diff --git a/src/core/events/other/buttonEvents.ts b/src/core/events/other/buttonEvents.ts index 46ef08f3..6089cb44 100644 --- a/src/core/events/other/buttonEvents.ts +++ b/src/core/events/other/buttonEvents.ts @@ -1,7 +1,7 @@ const ButtonEvents = { - CLICK: 'BUTTON_CLICK', - HOVER: 'BUTTON_HOVER', - NOTHOVER: 'BUTTON_NOTHOVER', + CLICK: 'BUTTON_CLICK', + HOVER: 'BUTTON_HOVER', + NOTHOVER: 'BUTTON_NOTHOVER', }; export default ButtonEvents; diff --git a/src/core/events/other/cutsceneEvents.ts b/src/core/events/other/cutsceneEvents.ts index fe102221..336bb0b0 100644 --- a/src/core/events/other/cutsceneEvents.ts +++ b/src/core/events/other/cutsceneEvents.ts @@ -1,7 +1,7 @@ const CutsceneEvents = { - START: 'CUTSCENE_START', - END: 'CUTSCENE_END', - NEXT: 'CUTSCENE_NEXT', + START: 'CUTSCENE_START', + END: 'CUTSCENE_END', + NEXT: 'CUTSCENE_NEXT', }; export default CutsceneEvents; diff --git a/src/core/events/other/groupEvents.ts b/src/core/events/other/groupEvents.ts index 270694ae..9f287472 100644 --- a/src/core/events/other/groupEvents.ts +++ b/src/core/events/other/groupEvents.ts @@ -1,6 +1,6 @@ const GroupEvents = { - ADD: 'GROUP_ADD', - REMOVE: 'GROUP_REMOVE', + ADD: 'GROUP_ADD', + REMOVE: 'GROUP_REMOVE', }; export default GroupEvents; diff --git a/src/core/game.ts b/src/core/game.ts index d37226e9..18fa2bc1 100644 --- a/src/core/game.ts +++ b/src/core/game.ts @@ -11,6 +11,7 @@ import PluginManager from './misc/pluginManager'; import CacheManager from './storage/cacheManager'; import CanvasRenderer from './renderer/canvas/canvasRenderer'; import DisplayManager from './display/displayManager'; +import versionInfo from '../helper/versionInfo'; /** * @class Game @@ -19,621 +20,621 @@ import DisplayManager from './display/displayManager'; * @since 1.0.0-beta */ export default class Game { - /** - * @memberof Game - * @description Game Configuration - * @type Duck.Types.Game.Config - * @since 1.0.0-beta - */ - public readonly config: Duck.Types.Game.Config; - - /** - * @memberof Game - * @description The Canvas that is used to render to - * @type HTMLCanvasElement - * @since 1.0.0-beta - */ - public canvas: HTMLCanvasElement; - - /** - * @memberof Game - * @description The Renderer used to draw and clear frames - * @type CanvasRenderer - * @since 2.1.0 - */ - public renderer: CanvasRenderer; - - /** - * @memberof Game - * @description The Game Stack, holds all Scenes, and the defaultScene key - * @type Duck.Types.Game.Stack - * @since 1.0.0-beta - */ - public stack: Duck.Types.Game.Stack; - - /** - * @memberof Game - * @description A reference to the animationFrame - * @type number | undefined - * @since 1.0.0 - */ - public animationFrame: number | undefined; - - /** - * @memberof Game - * @description A CacheManager instance - * @type CacheManager - * @since 2.0.0 - */ - public cacheManager: CacheManager; - - /** - * @memberof Game - * @description An array of the last 100 deltaTimes, deltaTime = time since last frame - * @type number[] - * @since 2.0.0 - */ - public deltaTimeArray: number[]; - - /** - * @memberof Game - * @description The time since the last frame - * @type number - * @since 1.0.0 - */ - public deltaTime: number; - - /** - * @memberof Game - * @description The time since the last frame averaged and smoothed out using Game.deltaTimeArray, applied to velocity of gameobjects - * @type number - * @since 2.0.0 - */ - public smoothDeltaTime: number; - protected oldTime: number; - protected now: number; - - /** - * @memberof Game - * @description The current fps (Frames per second) that the Game loop is running at - * @type number - * @since 2.0.0 - */ - public fps: number; - - /** - * @memberof Game - * @description The state of being in fullscreen, determines if the game is in fullscreen or not, changing this value does nothing - * use game.fullscreen and game.unfullscreen to effect this value - * @type boolean - * @since 1.0.0 - */ - public isInFullscreen: boolean; - - /** - * @memberof Game - * @description The width of the canvas that was set by the config, never changes, may not be current - * @type number - * @since 2.1.0 - */ - public readonly oldWidth: number; - - /** - * @memberof Game - * @description The width of the canvas that was set by the config, never changes, may not be current - * @type number - * @since 2.1.0 - */ - public readonly oldHeight: number; - - // methods - - /** - * @memberof Game - * @description The scene manager, object that holds methods to add and remove scenes from the Game.stack - * @type{ add: (scenes: Scene[]) => void; remove: (scene: Scene) => void }; - * @since 1.0.0-beta - */ - public scenes: { - add: (scenes: Scene[]) => void; - remove: (scene: Scene) => void; - }; - - /** - * @memberof Game - * @description The state of the game, if it is currently rendering - * @type boolean - * @since 2.0.0 - */ - public isRendering: boolean; - - /** - * @memberof Game - * @description The state of the game, if it is currently loading - * @type boolean - * @since 2.0.0 - */ - public isLoaded: boolean; - - /** - * @memberof Game - * @description The source to the splash screen image that is shown during loading - * @type string - * @since 2.0.0 - */ - public splashScreen: string; - - /** - * @memberof Game - * @description An EventEmitter, used by many classes other than the Game class (also used by Game class) - * @type EventEmitter - * @since 2.0.0 - */ - public eventEmitter: EventEmitter; - - /** - * @memberof Game - * @description A PluginManager, stores and manages plugins - * @type PluginManager - * @since 2.0.0 - */ - public pluginManager: PluginManager; - - /** - * @memberof Game - * @description A DisplayManager, manages the scaling of the canvas - * @type DisplayManager - * @since 2.0.0 - */ - public displayManager: DisplayManager; - - /** - * @memberof Game - * @description The browser being used - * @type string - * @since 2.0.0 - */ - public browser: string; - - /** - * @constructor Game - * @description Creates a Game instance - * @param {Duck.Types.Game.Config} config Game Configuration - * @since 1.0.0-beta - */ - constructor(config: Duck.Types.Game.Config) { - console.log(startup); - - this.config = config; - - if (this.config.canvas === null) { - this.config.canvas = Duck.AutoCanvas(); - } - - if (!this.config.canvas) { - new Debug.Error( - 'You must pass in an HTMLCanvasElement or pass in the return value of Duck.AutoCanvas()!' - ); - } - - if (this.config.canvas instanceof HTMLCanvasElement) { - this.canvas = this.config.canvas; - } else { - this.canvas = this.config.canvas.canvas; - } - - this.renderer = new CanvasRenderer(this, this.config.poolingInterval); - - this.deltaTimeArray = []; - this.deltaTime = 0; - this.smoothDeltaTime = 0; - this.oldTime = 0; - this.now = 0; - this.fps = 0; - - this.eventEmitter = new EventEmitter(); - this.pluginManager = new PluginManager(); - this.displayManager = new DisplayManager(this); - - // set scale - if (this.config.scale) { - this.displayManager.scale(this.config.scale); - } - - // set background - if (this.config.background) { - this.setBackground(this.config.background); - } - - // mobile scaling / devicePixelRatio scaling - if (this.config.dprScale) { - dprScale( - this.canvas, - this.renderer.ctx, - this.config.scale?.x || this.canvas.width, - this.config.scale?.y || this.canvas.height - ); - if (this.config.debug) { - new Debug.Log( - `Scaled with devicePixelRatio of ${window.devicePixelRatio}` - ); - } - } - - // fullscreen scale - this.isInFullscreen = false; - this.oldWidth = this.canvas.width; - this.oldHeight = this.canvas.height; - - // smart scale - if (this.config.smartScale) { - window.onresize = () => { - this.displayManager.smallCorrectionScale(); - }; - } - - this.isRendering = false; - this.isLoaded = false; - - this.splashScreen = - this.config.splashScreen?.img || - 'https://i.ibb.co/bdN4CCN/Logo-Splash.png'; - - if (this.config.splashScreen?.img === 'default') { - this.splashScreen = 'https://i.ibb.co/bdN4CCN/Logo-Splash.png'; - } - - // stack - this.stack = { - scenes: [], - defaultScene: this.config.defaultScene, - }; - - this.cacheManager = new CacheManager(); - - // browser - this.browser = detectBrowser() as string; - - // animation frame - this.animationFrame; - - // set up some events - this.eventEmitter.on(EVENTS.GAME.CONTEXT_LOST, () => { - if (this.config.debug) { - new Debug.Error('Context lost! Trying to restore...'); - } - - // restore context - if (!this.canvas) { - const res = Duck.AutoCanvas(); - this.canvas = res.canvas; - } - - if (!this.renderer.ctx) { - this.renderer.ctx = this.canvas.getContext( - '2d' - ) as CanvasRenderingContext2D; - } - - this.eventEmitter.emit( - EVENTS.GAME.CONTEXT_RESTORED, - this.renderer.ctx - ); - }); - - this.eventEmitter.on(EVENTS.GAME.CONTEXT_RESTORED, () => { - if (this.config.debug) { - new Debug.Log('Restored context...'); - } - }); - - // methods - this.scenes = { - /** - * @memberof Game#scenes - * @description Add a scenes to the Game stack - * @param {Scene[]} scenes Scenes to add to the Game stack - * @since 1.0.0-beta - */ - add: (scenes: Scene[]) => { - scenes.forEach((scene) => { - this.stack.scenes.push(scene); - this.eventEmitter.emit(EVENTS.GAME.SCENE_ADD, scene); - this.renderer.pipeline.pool(); - }); - }, - - /** - * @memberof Game#scenes - * @description Removes a scene from the Game stack - * @param {Scene} scene Scene to remove from the Game stack - * @since 1.0.0-beta - */ - remove: (scene: Scene) => { - const f = this.stack.scenes.find( - (_scene) => _scene.key === scene.key - ); - if (f) { - this.stack.scenes.splice( - this.stack.scenes.indexOf(scene), - 1 - ); - this.eventEmitter.emit(EVENTS.GAME.SCENE_REMOVE, scene); - this.renderer.pipeline.pool(); - } - }, - }; - } - - /** - * @memberof Game - * @description Starts the game loop - * @emits EVENTS.GAME.LOAD_BEGIN - * @emits EVENTS.GAME.DRAW_SPLASH - * @emits EVENTS.GAME.LOAD_SCENE - * @emits EVENTS.GAME.LOAD_FINISH - * @since 1.0.0-beta - */ - public async start() { - this.eventEmitter.emit(EVENTS.GAME.LOAD_BEGIN); - - // sync cache - this.eventEmitter.emit(EVENTS.GAME.SYNC_CACHE); - this.cacheManager.sync(); - - // show loading splash screen - this.eventEmitter.emit(EVENTS.GAME.DRAW_SPLASH); - await this.drawSplashScreen(); - - // load scenes - for await (const scene of this.stack.scenes) { - // preload assets - await scene.preload(); - - // create assets - scene.create(); - - this.eventEmitter.emit(EVENTS.GAME.LOAD_SCENE); - } - - // set states - this.isRendering = true; - this.isLoaded = true; - - await this.hideSplashScreen(); - this.eventEmitter.emit(EVENTS.GAME.LOAD_FINISH); - - if (this.config.debug) { - new Debug.Log('Game loaded.'); - } - - if (this.config.onResumeRendering && !this.config.debugRendering) { - this.config.onResumeRendering('gameStart'); - } - - // pool - this.renderer.pipeline.pool(); - - // start loop - this.loop(); - if (this.config.debug) { - new Debug.Log('Started animation frame.'); - } - } - - /** - * @memberof Game - * @description Stops the game loop - * @emits EVENTS.GAME.STOP - * @since 1.0.0 - */ - public stop() { - if (this.animationFrame) { - cancelAnimationFrame(this.animationFrame); - - // set states - this.isRendering = false; - this.isLoaded = false; - - if (this.config.onPauseRendering && !this.config.debugRendering) { - this.config.onPauseRendering('gameStop'); - } - - if (this.config.debug) { - new Debug.Log('Stopped animation frame.'); - } - - this.eventEmitter.emit(EVENTS.GAME.STOP); - } else { - if (this.config.debug) { - new Debug.Error( - 'Cannot stop animation frame. You must start the game loop first.' - ); - } - } - } - - /** - * @memberof Game - * @description Core loop - * @since 1.0.0-beta - */ - protected loop() { - this.renderer.clearFrame(); - - /* Delta Time Stuff */ - this.now = performance.now(); - this.deltaTime = (this.now - this.oldTime) / 1000; - this.fps = 1 / this.deltaTime; - - if (this.deltaTimeArray.length > 100) { - this.deltaTimeArray.shift(); - } - this.deltaTimeArray.push(this.deltaTime); - this.smoothDeltaTime = Number( - smoothOut(this.deltaTimeArray, 1).toPrecision(1) - ); - - /* Call Renderer.render */ - if (this.isRendering && this.deltaTimeArray.length > 99) { - this.renderer.render(this.deltaTime); - } - - this.oldTime = this.now; - - this.animationFrame = requestAnimationFrame(() => { - this.loop(); - }); - } - - /** - * @memberof Game - * @description Draws the splash screen to the canvas by setting the background image - * @since 2.0.0 - */ - protected async drawSplashScreen() { - this.canvas.style.backgroundImage = `url('${this.splashScreen}')`; - await this.sleep( - (this.config.splashScreen?.extraDuration || 0) + - (this.config?.poolingInterval || 1000) // add pooling interval so that scenes will be pooled on load - ); - } - - /** - * @memberof Game - * @description Hides the splash screen to the canvas - * @since 2.0.0 - */ - protected async hideSplashScreen() { - this.canvas.style.backgroundImage = 'none'; - } - - protected sleep(ms: number) { - return new Promise((resolve) => setTimeout(resolve, ms)); - } - - /** - * @memberof Game - * @description Sets the scale of the canvas - * @param {Duck.Types.Misc.Scale} scale Scale to set the canvas to - * @emits EVENTS.GAME.SET_SCALE - * @since 1.0.0-beta - */ - public setScale(scale: Duck.Types.Misc.Scale) { - if (this.canvas) { - if (scale.width) { - this.canvas.width = scale.width; - } - - if (scale.height) { - this.canvas.height = scale.height; - } - - this.eventEmitter.emit(EVENTS.GAME.SET_SCALE, scale); - } else { - new Debug.Error('Cannot setScale to a canvas of undefined.'); - } - } - - /** - * @memberof Game - * @description Sets the style background color of the canvas - * @param {string} background Background color - * @emits EVENTS.GAME.SET_BACKGROUND - * @since 1.0.0-beta - */ - public setBackground(background: string) { - if (this.canvas) { - this.canvas.style.background = background; - - this.eventEmitter.emit(EVENTS.GAME.SET_BACKGROUND, background); - } else { - new Debug.Error( - 'Cannot set background of undefined. Canvas is undefined.' - ); - } - } - - /** - * @memberof Game - * @description Switches the current scene by the key - * @param {string} key Key of the scene to switch from - * @param {string} key2 Key of the scene to switch to - * @emits EVENTS.GAME.SWITCH_SCENE - * @since 1.0.0-beta - */ - public switchScene(key: string, key2: string) { - const f = this.stack.scenes.find((_scene) => _scene.key === key); - const f2 = this.stack.scenes.find((_scene) => _scene.key === key2); - if (f) { - if (f2) { - f.visible = false; - f2.visible = true; - - // will be removed in v3.0.0 - f2.onChange(); - - f.onSceneInactive(); - f2.onSceneActive(); - - this.eventEmitter.emit(EVENTS.GAME.SWITCH_SCENE); - } else { - new Debug.Error( - `Cannot switch to scene with scene key "${key2}. Scene not found."` - ); - } - } else { - new Debug.Error( - `Cannot switch from scene from scene key "${key}. Scene not found."` - ); - } - } - - /** - * @memberof Game - * @description Sets a scene to visible. Keeps the current scene visible - * @param {string} key Key of the scene to show - * @emits EVENTS.GAME.SHOW_SCENE - * @since 1.0.0-beta - */ - public showScene(key: string) { - const f = this.stack.scenes.find((_scene) => _scene.key === key); - if (f) { - f.visible = true; - - f.onSceneActive(); - - this.eventEmitter.emit(EVENTS.GAME.SHOW_SCENE); - } else { - new Debug.Error( - `Cannot switch to scene with key "${key}. Scene not found."` - ); - } - } - - /** - * @memberof Game - * @description Locks the pointer on the canvas - * @emits EVENTS.GAME.LOCK_POINTER - * @since 1.0.0 - */ - public lockPointer() { - if (this.canvas) { - this.canvas.requestPointerLock(); - this.eventEmitter.emit(EVENTS.GAME.LOCK_POINTER); - } - } - - /** - * @memberof Game - * @description Unlocks the pointer from the canvas - * @emits EVENTS.GAME.UNLOCK_POINTER - * @since 1.0.0 - */ - public unlockPointer() { - if (document.pointerLockElement) { - document.exitPointerLock(); - this.eventEmitter.emit(EVENTS.GAME.UNLOCK_POINTER); - } - } + /** + * @memberof Game + * @description Version and build info + * @type Duck.Types.Game.VersionInfo + * @since 3.0.0 + */ + public static readonly versionInfo: Duck.Types.Game.VersionInfo = versionInfo; + + /** + * @memberof Game + * @description Game Configuration + * @type Duck.Types.Game.Config + * @since 1.0.0-beta + */ + public readonly config: Duck.Types.Game.Config; + + /** + * @memberof Game + * @description The Canvas that is used to render to + * @type HTMLCanvasElement + * @since 1.0.0-beta + */ + public canvas: HTMLCanvasElement; + + /** + * @memberof Game + * @description The Renderer used to draw and clear frames + * @type CanvasRenderer + * @since 2.1.0 + */ + public renderer: CanvasRenderer; + + /** + * @memberof Game + * @description The Game Stack, holds all Scenes, and the defaultScene key + * @type Duck.Types.Game.Stack + * @since 1.0.0-beta + */ + public stack: Duck.Types.Game.Stack; + + /** + * @memberof Game + * @description A reference to the animationFrame + * @type number | undefined + * @since 1.0.0 + */ + public animationFrame: number | undefined; + + /** + * @memberof Game + * @description A CacheManager instance + * @type CacheManager + * @since 2.0.0 + */ + public cacheManager: CacheManager; + + /** + * @memberof Game + * @description An array of the last 100 deltaTimes, deltaTime = time since last frame + * @type number[] + * @since 2.0.0 + */ + public deltaTimeArray: number[]; + + /** + * @memberof Game + * @description The time since the last frame + * @type number + * @since 1.0.0 + */ + public deltaTime: number; + + /** + * @memberof Game + * @description The time since the last frame averaged and smoothed out using Game.deltaTimeArray, applied to velocity of gameobjects + * @type number + * @since 2.0.0 + */ + public smoothDeltaTime: number; + protected oldTime: number; + protected now: number; + + /** + * @memberof Game + * @description The current fps (Frames per second) that the Game loop is running at + * @type number + * @since 2.0.0 + */ + public fps: number; + + /** + * @memberof Game + * @description The state of being in fullscreen, determines if the game is in fullscreen or not, changing this value does nothing + * use game.fullscreen and game.unfullscreen to effect this value + * @type boolean + * @since 1.0.0 + */ + public isInFullscreen: boolean; + + /** + * @memberof Game + * @description The width of the canvas that was set by the config, never changes, may not be current + * @type number + * @since 2.1.0 + */ + public readonly oldWidth: number; + + /** + * @memberof Game + * @description The width of the canvas that was set by the config, never changes, may not be current + * @type number + * @since 2.1.0 + */ + public readonly oldHeight: number; + + // methods + + /** + * @memberof Game + * @description The scene manager, object that holds methods to add and remove scenes from the Game.stack + * @type{ add: (scenes: Scene[]) => void; remove: (scene: Scene) => void }; + * @since 1.0.0-beta + */ + public scenes: { + add: (scenes: Scene[]) => void; + remove: (scene: Scene) => void; + }; + + /** + * @memberof Game + * @description The state of the game, if it is currently rendering + * @type boolean + * @since 2.0.0 + */ + public isRendering: boolean; + + /** + * @memberof Game + * @description The state of the game, if it is currently loading + * @type boolean + * @since 2.0.0 + */ + public isLoaded: boolean; + + /** + * @memberof Game + * @description The source to the splash screen image that is shown during loading + * @type string + * @since 2.0.0 + */ + public splashScreen: string; + + /** + * @memberof Game + * @description An EventEmitter, used by many classes other than the Game class (also used by Game class) + * @type EventEmitter + * @since 2.0.0 + */ + public eventEmitter: EventEmitter; + + /** + * @memberof Game + * @description A PluginManager, stores and manages plugins + * @type PluginManager + * @since 2.0.0 + */ + public pluginManager: PluginManager; + + /** + * @memberof Game + * @description A DisplayManager, manages the scaling of the canvas + * @type DisplayManager + * @since 2.0.0 + */ + public displayManager: DisplayManager; + + /** + * @memberof Game + * @description The browser being used + * @type string + * @since 2.0.0 + */ + public browser: string; + + /** + * @constructor Game + * @description Creates a Game instance + * @param {Duck.Types.Game.Config} config Game Configuration + * @since 1.0.0-beta + */ + constructor(config: Duck.Types.Game.Config) { + console.log(startup); + + this.config = config; + + if (this.config.canvas === null) { + this.config.canvas = Duck.AutoCanvas(); + } + + if (!this.config.canvas) { + new Debug.Error( + 'You must pass in an HTMLCanvasElement or pass in the return value of Duck.AutoCanvas()!' + ); + } + + if (this.config.canvas instanceof HTMLCanvasElement) { + this.canvas = this.config.canvas; + } else { + this.canvas = this.config.canvas.canvas; + } + + this.renderer = new CanvasRenderer(this); + + this.deltaTimeArray = []; + this.deltaTime = 0; + this.smoothDeltaTime = 0; + this.oldTime = 0; + this.now = 0; + this.fps = 0; + + this.eventEmitter = new EventEmitter(); + this.pluginManager = new PluginManager(); + this.displayManager = new DisplayManager(this); + + // set scale + if (this.config.scale) { + this.displayManager.scale(this.config.scale); + } + + // set background + if (this.config.background) { + this.setBackground(this.config.background); + } + + // mobile scaling / devicePixelRatio scaling + if (this.config.dprScale) { + dprScale( + this.canvas, + this.renderer.ctx, + this.config.scale?.x || this.canvas.width, + this.config.scale?.y || this.canvas.height + ); + if (this.config.debug) { + new Debug.Log( + `Scaled with devicePixelRatio of ${window.devicePixelRatio}` + ); + } + } + + // fullscreen scale + this.isInFullscreen = false; + this.oldWidth = this.canvas.width; + this.oldHeight = this.canvas.height; + + // smart scale + if (this.config.smartScale) { + window.onresize = () => { + this.displayManager.smallCorrectionScale(); + }; + } + + this.isRendering = false; + this.isLoaded = false; + + this.splashScreen = + this.config.splashScreen?.img || + 'https://i.ibb.co/bdN4CCN/Logo-Splash.png'; + + if (this.config.splashScreen?.img === 'default') { + this.splashScreen = 'https://i.ibb.co/bdN4CCN/Logo-Splash.png'; + } + + // stack + this.stack = { + scenes: [], + defaultScene: this.config.defaultScene, + }; + + this.cacheManager = new CacheManager(); + + // browser + this.browser = detectBrowser() as string; + + // animation frame + this.animationFrame; + + // set up some events + this.eventEmitter.on(EVENTS.GAME.CONTEXT_LOST, () => { + if (this.config.debug) { + new Debug.Error('Context lost! Trying to restore...'); + } + + // restore context + if (!this.canvas) { + const res = Duck.AutoCanvas(); + this.canvas = res.canvas; + } + + if (!this.renderer.ctx) { + this.renderer.ctx = this.canvas.getContext( + '2d' + ) as CanvasRenderingContext2D; + } + + this.eventEmitter.emit(EVENTS.GAME.CONTEXT_RESTORED, this.renderer.ctx); + }); + + this.eventEmitter.on(EVENTS.GAME.CONTEXT_RESTORED, () => { + if (this.config.debug) { + new Debug.Log('Restored context...'); + } + }); + + // methods + this.scenes = { + /** + * @memberof Game#scenes + * @description Add a scenes to the Game stack + * @param {Scene[]} scenes Scenes to add to the Game stack + * @since 1.0.0-beta + */ + add: (scenes: Scene[]) => { + scenes.forEach((scene) => { + this.stack.scenes.push(scene); + this.eventEmitter.emit(EVENTS.GAME.SCENE_ADD, scene); + this.renderer.pipeline.pool(); + }); + }, + + /** + * @memberof Game#scenes + * @description Removes a scene from the Game stack + * @param {Scene} scene Scene to remove from the Game stack + * @since 1.0.0-beta + */ + remove: (scene: Scene) => { + const f = this.stack.scenes.find((_scene) => _scene.key === scene.key); + if (f) { + this.stack.scenes.splice(this.stack.scenes.indexOf(scene), 1); + this.eventEmitter.emit(EVENTS.GAME.SCENE_REMOVE, scene); + this.renderer.pipeline.pool(); + } + }, + }; + } + + /** + * @memberof Game + * @description Starts the game loop + * @emits EVENTS.GAME.LOAD_BEGIN + * @emits EVENTS.GAME.DRAW_SPLASH + * @emits EVENTS.GAME.LOAD_SCENE + * @emits EVENTS.GAME.LOAD_FINISH + * @since 1.0.0-beta + */ + public async start() { + this.eventEmitter.emit(EVENTS.GAME.LOAD_BEGIN); + + // sync cache + this.eventEmitter.emit(EVENTS.GAME.SYNC_CACHE); + this.cacheManager.sync(); + + // show loading splash screen + this.eventEmitter.emit(EVENTS.GAME.DRAW_SPLASH); + await this.drawSplashScreen(); + + // load scenes + for await (const scene of this.stack.scenes) { + // preload assets + await scene.preload(); + + // create assets + scene.create(); + + this.eventEmitter.emit(EVENTS.GAME.LOAD_SCENE); + } + + // set states + this.isRendering = true; + this.isLoaded = true; + + await this.hideSplashScreen(); + this.eventEmitter.emit(EVENTS.GAME.LOAD_FINISH); + + if (this.config.debug) { + new Debug.Log('Game loaded.'); + } + + if (this.config.onResumeRendering && !this.config.debugRendering) { + this.config.onResumeRendering('gameStart'); + } + + // pool + this.renderer.pipeline.pool(); + + // start loop + this.loop(); + if (this.config.debug) { + new Debug.Log('Started animation frame.'); + } + } + + /** + * @memberof Game + * @description Stops the game loop + * @emits EVENTS.GAME.STOP + * @since 1.0.0 + */ + public stop() { + if (this.animationFrame) { + cancelAnimationFrame(this.animationFrame); + + // set states + this.isRendering = false; + this.isLoaded = false; + + if (this.config.onPauseRendering && !this.config.debugRendering) { + this.config.onPauseRendering('gameStop'); + } + + if (this.config.debug) { + new Debug.Log('Stopped animation frame.'); + } + + this.eventEmitter.emit(EVENTS.GAME.STOP); + } else { + if (this.config.debug) { + new Debug.Error( + 'Cannot stop animation frame. You must start the game loop first.' + ); + } + } + } + + /** + * @memberof Game + * @description Core loop + * @since 1.0.0-beta + */ + protected loop() { + this.renderer.clearFrame(); + + /* Delta Time Stuff */ + this.now = performance.now(); + this.deltaTime = (this.now - this.oldTime) / 1000; + this.fps = 1 / this.deltaTime; + + if (this.deltaTimeArray.length > 100) { + this.deltaTimeArray.shift(); + } + this.deltaTimeArray.push(this.deltaTime); + this.smoothDeltaTime = Number( + smoothOut(this.deltaTimeArray, 1).toPrecision(1) + ); + + /* Call Renderer.render */ + if (this.isRendering && this.deltaTimeArray.length > 99) { + this.renderer.render(this.deltaTime); + } + + this.oldTime = this.now; + + this.animationFrame = requestAnimationFrame(() => { + this.loop(); + }); + } + + /** + * @memberof Game + * @description Draws the splash screen to the canvas by setting the background image + * @since 2.0.0 + */ + protected async drawSplashScreen() { + this.canvas.style.backgroundImage = `url('${this.splashScreen}')`; + await this.sleep( + (this.config.splashScreen?.extraDuration || 0) + + (this.config?.poolingInterval || 1000) // add pooling interval so that scenes will be pooled on load + ); + } + + /** + * @memberof Game + * @description Hides the splash screen to the canvas + * @since 2.0.0 + */ + protected async hideSplashScreen() { + this.canvas.style.backgroundImage = 'none'; + } + + protected sleep(ms: number) { + return new Promise((resolve) => setTimeout(resolve, ms)); + } + + /** + * @memberof Game + * @description Sets the scale of the canvas + * @param {Duck.Types.Misc.Scale} scale Scale to set the canvas to + * @emits EVENTS.GAME.SET_SCALE + * @since 1.0.0-beta + */ + public setScale(scale: Duck.Types.Misc.Scale) { + if (this.canvas) { + if (scale.width) { + this.canvas.width = scale.width; + } + + if (scale.height) { + this.canvas.height = scale.height; + } + + this.eventEmitter.emit(EVENTS.GAME.SET_SCALE, scale); + } else { + new Debug.Error('Cannot setScale to a canvas of undefined.'); + } + } + + /** + * @memberof Game + * @description Sets the style background color of the canvas + * @param {string} background Background color + * @emits EVENTS.GAME.SET_BACKGROUND + * @since 1.0.0-beta + */ + public setBackground(background: string) { + if (this.canvas) { + this.canvas.style.background = background; + + this.eventEmitter.emit(EVENTS.GAME.SET_BACKGROUND, background); + } else { + new Debug.Error( + 'Cannot set background of undefined. Canvas is undefined.' + ); + } + } + + /** + * @memberof Game + * @description Switches the current scene by the key + * @param {string} key Key of the scene to switch from + * @param {string} key2 Key of the scene to switch to + * @emits EVENTS.GAME.SWITCH_SCENE + * @since 1.0.0-beta + */ + public switchScene(key: string, key2: string) { + const f = this.stack.scenes.find((_scene) => _scene.key === key); + const f2 = this.stack.scenes.find((_scene) => _scene.key === key2); + if (f) { + if (f2) { + f.setVisible(false); + f2.setVisible(true); + + // will be removed in v3.0.0 + // f2.onChange(); **REMOVED** + + f.onInactive(); + f2.onActive(); + + this.eventEmitter.emit(EVENTS.GAME.SWITCH_SCENE); + } else { + new Debug.Error( + `Cannot switch to scene with scene key "${key2}. Scene not found."` + ); + } + } else { + new Debug.Error( + `Cannot switch from scene from scene key "${key}. Scene not found."` + ); + } + } + + /** + * @memberof Game + * @description Sets a scene to visible. Keeps the current scene visible + * @param {string} key Key of the scene to show + * @emits EVENTS.GAME.SHOW_SCENE + * @since 1.0.0-beta + */ + public showScene(key: string) { + const f = this.stack.scenes.find((_scene) => _scene.key === key); + if (f) { + f.setVisible(true); + + f.onActive(); + + this.eventEmitter.emit(EVENTS.GAME.SHOW_SCENE); + } else { + new Debug.Error( + `Cannot switch to scene with key "${key}. Scene not found."` + ); + } + } + + /** + * @memberof Game + * @description Locks the pointer on the canvas + * @emits EVENTS.GAME.LOCK_POINTER + * @since 1.0.0 + */ + public lockPointer() { + if (this.canvas) { + this.canvas.requestPointerLock(); + this.eventEmitter.emit(EVENTS.GAME.LOCK_POINTER); + } + } + + /** + * @memberof Game + * @description Unlocks the pointer from the canvas + * @emits EVENTS.GAME.UNLOCK_POINTER + * @since 1.0.0 + */ + public unlockPointer() { + if (document.pointerLockElement) { + document.exitPointerLock(); + this.eventEmitter.emit(EVENTS.GAME.UNLOCK_POINTER); + } + } } diff --git a/src/core/gameobjects/circle.ts b/src/core/gameobjects/circle.ts index c62465b3..a8daf792 100644 --- a/src/core/gameobjects/circle.ts +++ b/src/core/gameobjects/circle.ts @@ -3,6 +3,7 @@ import Debug from '../debug/debug'; import GameObject from './gameObject'; import Texture from '../texture/texture'; import Scene from '../scene'; +import Color from '../renderer/models/color'; /** * @class Circle @@ -11,55 +12,45 @@ import Scene from '../scene'; * @since 1.0.0-beta */ export default class Circle extends GameObject<'color'> { - /** - * @constructor Circle - * @param {number} x X position - * @param {number} y Y position - * @param {number} r Radius of Circle - * @param {string} fillColor Fill Color of Circle - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - x: number, - y: number, - r: number, - fillColor: string, - game: Game, - scene: Scene - ) { - super( - 'circle', - x, - y, - 0, - 0, - r, - Texture.fromColor(fillColor, r, r), - game, - scene - ); - } + /** + * @constructor Circle + * @param {number} x X position + * @param {number} y Y position + * @param {number} r Radius of Circle + * @param {Color} color Color of Circle + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + x: number, + y: number, + r: number, + color: Color, + game: Game, + scene: Scene + ) { + super('circle', x, y, 0, 0, r, Texture.fromColor(color, r, r), game, scene); + } - /** - * @description Draws the circle. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - this.game.renderer.drawCircle( - this.position.x, - this.position.y, - this.r, - this.texture.texture - ); - } else { - new Debug.Error( - 'CanvasRenderingContext2D is undefined. Canvas is undefined.' - ); - } - } + /** + * @description Draws the circle. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + this.game.renderer.drawCircle( + this.position.x, + this.position.y, + this.r, + this.texture.texture + ); + } else { + new Debug.Error( + 'CanvasRenderingContext2D is undefined. Canvas is undefined.' + ); + } + } } diff --git a/src/core/gameobjects/gameObject.ts b/src/core/gameobjects/gameObject.ts index 858631b9..4b86a7cc 100644 --- a/src/core/gameobjects/gameObject.ts +++ b/src/core/gameobjects/gameObject.ts @@ -7,6 +7,7 @@ import Texture from '../texture/texture'; import Scene from '../scene'; import PhysicsBody from '../physics/physicsBody'; import uniqueID from '../../utils/uniqueID'; +import Color from '../renderer/models/color'; /** * @class GameObject @@ -15,135 +16,135 @@ import uniqueID from '../../utils/uniqueID'; * @since 1.0.0-beta */ export default class GameObject - extends PhysicsBody - implements Duck.Types.Renderable + extends PhysicsBody + implements Duck.Types.Renderable { - /** - * @memberof GameObject - * @description The texture of the GameObject - * @type Texture - * @since 1.0.0-beta - */ - public texture: Texture; + /** + * @memberof GameObject + * @description The texture of the GameObject + * @type Texture + * @since 1.0.0-beta + */ + public texture: Texture; - /** - * @memberof GameObject - * @description Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property) - * @type boolean - * @since 2.0.0 - */ - public visible: boolean; + /** + * @memberof GameObject + * @description Determines if a GameObject should be rendered or not (note: Camera.cull and autoCull overwrite this property) + * @type boolean + * @since 2.0.0 + */ + public visible: boolean; - /** - * @memberof GameObject - * @description Determines the depth or zIndex of a GameObject - * @type number - * @since 2.0.0 - */ - public zIndex: number; + /** + * @memberof GameObject + * @description Determines the depth or zIndex of a GameObject + * @type number + * @since 2.0.0 + */ + public zIndex: number; - /** - * @memberof GameObject - * @description Determines if the GameObject should be visible by the current scene's current camera - * @type boolean - * @since 2.1.0 - */ - public culled: boolean; + /** + * @memberof GameObject + * @description Determines if the GameObject should be visible by the current scene's current camera + * @type boolean + * @since 2.1.0 + */ + public culled: boolean; - // methods + // methods - /** - * @constructor - * @description Creates a GameObject instance. - * @param {Duck.Types.Collider.ShapeString} shape Shape of the gameobject - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width - * @param {number} h Height - * @param {number} r Radius - * @param {string} fillColor Fill color or Texture instance - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - shape: Duck.Types.Collider.ShapeString, - x: number, - y: number, - w: number, - h: number, - r: number, - texture: Texture, - game: Game, - scene: Scene - ) { - const id = uniqueID(); + /** + * @constructor + * @description Creates a GameObject instance. + * @param {Duck.Types.Collider.ShapeString} shape Shape of the gameobject + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width + * @param {number} h Height + * @param {number} r Radius + * @param {Texture} texture Texture instance + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + shape: Duck.Types.Collider.ShapeString, + x: number, + y: number, + w: number, + h: number, + r: number, + texture: Texture, + game: Game, + scene: Scene + ) { + const id = uniqueID(); - super(shape, id, x, y, w, h, r, game, scene); + super(shape, id, x, y, w, h, r, game, scene); - this.texture = texture; + this.texture = texture; - this.visible = true; - this.zIndex = Duck.Layers.Rendering.zIndex.gameobject; - this.culled = true; + this.visible = true; + this.zIndex = Duck.Layers.Rendering.zIndex.gameobject; + this.culled = true; - // fix blend mode due to StaticLight setting blend mode to lighten - if (this.game.renderer.ctx) { - this.game.renderer.setBlendMode('source-over'); - } - } + // fix blend mode due to StaticLight setting blend mode to lighten + if (this.game.renderer.ctx) { + this.game.renderer.setBlendMode('source-over'); + } + } - /** - * @memberof GameObject - * @description Draws the gameobject. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - * @since 1.0.0-beta - */ - public _draw() {} + /** + * @memberof GameObject + * @description Draws the gameobject. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + * @since 1.0.0-beta + */ + public _draw() {} - /** - * @memberof GameObject - * @description Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility - * - * **Note: this calls Game.renderer.pipeline.pool to immediately update the visibility** - * - * @param {boolean} visible What to set the visible property to - * @since 2.1.0 - */ - public setVisible(visible: boolean) { - this.visible = visible; - this.game.renderer.pipeline.pool(); - } + /** + * @memberof GameObject + * @description Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility + * + * **Note: this calls Game.renderer.pipeline.pool to immediately update the visibility** + * + * @param {boolean} visible What to set the visible property to + * @since 2.1.0 + */ + public setVisible(visible: boolean) { + this.visible = visible; + this.game.renderer.pipeline.pool(); + } - /** - * @memberof GameObject - * @description Sets the scale of the GameObject - * @param {Duck.Types.Misc.Scale|number} scale Scale of the gameobject, can be a number to change the radius - * @since 1.0.0-beta - */ - public setScale(scale: Duck.Types.Misc.Scale | number) { - if (typeof scale !== 'number') { - if (scale.width) { - this.w = scale.width; - } + /** + * @memberof GameObject + * @description Sets the scale of the GameObject + * @param {Duck.Types.Misc.Scale|number} scale Scale of the gameobject, can be a number to change the radius + * @since 1.0.0-beta + */ + public setScale(scale: Duck.Types.Misc.Scale | number) { + if (typeof scale !== 'number') { + if (scale.width) { + this.w = scale.width; + } - if (scale.height) { - this.h = scale.height; - } - } else { - this.r = scale; - } - } + if (scale.height) { + this.h = scale.height; + } + } else { + this.r = scale; + } + } - /** - * @memberof GameObject - * @description Sets the fill color of the GameObject - * @param {string} fillColor Fill color - * @since 1.0.0-beta - */ - public setFillColor(fillColor: string) { - (this.texture.texture as string) = fillColor; - } + /** + * @memberof GameObject + * @description Sets the fill color of the GameObject + * @param {string} fillColor Fill color + * @since 1.0.0-beta + */ + public setFillColor(fillColor: string) { + (this.texture.texture as unknown as Color).value = fillColor; + } } diff --git a/src/core/gameobjects/misc/canvasModulate.ts b/src/core/gameobjects/misc/canvasModulate.ts index 03b91157..27b38015 100644 --- a/src/core/gameobjects/misc/canvasModulate.ts +++ b/src/core/gameobjects/misc/canvasModulate.ts @@ -4,6 +4,7 @@ import Game from '../../game'; import Texture from '../../texture/texture'; import Scene from '../../scene'; import GameObject from '../gameObject'; +import Color from '../../renderer/models/color'; /** * @class CanvasModulate @@ -13,60 +14,50 @@ import GameObject from '../gameObject'; * @since 2.0.0 */ export default class CanvasModulate extends GameObject<'color'> { - /** - * @constructor CanvasModulate - * @description Creates a CanvasModulate instance. - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width - * @param {number} h Height - * @param {string} fillColor Color to fill the CanvasModulate with - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - */ - constructor( - x: number, - y: number, - w: number, - h: number, - fillColor: string, - game: Game, - scene: Scene - ) { - super( - 'rect', - x, - y, - w, - h, - 0, - Texture.fromColor(fillColor, w, h), - game, - scene - ); + /** + * @constructor CanvasModulate + * @description Creates a CanvasModulate instance. + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width + * @param {number} h Height + * @param {Color} color Color to fill the CanvasModulate with + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + */ + constructor( + x: number, + y: number, + w: number, + h: number, + color: Color, + game: Game, + scene: Scene + ) { + super('rect', x, y, w, h, 0, Texture.fromColor(color, w, h), game, scene); - this.zIndex = Duck.Layers.Rendering.zIndex.canvasModulate; - } + this.zIndex = Duck.Layers.Rendering.zIndex.canvasModulate; + } - /** - * @description Draws the CanvasModulate gameobject. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - this.game.renderer.drawRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture.texture - ); - } else { - new Debug.Error( - 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' - ); - } - } + /** + * @description Draws the CanvasModulate gameobject. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + this.game.renderer.drawRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture.texture + ); + } else { + new Debug.Error( + 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' + ); + } + } } diff --git a/src/core/gameobjects/particles/components/containedParticleComponent.ts b/src/core/gameobjects/particles/components/containedParticleComponent.ts new file mode 100644 index 00000000..49946f36 --- /dev/null +++ b/src/core/gameobjects/particles/components/containedParticleComponent.ts @@ -0,0 +1,58 @@ +import { Duck } from '../../../..'; +import Game from '../../../game'; +import Scene from '../../../scene'; + +import ParticleEmitter from '../particleEmitter'; +import ParticleComponent from '../particleComponent'; + +/** + * @class ContainedParticleComponent + * @classdesc ContainedParticleComponent class. + * @description The ContainedParticleComponent Class. Makes Particles emitted from the passed ParticleEmitter bounce off of passed bounds + * @since 3.0.0 + */ +export default class ContainedParticleComponent extends ParticleComponent { + /** + * @memberof ContainedParticleComponent + * @description Bounds that all Particles emitted from the passed ParticleEmitter will be affected by + * @type Duck.Types.Math.BoundsLike + * @since 3.0.0 + */ + public readonly bounds: Duck.Types.Math.BoundsLike; + + /** + * @memberof ContainedParticleComponent + * @description How much energy is lost when bouncing, a number between 0-1 to loose energy, + * 1-any to increase energy, 1 = none, must be a positive number + * @type number + * @since 3.0.0 + */ + public readonly restitution: number; + + /** + * @constructor ContainedParticleComponent + * @description Creates a ContainedParticleComponent instance + * @param {Duck.Types.Math.BoundsLike} bounds Bounds that all Particles emitted from the passed ParticleEmitter will be affected by + * @param {number} restitution How much energy is lost when bouncing, a number between 0-1 to loose energy, 1-any to increase energy, 1 = none, must be a positive number + * @param {Particle} particleEmitter The ParticleEmitter that will be used to affect its emitted Particles + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 3.0.0 + */ + constructor( + bounds: Duck.Types.Math.BoundsLike, + restitution: number, + particleEmitter: ParticleEmitter, + game: Game, + scene: Scene + ) { + super(particleEmitter, game, scene); + + this.bounds = bounds; + this.restitution = restitution; + } + + public update() { + // implement + } +} diff --git a/src/core/gameobjects/particles/components/gravityParticleComponent.ts b/src/core/gameobjects/particles/components/gravityParticleComponent.ts new file mode 100644 index 00000000..d15934d7 --- /dev/null +++ b/src/core/gameobjects/particles/components/gravityParticleComponent.ts @@ -0,0 +1,48 @@ +import Game from '../../../game'; +import Scene from '../../../scene'; +import Vector2 from '../../../math/vector2'; +import ParticleComponent from '../particleComponent'; +import ParticleEmitter from '../particleEmitter'; + +/** + * @class GravityParticleComponent + * @classdesc GravityParticleComponent class. + * @description The GravityParticleComponent Class. Makes Particles emitted from the passed ParticleEmitter be affected by gravity + * @since 3.0.0 + */ +export default class GravityParticleComponent extends ParticleComponent { + /** + * @memberof GravityParticleComponent + * @description Gravity that all Particles emitted from the passed ParticleEmitter will be affected by + * @type Vector2 + * @since 3.0.0 + */ + public readonly gravity: Vector2; + + /** + * @constructor GravityParticleComponent + * @description Creates a GravityParticleComponent instance + * @param {number} gravity The gravity force in pixels that will be applied to the past ParticleEmitter's emitted Particles + * @param {Particle} particleEmitter The ParticleEmitter that will be used to affect its emitted Particles + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 3.0.0 + */ + constructor( + gravity: number, + particleEmitter: ParticleEmitter, + game: Game, + scene: Scene + ) { + super(particleEmitter, game, scene); + + this.gravity = new Vector2(0, -Math.abs(gravity)); + } + + public update() { + for (const particle of this.particleEmitter.list) { + // accel particle to gravity vel + particle.accelerateVelocity(this.gravity, this.gravity.y); + } + } +} diff --git a/src/core/gameobjects/particles/particle.ts b/src/core/gameobjects/particles/particle.ts index c738ed0e..3f361ed8 100644 --- a/src/core/gameobjects/particles/particle.ts +++ b/src/core/gameobjects/particles/particle.ts @@ -6,6 +6,7 @@ import clamp from '../../math/clamp'; import Vector2 from '../../math/vector2'; import Texture from '../../texture/texture'; import Scene from '../../scene'; +import Color from '../../renderer/models/color'; /** * @class Particle @@ -15,207 +16,207 @@ import Scene from '../../scene'; * @since 1.0.0 */ export default class Particle extends GameObject<'either'> { - /** - * @memberof Particle - * @description The float velocity of the Particle - * @type Vector2 - * @since 2.0.0 - */ - public floatVelocity: Vector2; - - /** - * @memberof Particle - * @description The original fill color or img path of the Particle - * @type Vector2 - * @since 2.0.0 - */ - public originalFillColorOrIMGPath: string; - - /** - * @memberof Particle - * @description The age of the particle in seconds - * @property - * @since 1.0.0 - */ - public age: number; - - /** - * @constructor Particle - * @description Creates a Particle instance - * @param {Duck.Types.Collider.ShapeString} shape Shape of the particle - * @param {number} w Width of the particle - * @param {number} h Height of the particle - * @param {number} r Radius of the particle - * @param {string} fillColorOrIMGPath Color to fill the particle with, can be an image path - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - shape: Duck.Types.Collider.ShapeString, - w: number, - h: number, - r: number, - fillColorOrIMGPath: string, - game: Game, - scene: Scene - ) { - super( - shape, - 0, - 0, - w, - h, - r, - Texture.fromEither(fillColorOrIMGPath, w, h), - game, - scene - ); - - this.originalFillColorOrIMGPath = fillColorOrIMGPath; - - this.w = w; - this.h = h; - this.r = r; - - this.floatVelocity = Vector2.ZERO; - - this.zIndex = Duck.Layers.Rendering.zIndex.particle; - this.visible = false; - - // age - - this.age = 0; - - setInterval(() => { - this.age++; - }, 1000); - } - - /** - * @memberof Particle - * @description Draws the particle. Do not call manually, called automatically in scene loop - * @since 1.0.0-beta - */ - public _draw() { - if (this.game.renderer.ctx) { - switch (this.shape) { - case 'circle': - this.game.renderer.drawCircle( - this.position.x, - this.position.y, - this.r, - this.texture.texture as string - ); - break; - - case 'rect': - this.game.renderer.drawRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture.texture as string - ); - break; - - case 'roundrect': - this.game.renderer.drawRoundRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.r, - this.texture.texture as string - ); - break; - - case 'sprite': - this.game.renderer.drawSprite( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture.texture as unknown as Texture<'image'> - ); - - break; - - default: - if (this.game.config.debug) { - new Debug.Warn( - 'Cannot draw Particle. Particle Shape is not a "circle", "rect", "roundrect", or "sprite".' - ); - } - break; - } - } else { - new Debug.Error( - 'Cannot draw particle. CanvasRenderingContext2D is undefined.' - ); - } - } - - /** - * @memberof Particle - * - * *Modified from gameobject* - * - * @description Updates the gameobject's position by the velocity. Sets velocity to 0 on every tick. - * DO NOT CALL MANUALLY, CALLED IN SCENE.__tick(deltaTime) - * @since 2.0.0 - */ - public _update() { - this.position.x += this.velocity.x * this.game.smoothDeltaTime; - this.position.y += this.velocity.y * this.game.smoothDeltaTime; - - // float - this.position.x += this.floatVelocity.x * this.game.smoothDeltaTime; - this.position.y += this.floatVelocity.y * this.game.smoothDeltaTime; - - // clamp to bounds - this.position.x = clamp(this.position.x, this.bounds.x, this.bounds.w); - this.position.y = clamp(this.position.y, this.bounds.y, this.bounds.h); - - // set to none - this.velocity.x = 0; - this.velocity.y = 0; - - // don't round pixels for particles - - // apply gravity - if (this.game.config.physics?.gravity) { - if ( - this.options.type === 'KinematicBody' || - this.options.type === 'RigidBody' - ) { - this.applyGravity( - Vector2.fromVector2Like(this.game.config.physics.gravity) - ); - } - } - - // update attached children position - this.attachedChildren.forEach((object) => { - const pos = this.position.clone(); - pos.subtract(object.attachOffset); - - object.position = pos; - if (object.hitbox) { - object.hitbox.position = object.position - .clone() - .add(object.hitbox.offset); - } - }); - } - - /** - * @memberof Particle - * @description Sets the particle's image src. Only works if particle's shape was initially 'sprite' - * @param {string} imagePath Image path - * @since 1.0.0-beta - */ - public setImagePath(imagePath: string) { - this.texture.setImagePath(imagePath); - } + /** + * @memberof Particle + * @description The float velocity of the Particle + * @type Vector2 + * @since 2.0.0 + */ + public floatVelocity: Vector2; + + /** + * @memberof Particle + * @description The original fill color or img path of the Particle + * @type string | Color + * @since 2.0.0 + */ + public originalFillColorOrIMGPath: string | Color; + + /** + * @memberof Particle + * @description The age of the particle in seconds + * @type number + * @since 1.0.0 + */ + public age: number; + + /** + * @constructor Particle + * @description Creates a Particle instance + * @param {Duck.Types.Collider.ShapeString} shape Shape of the particle + * @param {number} w Width of the particle + * @param {number} h Height of the particle + * @param {number} r Radius of the particle + * @param {string | Color} fillColorOrIMGPath String path or Color to fill the particle with, can be an image path + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + shape: Duck.Types.Collider.ShapeString, + w: number, + h: number, + r: number, + fillColorOrIMGPath: string | Color, + game: Game, + scene: Scene + ) { + super( + shape, + 0, + 0, + w, + h, + r, + Texture.fromEither(fillColorOrIMGPath, w, h), + game, + scene + ); + + this.originalFillColorOrIMGPath = fillColorOrIMGPath; + + this.w = w; + this.h = h; + this.r = r; + + this.floatVelocity = Vector2.ZERO; + + this.zIndex = Duck.Layers.Rendering.zIndex.particle; + this.visible = false; + + // age + + this.age = 0; + + setInterval(() => { + this.age++; + }, 1000); + } + + /** + * @memberof Particle + * @description Draws the particle. Do not call manually, called automatically in scene loop + * @since 1.0.0-beta + */ + public _draw() { + if (this.game.renderer.ctx) { + switch (this.shape) { + case 'circle': + this.game.renderer.drawCircle( + this.position.x, + this.position.y, + this.r, + this.texture.texture as unknown as Color + ); + break; + + case 'rect': + this.game.renderer.drawRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture.texture as unknown as Color + ); + break; + + case 'roundrect': + this.game.renderer.drawRoundRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.r, + this.texture.texture as unknown as Color + ); + break; + + case 'sprite': + this.game.renderer.drawSprite( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture.texture as unknown as Texture<'image'> + ); + + break; + + default: + if (this.game.config.debug) { + new Debug.Warn( + 'Cannot draw Particle. Particle Shape is not a "circle", "rect", "roundrect", or "sprite".' + ); + } + break; + } + } else { + new Debug.Error( + 'Cannot draw particle. CanvasRenderingContext2D is undefined.' + ); + } + } + + /** + * @memberof Particle + * + * *Modified from gameobject* + * + * @description Updates the gameobject's position by the velocity. Sets velocity to 0 on every tick. + * DO NOT CALL MANUALLY, CALLED IN SCENE.__tick(deltaTime) + * @since 2.0.0 + */ + public _update() { + this.position.x += this.velocity.x * this.game.smoothDeltaTime; + this.position.y += this.velocity.y * this.game.smoothDeltaTime; + + // float + this.position.x += this.floatVelocity.x * this.game.smoothDeltaTime; + this.position.y += this.floatVelocity.y * this.game.smoothDeltaTime; + + // clamp to bounds + this.position.x = clamp(this.position.x, this.bounds.x, this.bounds.w); + this.position.y = clamp(this.position.y, this.bounds.y, this.bounds.h); + + // set to none + this.velocity.x = 0; + this.velocity.y = 0; + + // don't round pixels for particles + + // apply gravity + if (this.game.config.physics?.gravity) { + if ( + this.options.type === 'KinematicBody' || + this.options.type === 'RigidBody' + ) { + this.applyGravity( + Vector2.fromVector2Like(this.game.config.physics.gravity) + ); + } + } + + // update attached children position + this.attachedChildren.forEach((object) => { + const pos = this.position.clone(); + pos.subtract(object.attachOffset); + + object.position = pos; + if (object.hitbox) { + object.hitbox.position = object.position + .clone() + .add(object.hitbox.offset); + } + }); + } + + /** + * @memberof Particle + * @description Sets the particle's image src. Only works if particle's shape was initially 'sprite' + * @param {string} imagePath Image path + * @since 1.0.0-beta + */ + public setImagePath(imagePath: string) { + this.texture.setImagePath(imagePath); + } } diff --git a/src/core/gameobjects/particles/particleComponent.ts b/src/core/gameobjects/particles/particleComponent.ts new file mode 100644 index 00000000..00f90429 --- /dev/null +++ b/src/core/gameobjects/particles/particleComponent.ts @@ -0,0 +1,57 @@ +import Game from '../../game'; +import Scene from '../../scene'; +import ParticleEmitter from './particleEmitter'; + +/** + * @class ParticleComponent + * @classdesc Abstract ParticleComponent class. + * @description The ParticleComponent Class. All particle components extend this class + * @abstract + * @since 3.0.0 + */ +export default abstract class ParticleComponent { + /** + * @memberof ParticleComponent + * @description Game instance + * @type Game + * @since 3.0.0 + */ + public game: Game; + + /** + * @memberof ParticleComponent + * @description Scene instance + * @type Scene + * @since 3.0.0 + */ + public scene: Scene; + + /** + * @memberof ParticleComponent + * @description The Particle instance that this is owned by + * @type Particle + * @since 3.0.0 + */ + public particleEmitter: ParticleEmitter; + + /** + * @constructor ParticleComponent + * @description Creates a ParticleComponent instance + * @param {Particle} particleEmitter The ParticleEmitter that will be used to affect its emitted Particles + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 3.0.0 + */ + constructor(particleEmitter: ParticleEmitter, game: Game, scene: Scene) { + this.particleEmitter = particleEmitter; + this.game = game; + this.scene = scene; + } + + /** + * @memberof ParticleComponent + * @description Updates the Particles in a ParticleEmitter + * @since 3.0.0 + */ + public abstract update(): void; +} diff --git a/src/core/gameobjects/particles/particleEmitter.ts b/src/core/gameobjects/particles/particleEmitter.ts index 6e8d28b6..eecd82e2 100644 --- a/src/core/gameobjects/particles/particleEmitter.ts +++ b/src/core/gameobjects/particles/particleEmitter.ts @@ -12,476 +12,476 @@ import Scene from '../../scene'; * @since 1.0.0-beta */ export default class ParticleEmitter { - /** - * @memberof ParticleEmitter - * @description A unique identifier for the ParticleEmitter - * @type string - * @since 1.0.0-beta - */ - public readonly id: string; - protected particle: Particle; - - /** - * @memberof ParticleEmitter - * @description A range of numbers where particle x pos will be - * @type Duck.Types.ParticleEmitter.Range - * @since 1.0.0-beta - */ - public rangeX: Duck.Types.ParticleEmitter.Range; - - /** - * @memberof ParticleEmitter - * @description A range of numbers where particle y pos will be - * @type Duck.Types.ParticleEmitter.Range - * @since 1.0.0-beta - */ - public rangeY: Duck.Types.ParticleEmitter.Range; - - /** - * @memberof ParticleEmitter - * @description The starting amount of particle - * @type number - * @since 1.0.0-beta - */ - public readonly amount: number; - - /** - * @memberof ParticleEmitter - * @description The list of current particles - * @type Particles[] - * @since 1.0.0-beta - */ - public list: Particle[]; - - /** - * @memberof ParticleEmitter - * @description Game instance - * @type Game - * @since 1.0.0-beta - */ - public game: Game; - - /** - * @memberof ParticleEmitter - * @description Scene instance - * @type Scene - * @since 1.0.0-beta - */ - public scene: Scene; - - /** - * @memberof ParticleEmitter - * @description Determines if the ParticleEmitter is emitting or not - * @type boolean - * @since 1.0.0-beta - */ - public emitting: boolean; - - /** - * @memberof ParticleEmitter - * @description Determines if the ParticleEmitter is enabled or not - * @type boolean - * @since 2.0.0 - */ - public enabled: boolean; - - protected floatRangeX: Duck.Types.ParticleEmitter.Range; - protected floatRangeY: Duck.Types.ParticleEmitter.Range; - - /** - * @constructor ParticleEmitter - * @description Creates ParticleEmitter instance - * @param {Particle} particle Base particle that is cloned and modified from - * @param {Duck.Types.ParticleEmitter.Range} rangeX Where the new emitted particles x position is. A range of 2 values - * @param {Duck.Types.ParticleEmitter.Range} rangeY Where the new emitted particles y position is. A range of 2 values - * @param {number} amount Amount of starting particles - * @param {boolean} [autoCreate=true] Determines if particles are created on init, populates the list, optional -> defaults: true - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - particle: Particle, - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - amount: number, - game: Game, - scene: Scene, - autoCreate = true - ) { - this.id = particle.id; - this.particle = particle; - this.rangeX = rangeX; - this.rangeY = rangeY; - this.amount = amount; - this.list = []; - this.game = game; - this.scene = scene; - - this.emitting = false; - this.enabled = false; - - this.floatRangeX = [0, 0]; - this.floatRangeY = [0, 0]; - - // create particles - if (autoCreate) { - this.create(); - } - } - - /** - * @memberof ParticleEmitter - * @description Creates an amount of particles - * @since 2.1.0 - */ - public create() { - for (let i = 0; i < this.amount; i++) { - this.createOne(); - } - } - - /** - * @memberof ParticleEmitter - * @description Creates one particle - * @since 2.1.0 - */ - public createOne() { - const obj = new Particle( - this.particle.shape, - this.particle.w, - this.particle.h, - this.particle.r, - this.particle.originalFillColorOrIMGPath, - this.game, - this.scene - ); - - obj.visible = true; - obj.enabled = true; - - obj.position.x = randomInt(this.rangeX[0], this.rangeX[1]); - obj.position.y = randomInt(this.rangeY[0], this.rangeY[1]); - - obj.floatVelocity.x = randomFloat( - this.floatRangeX[0], - this.floatRangeX[1], - 1 - ); - obj.floatVelocity.y = randomFloat( - this.floatRangeY[0], - this.floatRangeY[1], - 1 - ); - - this.list.push(obj); - - // add to display list - this.scene.displayList.add(obj); - // no need to pool the renderer pipeline as displayList.add pools the renderer pipeline - - // add to physics list - this.scene.physicsList.add(obj); - } - - /** - * @memberof ParticleEmitter - * @description Starts emitting particles - * @since 1.0.0-beta - */ - public emit() { - this.emitting = true; - this.enabled = true; - } - - /** - * @memberof ParticleEmitter - * @description Stops emitting particles - * @since 1.0.0-beta - */ - public stopEmit() { - this.emitting = false; - this.enabled = false; - } - - /** - * @memberof ParticleEmitter - * @description Starts emitting particles for a certain duration - * @param {number} ms Duration in milliseconds - * @since 1.0.0-beta - */ - public emitFor(ms: number) { - this.emitting = true; - setTimeout(() => { - this.emitting = false; - }, ms); - } - - /** - * @memberof ParticleEmitter - * @description Sets the new or old particles' position range - * @param {Duck.Types.ParticleEmitter.Range} rangeX Where the new emitted particles x position is. A range of 2 values - * @param {Duck.Types.ParticleEmitter.Range} rangeY Where the new emitted particles y position is. A range of 2 values - * @since 1.0.0-beta - */ - public setRange( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range - ) { - this.rangeX = rangeX; - this.rangeY = rangeY; - - this.list.forEach((obj) => { - obj.position.x = randomInt(this.rangeX[0], this.rangeX[1]); - obj.position.y = randomInt(this.rangeY[0], this.rangeY[1]); - - obj.floatVelocity.x = randomFloat( - this.floatRangeX[0], - this.floatRangeX[1], - 1 - ); - obj.floatVelocity.y = randomFloat( - this.floatRangeY[0], - this.floatRangeY[1], - 1 - ); - }); - } - - /** - * @memberof ParticleEmitter - * @description Spawns new particles after the initial particles - * @param {number} intervalMS How often a new particle gets spawned - * @param {number} [limitTo] A limit to how many particles can be rendered at once, optional - * @since 1.0.0-beta - */ - public keepEmitting(intervalMS: number, limitTo?: number) { - setInterval(() => { - if (limitTo) { - if (this.list.length < limitTo) { - this.createOne(); - } - } else { - this.createOne(); - } - }, intervalMS); - } - - /** - * @memberof ParticleEmitter - * @description Pops particles from the list if too many particles exist - * @since 1.0.0 - */ - public offloadMaxAmount(limit: number) { - if (this.list.length >= limit) { - this.list.pop(); - } - - // remove from display list - ( - this.scene.displayList.list.filter( - (renderableObject) => renderableObject instanceof Particle - ) as Particle[] - ).pop(); - - // remove from physics list - ( - this.scene.displayList.list.filter( - (obj) => obj instanceof Particle - ) as Particle[] - ).pop(); - } - - /** - * @memberof ParticleEmitter - * @description Offloads particles based on position - * @param {number} bounds The Bounds of the particles, a BoundsLike object that causes a particle to be offloaded - * @since 2.0.0 - */ - public offloadBounds(bounds: Duck.Types.Math.BoundsLike) { - this.list.forEach((particle, index) => { - if (particle.position.x < bounds.x) { - this.list.splice(index, 1); - } - - if (particle.position.y < bounds.y) { - this.list.splice(index, 1); - } - - if (particle.position.x > bounds.w) { - this.list.splice(index, 1); - } - - if (particle.position.y > bounds.w) { - this.list.splice(index, 1); - } - }); - - // remove from displayList - this.scene.displayList.each((renderableObject, index) => { - if (renderableObject instanceof Particle) { - if (renderableObject.position.x < bounds.x) { - this.list.splice(index, 1); - } - - if (renderableObject.position.y < bounds.y) { - this.list.splice(index, 1); - } - - if (renderableObject.position.x > bounds.w) { - this.list.splice(index, 1); - } - - if (renderableObject.position.y > bounds.w) { - this.list.splice(index, 1); - } - } - }); - - // remove from physicsList - this.scene.physicsList.each((obj, index) => { - if (obj instanceof Particle) { - if (obj instanceof Particle) { - if (obj.position.x < bounds.x) { - this.list.splice(index, 1); - } - - if (obj.position.y < bounds.y) { - this.list.splice(index, 1); - } - - if (obj.position.x > bounds.w) { - this.list.splice(index, 1); - } - - if (obj.position.y > bounds.w) { - this.list.splice(index, 1); - } - } - } - }); - } - - /** - * @memberof ParticleEmitter - * @description Offloads particles based on how many seconds they existed for - * @param {number} ageInSeconds Max amount of seconds a particle existed for - * @since 1.0.0 - */ - public offloadMaxAge(ageInSeconds: number) { - this.list.forEach((particle, index) => { - if (particle.age >= ageInSeconds) { - this.list.splice(index, 1); - } - }); - - // remove from displayList - this.scene.displayList.each((renderableObject, index) => { - if (renderableObject instanceof Particle) { - if (renderableObject.age >= ageInSeconds) { - this.scene.displayList.splice(index, 1); - } - } - }); - - // remove from physicsList - this.scene.physicsList.each((obj, index) => { - if (obj instanceof Particle) { - if (obj.age >= ageInSeconds) { - this.scene.physicsList.splice(index, 1); - } - } - }); - } - - /** - * @memberof ParticleEmitter - * @description Sets the velocity of all particles - * @param {'x'|'y'} axis 'x' or 'y' axis to change the velocity of all particles - * @param {number} v Value to set the velocity of all particles - * @since 1.0.0-beta - */ - public setVelocity(axis: 'x' | 'y', v: number) { - this.list.forEach((particle) => { - particle.setVelocity(axis, v); - }); - } - - /** - * @memberof ParticleEmitter - * @description Wobbles the particle on a random direction and axis - * @param {number} v Value to set the wobble velocity to - * @since 1.0.0-beta - */ - public wobble(v: number) { - const r = randomInt(1, 4); - - if (r === 1) { - this.list.forEach((particle) => { - particle.setVelocity('x', v); - }); - } - - if (r === 2) { - this.list.forEach((particle) => { - particle.setVelocity('y', v); - }); - } - - if (r === 3) { - this.list.forEach((particle) => { - particle.setVelocity('x', -v); - }); - } - - if (r === 4) { - this.list.forEach((particle) => { - particle.setVelocity('y', -v); - }); - } - } - - /** - * @memberof ParticleEmitter - * @description Sets the floatVelocity of all particles in between a range - * @param {Duck.Types.ParticleEmitter.Range} rangeVX A range of 2 values for the floatVelocity.x, randomly chosen between that range - * @param {Duck.Types.ParticleEmitter.Range} rangeVY A range of 2 values for the floatVelocity.y, randomly chosen between that range - * @since 1.0.0-beta - */ - public float( - rangeVX: Duck.Types.ParticleEmitter.Range, - rangeVY: Duck.Types.ParticleEmitter.Range - ) { - this.floatRangeX = rangeVX; - this.floatRangeY = rangeVY; - - this.list.forEach((particle) => { - particle.floatVelocity.x = randomInt(rangeVX[0], rangeVX[1]); - particle.floatVelocity.y = randomInt(rangeVY[0], rangeVY[1]); - }); - } - - /** - * @memberof ParticleEmitter - * @description Sets the fillColor of all particles - * @param {string} fillColor Color - * @since 1.0.0-beta - */ - public setFillColor(fillColor: string) { - this.list.forEach((particle) => { - particle.setFillColor(fillColor); - }); - } - - /** - * @memberof ParticleEmitter - * @description Sets the imagePath of all particles - * @param {string} imagePath Image path - * @since 1.0.0 - */ - public setImagePath(imagePath: string) { - this.list.forEach((particle) => { - particle.setImagePath(imagePath); - }); - } + /** + * @memberof ParticleEmitter + * @description A unique identifier for the ParticleEmitter + * @type string + * @since 1.0.0-beta + */ + public readonly id: string; + protected particle: Particle; + + /** + * @memberof ParticleEmitter + * @description A range of numbers where particle x pos will be + * @type Duck.Types.ParticleEmitter.Range + * @since 1.0.0-beta + */ + public rangeX: Duck.Types.ParticleEmitter.Range; + + /** + * @memberof ParticleEmitter + * @description A range of numbers where particle y pos will be + * @type Duck.Types.ParticleEmitter.Range + * @since 1.0.0-beta + */ + public rangeY: Duck.Types.ParticleEmitter.Range; + + /** + * @memberof ParticleEmitter + * @description The starting amount of particle + * @type number + * @since 1.0.0-beta + */ + public readonly amount: number; + + /** + * @memberof ParticleEmitter + * @description The list of current particles + * @type Particles[] + * @since 1.0.0-beta + */ + public list: Particle[]; + + /** + * @memberof ParticleEmitter + * @description Game instance + * @type Game + * @since 1.0.0-beta + */ + public game: Game; + + /** + * @memberof ParticleEmitter + * @description Scene instance + * @type Scene + * @since 1.0.0-beta + */ + public scene: Scene; + + /** + * @memberof ParticleEmitter + * @description Determines if the ParticleEmitter is emitting or not + * @type boolean + * @since 1.0.0-beta + */ + public emitting: boolean; + + /** + * @memberof ParticleEmitter + * @description Determines if the ParticleEmitter is enabled or not + * @type boolean + * @since 2.0.0 + */ + public enabled: boolean; + + protected floatRangeX: Duck.Types.ParticleEmitter.Range; + protected floatRangeY: Duck.Types.ParticleEmitter.Range; + + /** + * @constructor ParticleEmitter + * @description Creates ParticleEmitter instance + * @param {Particle} particle Base particle that is cloned and modified from + * @param {Duck.Types.ParticleEmitter.Range} rangeX Where the new emitted particles x position is. A range of 2 values + * @param {Duck.Types.ParticleEmitter.Range} rangeY Where the new emitted particles y position is. A range of 2 values + * @param {number} amount Amount of starting particles + * @param {boolean} [autoCreate=true] Determines if particles are created on init, populates the list, optional -> defaults: true + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + particle: Particle, + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + amount: number, + game: Game, + scene: Scene, + autoCreate = true + ) { + this.id = particle.id; + this.particle = particle; + this.rangeX = rangeX; + this.rangeY = rangeY; + this.amount = amount; + this.list = []; + this.game = game; + this.scene = scene; + + this.emitting = false; + this.enabled = false; + + this.floatRangeX = [0, 0]; + this.floatRangeY = [0, 0]; + + // create particles + if (autoCreate) { + this.create(); + } + } + + /** + * @memberof ParticleEmitter + * @description Creates an amount of particles + * @since 2.1.0 + */ + public create() { + for (let i = 0; i < this.amount; i++) { + this.createOne(); + } + } + + /** + * @memberof ParticleEmitter + * @description Creates one particle + * @since 2.1.0 + */ + public createOne() { + const obj = new Particle( + this.particle.shape, + this.particle.w, + this.particle.h, + this.particle.r, + this.particle.originalFillColorOrIMGPath, + this.game, + this.scene + ); + + obj.visible = true; + obj.enabled = true; + + obj.position.x = randomInt(this.rangeX[0], this.rangeX[1]); + obj.position.y = randomInt(this.rangeY[0], this.rangeY[1]); + + obj.floatVelocity.x = randomFloat( + this.floatRangeX[0], + this.floatRangeX[1], + 1 + ); + obj.floatVelocity.y = randomFloat( + this.floatRangeY[0], + this.floatRangeY[1], + 1 + ); + + this.list.push(obj); + + // add to display list + this.scene.displayList.add(obj); + // no need to pool the renderer pipeline as displayList.add pools the renderer pipeline + + // add to physics list + this.scene.physicsList.add(obj); + } + + /** + * @memberof ParticleEmitter + * @description Starts emitting particles + * @since 1.0.0-beta + */ + public emit() { + this.emitting = true; + this.enabled = true; + } + + /** + * @memberof ParticleEmitter + * @description Stops emitting particles + * @since 1.0.0-beta + */ + public stopEmit() { + this.emitting = false; + this.enabled = false; + } + + /** + * @memberof ParticleEmitter + * @description Starts emitting particles for a certain duration + * @param {number} ms Duration in milliseconds + * @since 1.0.0-beta + */ + public emitFor(ms: number) { + this.emitting = true; + setTimeout(() => { + this.emitting = false; + }, ms); + } + + /** + * @memberof ParticleEmitter + * @description Sets the new or old particles' position range + * @param {Duck.Types.ParticleEmitter.Range} rangeX Where the new emitted particles x position is. A range of 2 values + * @param {Duck.Types.ParticleEmitter.Range} rangeY Where the new emitted particles y position is. A range of 2 values + * @since 1.0.0-beta + */ + public setRange( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range + ) { + this.rangeX = rangeX; + this.rangeY = rangeY; + + this.list.forEach((obj) => { + obj.position.x = randomInt(this.rangeX[0], this.rangeX[1]); + obj.position.y = randomInt(this.rangeY[0], this.rangeY[1]); + + obj.floatVelocity.x = randomFloat( + this.floatRangeX[0], + this.floatRangeX[1], + 1 + ); + obj.floatVelocity.y = randomFloat( + this.floatRangeY[0], + this.floatRangeY[1], + 1 + ); + }); + } + + /** + * @memberof ParticleEmitter + * @description Spawns new particles after the initial particles + * @param {number} intervalMS How often a new particle gets spawned + * @param {number} [limitTo] A limit to how many particles can be rendered at once, optional + * @since 1.0.0-beta + */ + public keepEmitting(intervalMS: number, limitTo?: number) { + setInterval(() => { + if (limitTo) { + if (this.list.length < limitTo) { + this.createOne(); + } + } else { + this.createOne(); + } + }, intervalMS); + } + + /** + * @memberof ParticleEmitter + * @description Pops particles from the list if too many particles exist + * @since 1.0.0 + */ + public offloadMaxAmount(limit: number) { + if (this.list.length >= limit) { + this.list.pop(); + } + + // remove from display list + ( + this.scene.displayList.list.filter( + (renderableObject) => renderableObject instanceof Particle + ) as Particle[] + ).pop(); + + // remove from physics list + ( + this.scene.displayList.list.filter( + (obj) => obj instanceof Particle + ) as Particle[] + ).pop(); + } + + /** + * @memberof ParticleEmitter + * @description Offloads particles based on position + * @param {number} bounds The Bounds of the particles, a BoundsLike object that causes a particle to be offloaded + * @since 2.0.0 + */ + public offloadBounds(bounds: Duck.Types.Math.BoundsLike) { + this.list.forEach((particle, index) => { + if (particle.position.x < bounds.x) { + this.list.splice(index, 1); + } + + if (particle.position.y < bounds.y) { + this.list.splice(index, 1); + } + + if (particle.position.x > bounds.w) { + this.list.splice(index, 1); + } + + if (particle.position.y > bounds.w) { + this.list.splice(index, 1); + } + }); + + // remove from displayList + this.scene.displayList.each((renderableObject, index) => { + if (renderableObject instanceof Particle) { + if (renderableObject.position.x < bounds.x) { + this.list.splice(index, 1); + } + + if (renderableObject.position.y < bounds.y) { + this.list.splice(index, 1); + } + + if (renderableObject.position.x > bounds.w) { + this.list.splice(index, 1); + } + + if (renderableObject.position.y > bounds.w) { + this.list.splice(index, 1); + } + } + }); + + // remove from physicsList + this.scene.physicsList.each((obj, index) => { + if (obj instanceof Particle) { + if (obj instanceof Particle) { + if (obj.position.x < bounds.x) { + this.list.splice(index, 1); + } + + if (obj.position.y < bounds.y) { + this.list.splice(index, 1); + } + + if (obj.position.x > bounds.w) { + this.list.splice(index, 1); + } + + if (obj.position.y > bounds.w) { + this.list.splice(index, 1); + } + } + } + }); + } + + /** + * @memberof ParticleEmitter + * @description Offloads particles based on how many seconds they existed for + * @param {number} ageInSeconds Max amount of seconds a particle existed for + * @since 1.0.0 + */ + public offloadMaxAge(ageInSeconds: number) { + this.list.forEach((particle, index) => { + if (particle.age >= ageInSeconds) { + this.list.splice(index, 1); + } + }); + + // remove from displayList + this.scene.displayList.each((renderableObject, index) => { + if (renderableObject instanceof Particle) { + if (renderableObject.age >= ageInSeconds) { + this.scene.displayList.splice(index, 1); + } + } + }); + + // remove from physicsList + this.scene.physicsList.each((obj, index) => { + if (obj instanceof Particle) { + if (obj.age >= ageInSeconds) { + this.scene.physicsList.splice(index, 1); + } + } + }); + } + + /** + * @memberof ParticleEmitter + * @description Sets the velocity of all particles + * @param {'x'|'y'} axis 'x' or 'y' axis to change the velocity of all particles + * @param {number} v Value to set the velocity of all particles + * @since 1.0.0-beta + */ + public setVelocity(axis: 'x' | 'y', v: number) { + this.list.forEach((particle) => { + particle.setVelocity(axis, v); + }); + } + + /** + * @memberof ParticleEmitter + * @description Wobbles the particle on a random direction and axis + * @param {number} v Value to set the wobble velocity to + * @since 1.0.0-beta + */ + public wobble(v: number) { + const r = randomInt(1, 4); + + if (r === 1) { + this.list.forEach((particle) => { + particle.setVelocity('x', v); + }); + } + + if (r === 2) { + this.list.forEach((particle) => { + particle.setVelocity('y', v); + }); + } + + if (r === 3) { + this.list.forEach((particle) => { + particle.setVelocity('x', -v); + }); + } + + if (r === 4) { + this.list.forEach((particle) => { + particle.setVelocity('y', -v); + }); + } + } + + /** + * @memberof ParticleEmitter + * @description Sets the floatVelocity of all particles in between a range + * @param {Duck.Types.ParticleEmitter.Range} rangeVX A range of 2 values for the floatVelocity.x, randomly chosen between that range + * @param {Duck.Types.ParticleEmitter.Range} rangeVY A range of 2 values for the floatVelocity.y, randomly chosen between that range + * @since 1.0.0-beta + */ + public float( + rangeVX: Duck.Types.ParticleEmitter.Range, + rangeVY: Duck.Types.ParticleEmitter.Range + ) { + this.floatRangeX = rangeVX; + this.floatRangeY = rangeVY; + + this.list.forEach((particle) => { + particle.floatVelocity.x = randomInt(rangeVX[0], rangeVX[1]); + particle.floatVelocity.y = randomInt(rangeVY[0], rangeVY[1]); + }); + } + + /** + * @memberof ParticleEmitter + * @description Sets the fillColor of all particles + * @param {string} fillColor Color + * @since 1.0.0-beta + */ + public setFillColor(fillColor: string) { + this.list.forEach((particle) => { + particle.setFillColor(fillColor); + }); + } + + /** + * @memberof ParticleEmitter + * @description Sets the imagePath of all particles + * @param {string} imagePath Image path + * @since 1.0.0 + */ + public setImagePath(imagePath: string) { + this.list.forEach((particle) => { + particle.setImagePath(imagePath); + }); + } } diff --git a/src/core/gameobjects/rect.ts b/src/core/gameobjects/rect.ts index bc5ad9e7..aa3eea62 100644 --- a/src/core/gameobjects/rect.ts +++ b/src/core/gameobjects/rect.ts @@ -3,6 +3,7 @@ import Debug from '../debug/debug'; import GameObject from './gameObject'; import Texture from '../texture/texture'; import Scene from '../scene'; +import Color from '../renderer/models/color'; /** * @class Rect @@ -11,58 +12,48 @@ import Scene from '../scene'; * @since 1.0.0-beta */ export default class Rect extends GameObject<'color'> { - /** - * @constructor Rect - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of Rect - * @param {number} h Height of Rect - * @param {string} fillColor Fill Color of Rect - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - x: number, - y: number, - w: number, - h: number, - fillColor: string, - game: Game, - scene: Scene - ) { - super( - 'rect', - x, - y, - w, - h, - 0, - Texture.fromColor(fillColor, w, h), - game, - scene - ); - } + /** + * @constructor Rect + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of Rect + * @param {number} h Height of Rect + * @param {Color} color Color of Rect + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + x: number, + y: number, + w: number, + h: number, + color: Color, + game: Game, + scene: Scene + ) { + super('rect', x, y, w, h, 0, Texture.fromColor(color, w, h), game, scene); + } - /** - * @description Draws the rect. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - this.game.renderer.drawRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture.texture - ); - } else { - new Debug.Error( - 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' - ); - } - } + /** + * @description Draws the rect. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + this.game.renderer.drawRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture.texture + ); + } else { + new Debug.Error( + 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' + ); + } + } } diff --git a/src/core/gameobjects/roundrect.ts b/src/core/gameobjects/roundrect.ts index 5904a451..d09a68f3 100644 --- a/src/core/gameobjects/roundrect.ts +++ b/src/core/gameobjects/roundrect.ts @@ -4,6 +4,7 @@ import Texture from '../texture/texture'; import Scene from '../scene'; import GameObject from './gameObject'; +import Color from '../renderer/models/color'; /** * @class RoundRect @@ -12,61 +13,61 @@ import GameObject from './gameObject'; * @since 1.0.0-beta */ export default class RoundRect extends GameObject<'color'> { - /** - * @constructor RoundRect - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of RoundRect - * @param {number} h Height of RoundRect - * @param {number} r Radius of RoundRect - * @param {string} fillColor Fill Color of RoundRect - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - x: number, - y: number, - w: number, - h: number, - r: number, - fillColor: string, - game: Game, - scene: Scene - ) { - super( - 'roundrect', - x, - y, - w, - h, - r, - Texture.fromColor(fillColor, w, h), - game, - scene - ); - } + /** + * @constructor RoundRect + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of RoundRect + * @param {number} h Height of RoundRect + * @param {number} r Radius of RoundRect + * @param {Color} color Color of RoundRect + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + x: number, + y: number, + w: number, + h: number, + r: number, + color: Color, + game: Game, + scene: Scene + ) { + super( + 'roundrect', + x, + y, + w, + h, + r, + Texture.fromColor(color, w, h), + game, + scene + ); + } - /** - * @description Draws the roundrect. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - this.game.renderer.drawRoundRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.r, - this.texture.texture - ); - } else { - new Debug.Error( - 'CanvasRenderingContext2D is undefined as Canvas is undefined.' - ); - } - } + /** + * @description Draws the roundrect. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + this.game.renderer.drawRoundRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.r, + this.texture.texture + ); + } else { + new Debug.Error( + 'CanvasRenderingContext2D is undefined as Canvas is undefined.' + ); + } + } } diff --git a/src/core/gameobjects/sprite.ts b/src/core/gameobjects/sprite.ts index f59beb7b..3b058002 100644 --- a/src/core/gameobjects/sprite.ts +++ b/src/core/gameobjects/sprite.ts @@ -14,168 +14,168 @@ import Animation from '../animation/animation'; * @since 1.0.0-beta */ export default class Sprite extends GameObject<'image'> { - /** - * @memberof Sprite - * @description The current row of the spritesheet texture, only if sprite texture is a spritesheet - * @type number | undefined - * @since 2.0.0 - */ - public currentRow: number | undefined; + /** + * @memberof Sprite + * @description The current row of the spritesheet texture, only if sprite texture is a spritesheet + * @type number | undefined + * @since 2.0.0 + */ + public currentRow: number | undefined; - /** - * @memberof Sprite - * @description The current column of the spritesheet texture, only if sprite texture is a spritesheet - * @type number | undefined - * @since 2.0.0 - */ - public currentCol: number | undefined; + /** + * @memberof Sprite + * @description The current column of the spritesheet texture, only if sprite texture is a spritesheet + * @type number | undefined + * @since 2.0.0 + */ + public currentCol: number | undefined; - /** - * @memberof Sprite - * @description The AnimationManager instance, if the texture is a spritesheet - * @type AnimationManager | undefined - * @since 2.0.0 - */ - public anims: AnimationManager | undefined; + /** + * @memberof Sprite + * @description The AnimationManager instance, if the texture is a spritesheet + * @type AnimationManager | undefined + * @since 2.0.0 + */ + public anims: AnimationManager | undefined; - /** - * @memberof Sprite - * @description The Default Animation instance, if the texture is a spritesheet - * @type Animation | undefined - * @since 2.0.0 - */ - public defaultAnim: Animation | undefined; + /** + * @memberof Sprite + * @description The Default Animation instance, if the texture is a spritesheet + * @type Animation | undefined + * @since 2.0.0 + */ + public defaultAnim: Animation | undefined; - /** - * @constructor Sprite - * @description Creates a Sprite instance - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of Sprite - * @param {number} h Height of Sprite - * @param {string} textureKey Key of a preloaded texture sheet - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @param {number} [currentRow] The default row to use for the spritesheet texture - * @param {number} [currentCol] The default column to use for the spritesheet texture - * @since 1.0.0-beta - */ - constructor( - x: number, - y: number, - w: number, - h: number, - textureKey: string, - game: Game, - scene: Scene, - currentRow?: number, - currentCol?: number - ) { - super( - 'sprite', - x, - y, - w, - h, - 0, - scene.loader.textureStack.find((t) => t.key === textureKey)!.value, - game, - scene - ); + /** + * @constructor Sprite + * @description Creates a Sprite instance + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of Sprite + * @param {number} h Height of Sprite + * @param {string} textureKey Key of a preloaded texture sheet + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @param {number} [currentRow] The default row to use for the spritesheet texture + * @param {number} [currentCol] The default column to use for the spritesheet texture + * @since 1.0.0-beta + */ + constructor( + x: number, + y: number, + w: number, + h: number, + textureKey: string, + game: Game, + scene: Scene, + currentRow?: number, + currentCol?: number + ) { + super( + 'sprite', + x, + y, + w, + h, + 0, + scene.loader.textureStack.find((t) => t.key === textureKey)!.value, + game, + scene + ); - this.currentRow = currentRow; - this.currentCol = currentCol; + this.currentRow = currentRow; + this.currentCol = currentCol; - const defaultAnimConfig = { - key: '__default', - frameRate: 0, - frames: [ - { - col: this.currentCol!, - row: this.currentRow!, - }, - ], - }; + const defaultAnimConfig = { + key: '__default', + frameRate: 0, + frames: [ + { + col: this.currentCol!, + row: this.currentRow!, + }, + ], + }; - this.anims = new AnimationManager( - this.game, - this.scene, - this, - defaultAnimConfig - ); - this.defaultAnim = this.anims.get('__default') as Animation; - } + this.anims = new AnimationManager( + this.game, + this.scene, + this, + defaultAnimConfig + ); + this.defaultAnim = this.anims.get('__default') as Animation; + } - /** - * @description Draws the sprite. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - if (this.texture.dataType === 'sheet') { - this.game.renderer.drawSprite( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture, - this.currentRow, - this.currentCol - ); - } else { - this.game.renderer.drawSprite( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture - ); - } - } else { - new Debug.Error( - 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' - ); - } - } + /** + * @description Draws the sprite. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + if (this.texture.dataType === 'sheet') { + this.game.renderer.drawSprite( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture, + this.currentRow, + this.currentCol + ); + } else { + this.game.renderer.drawSprite( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture + ); + } + } else { + new Debug.Error( + 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' + ); + } + } - /** - * @memberof Sprite - * @description Sets the scale of the Sprite - * @param {Duck.Types.Misc.Scale} scale - * @since 1.0.0-beta - */ - public setScale(scale: Duck.Types.Misc.Scale) { - if (scale.width) { - this.w = scale.width; - this.texture.setScale({ - width: this.w, - }); - } + /** + * @memberof Sprite + * @description Sets the scale of the Sprite + * @param {Duck.Types.Misc.Scale} scale + * @since 1.0.0-beta + */ + public setScale(scale: Duck.Types.Misc.Scale) { + if (scale.width) { + this.w = scale.width; + this.texture.setScale({ + width: this.w, + }); + } - if (scale.height) { - this.h = scale.height; - this.texture.setScale({ - height: this.h, - }); - } - } + if (scale.height) { + this.h = scale.height; + this.texture.setScale({ + height: this.h, + }); + } + } - /** - * @memberof Sprite - * @description Sets the image path of the sprite - * @param {string} imgpath Image Path - * @since 1.0.0-beta - */ - public setImagePath(imgpath: string) { - this.texture.texture.src = imgpath; - } + /** + * @memberof Sprite + * @description Sets the image path of the sprite + * @param {string} imgpath Image Path + * @since 1.0.0-beta + */ + public setImagePath(imgpath: string) { + this.texture.texture.src = imgpath; + } - // eslint-disable-next-line @typescript-eslint/no-unused-vars - public setFillColor(color: string) { - new Debug.Warn( - 'Cannot fill color of a sprite. Changed the image path instead. Use setImagePath instead.' - ); - } + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public setFillColor(color: string) { + new Debug.Warn( + 'Cannot fill color of a sprite. Changed the image path instead. Use setImagePath instead.' + ); + } } diff --git a/src/core/gameobjects/ui/button.ts b/src/core/gameobjects/ui/button.ts index 8b08c192..17a3eed7 100644 --- a/src/core/gameobjects/ui/button.ts +++ b/src/core/gameobjects/ui/button.ts @@ -7,6 +7,7 @@ import Text from './text'; import Texture from '../../texture/texture'; import EVENTS from '../../events/events'; import UI from './ui'; +import Color from '../../renderer/models/color'; /** * @class Button @@ -16,249 +17,249 @@ import UI from './ui'; * @since 1.0.0 */ export default class Button extends UI<'either'> { - /** - * @memberof Button - * @description Shape of the button - * @type Duck.Types.UI.Button.Shape - * @since 1.0.0 - */ - public shape: Duck.Types.UI.Button.Shape; + /** + * @memberof Button + * @description Shape of the button + * @type Duck.Types.UI.Button.Shape + * @since 1.0.0 + */ + public shape: Duck.Types.UI.Button.Shape; - /** - * @memberof Button - * @description Text of the button, Text instance - * @type Text - * @since 1.0.0 - */ - public text: Text; + /** + * @memberof Button + * @description Text of the button, Text instance + * @type Text + * @since 1.0.0 + */ + public text: Text; - /** - * @memberof Button - * @description Hovering state - * @type boolean - * @since 1.0.0 - */ - public hovering: boolean; + /** + * @memberof Button + * @description Hovering state + * @type boolean + * @since 1.0.0 + */ + public hovering: boolean; - /** - * @constructor - * @description Creates a Button instance - * @param {Duck.Types.UI.Button.Shape} shape Shape of the button, 'rect', 'roundrect', or 'sprite' - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width - * @param {number} h Height - * @param {number} r Radius - * @param {string} fillColorOrIMGPath Fill Color or Image path of the button - * @param {Text} text Text instance to render on top of the button - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0 - */ - constructor( - shape: Duck.Types.UI.Button.Shape, - x: number, - y: number, - w: number, - h: number, - r: number, - fillColorOrIMGPath: string, - text: Text, - game: Game, - scene: Scene - ) { - super( - shape, - x, - y, - w, - h, - r, - Texture.fromEither(fillColorOrIMGPath, w, h), - game, - scene - ); - this.shape = shape; - this.text = text; + /** + * @constructor + * @description Creates a Button instance + * @param {Duck.Types.UI.Button.Shape} shape Shape of the button, 'rect', 'roundrect', or 'sprite' + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width + * @param {number} h Height + * @param {number} r Radius + * @param {string | Color} fillColorOrIMGPath Color or Image path of the button + * @param {Text} text Text instance to render on top of the button + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0 + */ + constructor( + shape: Duck.Types.UI.Button.Shape, + x: number, + y: number, + w: number, + h: number, + r: number, + fillColorOrIMGPath: string | Color, + text: Text, + game: Game, + scene: Scene + ) { + super( + shape, + x, + y, + w, + h, + r, + Texture.fromEither(fillColorOrIMGPath, w, h), + game, + scene + ); + this.shape = shape; + this.text = text; - this.hovering = false; + this.hovering = false; - this.zIndex = Duck.Layers.Rendering.zIndex.button; + this.zIndex = Duck.Layers.Rendering.zIndex.button; - if (this.game.canvas) { - this.game.canvas.addEventListener('click', (e) => { - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - const rect = this.game.canvas!.getBoundingClientRect(); - const mousePos = { - x: e.clientX - rect.left, - y: e.clientY - rect.top, - }; + if (this.game.canvas) { + this.game.canvas.addEventListener('click', (e) => { + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + const rect = this.game.canvas!.getBoundingClientRect(); + const mousePos = { + x: e.clientX - rect.left, + y: e.clientY - rect.top, + }; - const buttonPos = { x: this.position.x, y: this.position.y }; + const buttonPos = { x: this.position.x, y: this.position.y }; - if (this.scene.currentCamera) { - const coords = this.scene.currentCamera.worldToScreen( - this.position.x, - this.position.y, - this - ); - buttonPos.x = coords.position.x; - buttonPos.y = coords.position.y; - } + if (this.scene.currentCamera) { + const coords = this.scene.currentCamera.worldToScreen( + this.position.x, + this.position.y, + this + ); + buttonPos.x = coords.position.x; + buttonPos.y = coords.position.y; + } - if ( - rectToRectIntersect( - { - position: buttonPos, - w: this.w, - h: this.h, - }, - { - position: { x: mousePos.x, y: mousePos.y }, - w: 1, - h: 1, - } - ) && - this.scene.visible - ) { - this.game.eventEmitter.emit(EVENTS.BUTTON.CLICK, { - x: mousePos.x, - y: mousePos.y, - type: EVENTS.BUTTON.CLICK, - }); - } - }); + if ( + rectToRectIntersect( + { + position: buttonPos, + w: this.w, + h: this.h, + }, + { + position: { x: mousePos.x, y: mousePos.y }, + w: 1, + h: 1, + } + ) && + this.scene.visible + ) { + this.game.eventEmitter.emit(EVENTS.BUTTON.CLICK, { + x: mousePos.x, + y: mousePos.y, + type: EVENTS.BUTTON.CLICK, + }); + } + }); - // hover - this.game.canvas.addEventListener('mousemove', (e) => { - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - const rect = this.game.canvas!.getBoundingClientRect(); - const mousePos = { - x: e.clientX - rect.left, - y: e.clientY - rect.top, - }; + // hover + this.game.canvas.addEventListener('mousemove', (e) => { + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + const rect = this.game.canvas!.getBoundingClientRect(); + const mousePos = { + x: e.clientX - rect.left, + y: e.clientY - rect.top, + }; - const buttonPos = { x: this.position.x, y: this.position.y }; + const buttonPos = { x: this.position.x, y: this.position.y }; - if (this.scene.currentCamera) { - const coords = this.scene.currentCamera.worldToScreen( - this.position.x, - this.position.y, - this - ); - buttonPos.x = coords.position.x; - buttonPos.y = coords.position.y; - } + if (this.scene.currentCamera) { + const coords = this.scene.currentCamera.worldToScreen( + this.position.x, + this.position.y, + this + ); + buttonPos.x = coords.position.x; + buttonPos.y = coords.position.y; + } - if ( - rectToRectIntersect( - { - position: buttonPos, - w: this.w, - h: this.h, - }, - { - position: { x: mousePos.x, y: mousePos.y }, - w: 1, - h: 1, - } - ) && - this.scene.visible - ) { - this.game.eventEmitter.emit(EVENTS.BUTTON.HOVER, { - x: mousePos.x, - y: mousePos.y, - type: EVENTS.BUTTON.HOVER, - }); + if ( + rectToRectIntersect( + { + position: buttonPos, + w: this.w, + h: this.h, + }, + { + position: { x: mousePos.x, y: mousePos.y }, + w: 1, + h: 1, + } + ) && + this.scene.visible + ) { + this.game.eventEmitter.emit(EVENTS.BUTTON.HOVER, { + x: mousePos.x, + y: mousePos.y, + type: EVENTS.BUTTON.HOVER, + }); - this.hovering = true; - } else if (this.scene.visible) { - this.game.eventEmitter.emit(EVENTS.BUTTON.NOTHOVER, { - x: mousePos.x, - y: mousePos.y, - type: EVENTS.BUTTON.NOTHOVER, - }); + this.hovering = true; + } else if (this.scene.visible) { + this.game.eventEmitter.emit(EVENTS.BUTTON.NOTHOVER, { + x: mousePos.x, + y: mousePos.y, + type: EVENTS.BUTTON.NOTHOVER, + }); - this.hovering = false; - } - }); - } else { - new Debug.Error( - 'Cannot add event listeners to canvas for mouseover and click for button. Canvas element is undefined or null.' - ); - } - } + this.hovering = false; + } + }); + } else { + new Debug.Error( + 'Cannot add event listeners to canvas for mouseover and click for button. Canvas element is undefined or null.' + ); + } + } - /** - * @description Draws the button. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - switch (this.shape) { - case 'rect': - this.game.renderer.drawRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture.texture as string - ); - break; + /** + * @description Draws the button. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + switch (this.shape) { + case 'rect': + this.game.renderer.drawRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture.texture as unknown as Color + ); + break; - case 'roundrect': - this.game.renderer.drawRoundRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.r, - this.texture.texture as string - ); - break; + case 'roundrect': + this.game.renderer.drawRoundRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.r, + this.texture.texture as unknown as Color + ); + break; - case 'sprite': - this.game.renderer.drawSprite( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture as unknown as Texture<'image'> - ); - break; + case 'sprite': + this.game.renderer.drawSprite( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture as unknown as Texture<'image'> + ); + break; - default: - new Debug.Error( - 'Cannot draw button. Shape must be a rect, roundrect, or sprite.' - ); - break; - } - } - } + default: + new Debug.Error( + 'Cannot draw button. Shape must be a rect, roundrect, or sprite.' + ); + break; + } + } + } - /** - * @memberof Button - * @description Adds an event listener to the button - * @param {Duck.Types.UI.Button.ListenerType} type Listener Type, type of event - * @param {Duck.Types.UI.Button.ListenerFunc} func Callback function, called on event - * @since 1.0.0 - */ - public on( - type: Duck.Types.UI.Button.ListenerType, - func: Duck.Types.UI.Button.ListenerFunc - ) { - this.game.eventEmitter.on(`BUTTON_${type}`, func); - } + /** + * @memberof Button + * @description Adds an event listener to the button + * @param {Duck.Types.UI.Button.ListenerType} type Listener Type, type of event + * @param {Duck.Types.UI.Button.ListenerFunc} func Callback function, called on event + * @since 1.0.0 + */ + public on( + type: Duck.Types.UI.Button.ListenerType, + func: Duck.Types.UI.Button.ListenerFunc + ) { + this.game.eventEmitter.on(`BUTTON_${type}`, func); + } - /** - * @memberof Button - * @description Removes an event listener from the button - * @param {Duck.Types.UI.Button.ListenerType} type Listener Type, type of event - * @since 1.0.0 - */ - public off(type: Duck.Types.UI.Button.ListenerType) { - this.game.eventEmitter.off(`BUTTON_${type}`); - } + /** + * @memberof Button + * @description Removes an event listener from the button + * @param {Duck.Types.UI.Button.ListenerType} type Listener Type, type of event + * @since 1.0.0 + */ + public off(type: Duck.Types.UI.Button.ListenerType) { + this.game.eventEmitter.off(`BUTTON_${type}`); + } } diff --git a/src/core/gameobjects/ui/container.ts b/src/core/gameobjects/ui/container.ts new file mode 100644 index 00000000..11219e48 --- /dev/null +++ b/src/core/gameobjects/ui/container.ts @@ -0,0 +1,94 @@ +import Game from '../../game'; +import Group from '../../group/group'; +import Color from '../../renderer/models/color'; +import Scene from '../../scene'; +import Texture from '../../texture/texture'; +import UI from './ui'; + +/** + * @class Container + * @classdesc Creates a DuckEngine Container + * @description The Container Class. Contains, manages, organizes a list of UI elements + * @extends UI + * @since 3.0.0 + */ +export default class Container extends UI<'either'> { + public elements: Group>; + + /** + * @constructor + * @description Creates a Container instance + * @param {'rect' | 'sprite'} shape Shape of the Container, 'rect' or 'sprite' + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width + * @param {number} h Height + * @param {number} r Radius + * @param {string | Color} fillColorOrIMGPath Color or Image path of the Container + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 3.0.0 + */ + constructor( + shape: 'rect' | 'sprite', + x: number, + y: number, + w: number, + h: number, + r: number, + fillColorOrIMGPath: string | Color, + game: Game, + scene: Scene + ) { + super( + shape, + x, + y, + w, + h, + r, + Texture.fromEither(fillColorOrIMGPath, w, h), + game, + scene + ); + + this.elements = new Group>( + `container-${this.id}-elements`, + this.game, + [] + ); + } + + /** + * @memberof Container + * @description Checks and returns a boolean if a UI Element exists inside of the Container + * @param {UI<'either'>} element UI Element to check if it exists inside of the Container + * @returns boolean + * @since 3.0.0 + */ + public includes(element: UI<'either'>) { + return this.elements.find(element) ? true : false; + } + + /** + * @memberof Container + * @description Gets and returns the UI Element if it exists inside of the Container + * @param {UI<'either'>} element UI Element to get from the Container, if it exists + * @returns UI<'either'> | undefined + * @since 3.0.0 + */ + public get(element: UI<'either'>) { + return this.elements.find(element); + } + + /** + * @memberof Container + * @description Gets and returns the UI Element by its ID, if it exists inside of the Container + * @param {string} id UI Element to get from the Container, by ID, if it exists + * @returns UI<'either'> | undefined + * @since 3.0.0 + */ + public getByID(id: string) { + return this.elements.group.find((e) => e.id === id); + } +} diff --git a/src/core/gameobjects/ui/imageRect.ts b/src/core/gameobjects/ui/imageRect.ts index ee6a7762..a0387520 100644 --- a/src/core/gameobjects/ui/imageRect.ts +++ b/src/core/gameobjects/ui/imageRect.ts @@ -4,42 +4,42 @@ import Scene from '../../scene'; import UI from './ui'; export default class ImageRect extends UI<'image'> { - constructor( - x: number, - y: number, - w: number, - h: number, - textureKey: string, - game: Game, - scene: Scene - ) { - super( - 'rect', - x, - y, - w, - h, - 0, - scene.loader.textureStack.find((t) => t.key === textureKey)!.value, - game, - scene - ); + constructor( + x: number, + y: number, + w: number, + h: number, + textureKey: string, + game: Game, + scene: Scene + ) { + super( + 'rect', + x, + y, + w, + h, + 0, + scene.loader.textureStack.find((t) => t.key === textureKey)!.value, + game, + scene + ); - this.texture.setScale({ - width: this.w, - height: this.h, - }); - } + this.texture.setScale({ + width: this.w, + height: this.h, + }); + } - public _draw() { - if (this.game.renderer.ctx) { - this.game.renderer.drawSprite( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture - ); - } - } + public _draw() { + if (this.game.renderer.ctx) { + this.game.renderer.drawSprite( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture + ); + } + } } diff --git a/src/core/gameobjects/ui/panel.ts b/src/core/gameobjects/ui/panel.ts index 16a11fce..e9f89cb5 100644 --- a/src/core/gameobjects/ui/panel.ts +++ b/src/core/gameobjects/ui/panel.ts @@ -4,91 +4,92 @@ import Game from '../../game'; import Texture from '../../texture/texture'; import Scene from '../../scene'; import UI from './ui'; +import Color from '../../renderer/models/color'; export default class Panel extends UI<'either'> { - constructor( - shape: Duck.Types.Collider.ShapeString, - x: number, - y: number, - w: number, - h: number, - r: number, - textureKeyOrColor: string, - game: Game, - scene: Scene - ) { - super( - shape, - x, - y, - w, - h, - r, - scene.loader.textureStack.find((t) => t.key === textureKeyOrColor) - ?.value || Texture.fromEither(textureKeyOrColor, w, h), - game, - scene - ); - } + constructor( + shape: Duck.Types.Collider.ShapeString, + x: number, + y: number, + w: number, + h: number, + r: number, + textureKeyOrColor: string | Color, + game: Game, + scene: Scene + ) { + super( + shape, + x, + y, + w, + h, + r, + scene.loader.textureStack.find((t) => t.key === textureKeyOrColor) + ?.value || Texture.fromEither(textureKeyOrColor, w, h), + game, + scene + ); + } - public _draw() { - if (this.game.renderer.ctx) { - switch (this.shape) { - case 'circle': - if (typeof this.texture.texture === 'string') { - this.game.renderer.drawCircle( - this.position.x, - this.position.y, - this.r, - this.texture.texture - ); - } - break; + public _draw() { + if (this.game.renderer.ctx) { + switch (this.shape) { + case 'circle': + if (this.texture.texture instanceof Color) { + this.game.renderer.drawCircle( + this.position.x, + this.position.y, + this.r, + this.texture.texture + ); + } + break; - case 'rect': - if (typeof this.texture.texture === 'string') { - this.game.renderer.drawRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture.texture - ); - } - break; + case 'rect': + if (this.texture.texture instanceof Color) { + this.game.renderer.drawRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture.texture + ); + } + break; - case 'roundrect': - if (typeof this.texture.texture === 'string') { - this.game.renderer.drawRoundRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.r, - this.texture.texture - ); - } - break; + case 'roundrect': + if (this.texture.texture instanceof Color) { + this.game.renderer.drawRoundRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.r, + this.texture.texture + ); + } + break; - case 'sprite': - if (typeof this.texture.texture !== 'string') { - this.game.renderer.drawSprite( - this.position.x, - this.position.y, - this.w, - this.h, - this.texture.texture as unknown as Texture<'image'> - ); - } - break; + case 'sprite': + if (this.texture.texture instanceof HTMLImageElement) { + this.game.renderer.drawSprite( + this.position.x, + this.position.y, + this.w, + this.h, + this.texture as unknown as Texture<'image'> + ); + } + break; - default: - break; - } - } else { - new Debug.Error( - 'Cannot draw panel. CanvasRenderingContext2D is undefined' - ); - } - } + default: + break; + } + } else { + new Debug.Error( + 'Cannot draw panel. CanvasRenderingContext2D is undefined' + ); + } + } } diff --git a/src/core/gameobjects/ui/text.ts b/src/core/gameobjects/ui/text.ts index 3bb2d315..ba3ee6a5 100644 --- a/src/core/gameobjects/ui/text.ts +++ b/src/core/gameobjects/ui/text.ts @@ -4,6 +4,7 @@ import Game from '../../game'; import Texture from '../../texture/texture'; import Scene from '../../scene'; import UI from './ui'; +import Color from '../../renderer/models/color'; /** * @class Text @@ -13,122 +14,135 @@ import UI from './ui'; * @since 1.0.0-beta */ export default class Text extends UI<'color'> { - /** - * @memberof Text - * @description Text string - * @type string - * @since 1.0.0-beta - */ - public text: string; - protected config: Duck.Types.UI.Text.Config; + /** + * @memberof Text + * @description Text string + * @type string + * @since 1.0.0-beta + */ + public text: string; + protected config: Duck.Types.UI.Text.Config; - /** - * @constructor Text - * @description Creates a Text instance. - * @param {string} text Text string - * @param {Duck.Types.UI.Text.Config} config Text configuration, styles, position and more - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - text: string, - config: Duck.Types.UI.Text.Config, - game: Game, - scene: Scene - ) { - super( - 'rect', - config.x, - config.y, - 0, - 0, - 0, - Texture.fromColor(text, 0, 0), - game, - scene - ); - this.text = text; - this.config = config; - this.game = game; + public color: Color; + public strokeColor: Color; - // set w and h - this.w = this.game.renderer.measureText( - config.styles.fontCSS, - this.text - ).width; - this.h = extractNumbers(config.styles.fontCSS); + /** + * @constructor Text + * @description Creates a Text instance. + * @param {string} text Text string + * @param {Duck.Types.UI.Text.Config} config Text configuration, styles, position and more + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + text: string, + config: Duck.Types.UI.Text.Config, + game: Game, + scene: Scene + ) { + super( + 'rect', + config.x, + config.y, + 0, + 0, + 0, + Texture.fromColor(new Color(text), 0, 0), + game, + scene + ); + this.text = text; + this.config = config; + this.game = game; - this.texture.setScale({ - width: this.w, - height: this.h, - }); + // set w and h + this.w = this.game.renderer.measureText( + config.styles.fontCSS, + this.text + ).width; + this.h = extractNumbers(config.styles.fontCSS); - this.zIndex = Duck.Layers.Rendering.zIndex.text; - } + this.texture.setScale({ + width: this.w, + height: this.h, + }); - /** - * @description Draws the text. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - this.game.renderer.setFont(this.config.styles.fontCSS); - this.game.renderer.setLineWidth( - this.config.styles.strokeWidth || 1 - ); - this.game.renderer.setStrokeColor( - this.config.styles.strokeColor || '#000' - ); - this.game.renderer.setFillColor( - this.config.styles.fillColor || '#000' - ); + this.zIndex = Duck.Layers.Rendering.zIndex.text; - if (this.config.method === 'draw') { - this.game.renderer.drawText( - this.text, - this.position.x, - this.position.y, - this.config.styles.maxWidth - ); - } + this.color = new Color( + this.config.styles.fillColor || '#000000', + this.config.styles.strokeColor + ? this.config.styles.strokeColor + : '#000000', + this.config.styles.strokeWidth ? this.config.styles.strokeWidth : 0 + ); + this.strokeColor = new Color( + this.config.styles.strokeColor + ? this.config.styles.strokeColor + : '#000000' + ); + } - if (this.config.method === 'stroke') { - this.game.renderer.strokeText( - this.text, - this.position.x, - this.position.y, - this.config.styles.maxWidth - ); - } + /** + * @description Draws the text. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + this.game.renderer.setFont(this.config.styles.fontCSS); + this.game.renderer.setLineWidth(this.config.styles.strokeWidth || 1); + if (this.color.stroke) { + this.game.renderer.setStrokeColor(this.strokeColor); + } - if (this.config.method === 'draw-stroke') { - this.game.renderer.drawText( - this.text, - this.position.x, - this.position.y, - this.config.styles.maxWidth - ); + this.game.renderer.setFillColor(this.color); - this.game.renderer.strokeText( - this.text, - this.position.x, - this.position.y, - this.config.styles.maxWidth - ); - } - } - } + if (this.config.method === 'draw') { + this.game.renderer.drawText( + this.text, + this.position.x, + this.position.y, + this.config.styles.maxWidth + ); + } - /** - * @memberof Text - * @description Sets the text string - * @param {string} text - * @since 1.0.0-beta - */ - public setText(text: string) { - this.text = text; - } + if (this.config.method === 'stroke') { + this.game.renderer.strokeText( + this.text, + this.position.x, + this.position.y, + this.config.styles.maxWidth + ); + } + + if (this.config.method === 'draw-stroke') { + this.game.renderer.drawText( + this.text, + this.position.x, + this.position.y, + this.config.styles.maxWidth + ); + + this.game.renderer.strokeText( + this.text, + this.position.x, + this.position.y, + this.config.styles.maxWidth + ); + } + } + } + + /** + * @memberof Text + * @description Sets the text string + * @param {string} text + * @since 1.0.0-beta + */ + public setText(text: string) { + this.text = text; + } } diff --git a/src/core/gameobjects/ui/ui.ts b/src/core/gameobjects/ui/ui.ts index dc8a6ad5..c1537269 100644 --- a/src/core/gameobjects/ui/ui.ts +++ b/src/core/gameobjects/ui/ui.ts @@ -4,20 +4,40 @@ import Texture from '../../texture/texture'; import Scene from '../../scene'; import GameObject from '../gameObject'; +/** + * @class UI + * @classdesc Creates a DuckEngine UI Class + * @description The UI Class. All UI GameObjects extend this class. + * @since 3.0.0 + */ export default class UI< - t extends Duck.Types.Texture.Type + t extends Duck.Types.Texture.Type > extends GameObject { - constructor( - shape: Duck.Types.Collider.ShapeString, - x: number, - y: number, - w: number, - h: number, - r: number, - texture: Texture, - game: Game, - scene: Scene - ) { - super(shape, x, y, w, h, r, texture, game, scene); - } + /** + * @constructor + * @description Creates a UI instance + * @param {'rect' | 'sprite'} shape Shape of the UI + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width + * @param {number} h Height + * @param {number} r Radius + * @param {Texture} Texture of UI + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 3.0.0 + */ + constructor( + shape: Duck.Types.Collider.ShapeString, + x: number, + y: number, + w: number, + h: number, + r: number, + texture: Texture, + game: Game, + scene: Scene + ) { + super(shape, x, y, w, h, r, texture, game, scene); + } } diff --git a/src/core/group/group.ts b/src/core/group/group.ts index ffd36666..d8181eb7 100644 --- a/src/core/group/group.ts +++ b/src/core/group/group.ts @@ -19,228 +19,228 @@ import PhysicsBody from '../physics/physicsBody'; * @since 1.0.0-beta */ export default class Group { - protected stack: t[]; - - /** - * @memberof Group - * @description Game instance - * @type Game - * @since 1.0.0-beta - */ - public game: Game; - - /** - * @memberof Group - * @description Group name - * @type string - * @since 1.0.0-beta - */ - public readonly name: string; - - /** - * @constructor - * @description Creates a Group instance. - * @param {string} name Name of group - * @param {Game} game Game instance - * @param {t[]} [defaultItems=[]] Default items, optional -> defaults: [] - * @since 1.0.0-beta - */ - constructor(name: string, game: Game, defaultItems?: t[]) { - this.name = name; - this.stack = defaultItems || []; - this.game = game; - } - - /** - * @memberof Group - * @description Adds an item to the Group - * @param {t} item Item to add - * @emits EVENTS.GROUP.ADD - * @since 1.0.0-beta - */ - public add(item: t) { - this.stack.push(item); - if (this.game.config.debug) { - new Debug.Log('Added item to group.'); - } - - // listener - this.game.eventEmitter.emit(EVENTS.GROUP.ADD, item); - } - - /** - * @memberof Group - * @description Removes an item from the Group - * @param {t} item Item to remove - * @emits EVENTS.GROUP.REMOVE - * @since 1.0.0-beta - */ - public remove(item: t) { - if (this.find(item)) { - this.stack.splice(this.indexOf(item), 1); - if (this.game.config.debug) { - new Debug.Log('Removed item from group.'); - } - } else { - new Debug.Error( - 'Cannot remove item from Group. Item does not exist in Group.' - ); - } - - // listener - this.game.eventEmitter.emit(EVENTS.GROUP.REMOVE, item); - } - - /** - * @memberof Group - * @description Finds an item in the Group - * @param {t} item Item to find - * @since 1.0.0-beta - */ - public find(item: t) { - const a = this.stack.find((_a) => _a === item); - return a; - } - - /** - * @memberof Group - * @description Gets the index of an item from the Group list array - * @param {t} item Item to find the index of - * @since 1.0.0-beta - */ - public indexOf(item: t) { - return this.stack.indexOf(item); - } - - /** - * @memberof Group - * @description Loops through each item in the Group array - * @param {(item: t, index: number) => void} cb Callback function - * @since 1.0.0-beta - */ - public each(cb: (item: t, index: number) => void) { - return this.stack.forEach(cb.bind(this)); - } - - /** - * @memberof Group - * @description Pops an item from the Group array - * @returns {t | undefined} - * @since 1.0.0-beta - */ - public pop() { - return this.stack.pop(); - } - - /** - * @memberof Group - * @description Shifts an item from the Group array - * @returns {t | undefined} - * @since 1.0.0-beta - */ - public shift() { - return this.stack.shift(); - } - - /** - * @memberof Group - * @description Splices an item from the Group array - * @param {number} index Index to splice at - * @param {number} [deleteCount] How many items to remove, optional - * @returns {t[]} - * @since 1.0.0-beta - */ - public splice(index: number, deleteCount?: number) { - return this.stack.splice(index, deleteCount); - } - - /** - * @memberof Group - * @description Filters items from the Group - * @param {Duck.Types.Group.Filter} filter Filter string - * @returns {t[]} - * @since 1.0.0-beta - */ - public filter(filter: Duck.Types.Group.Filter) { - switch (filter) { - case 'cameras': - return this.stack.filter((item) => item instanceof Camera); - break; - case 'gameobject': - return this.stack.filter((item) => item instanceof GameObject); - break; - case 'ui': - return this.stack.filter((item) => item instanceof UI); - break; - case 'lights': - return this.stack.filter((item) => item instanceof StaticLight); - break; - case 'physics': - return this.stack.filter( - (item) => - item instanceof Collider || - item instanceof Hitbox || - item instanceof PhysicsBody - ); - break; - default: - new Debug.Error( - 'Cannot filter Group. Filter must be "cameras", "gameobject", "ui", "lights", or "physics".' - ); - return this.stack; - break; - } - } - - /** - * @memberof Group - * @description Adds an event listener to Group - * @param {Duck.Types.Group.ListenerType} type Listener type - * @param {() => unknown} cb Callback function - * @since 1.0.0-beta - */ - public on(type: Duck.Types.Group.ListenerType, cb: () => unknown) { - this.game.eventEmitter.on(`GROUP_${type}`, cb); - } - - /** - * @memberof Group - * @description Removes an event listener from Group - * @param {Duck.Types.Group.ListenerType} type Listener type - * @since 1.0.0-beta - */ - public off(type: Duck.Types.Group.ListenerType) { - this.game.eventEmitter.off(`GROUP_${type}`); - } - - /** - * @memberof Group - * @description Returns an item or undefined at a specified index - * @param {number} index The index to return a value from, 0-based like an array - * @returns {t | undefined} - * @since 2.1.0 - */ - public at(index: number): t | undefined { - return this.stack[index]; - } - - /** - * @memberof Group - * @description Returns the array - * @returns {t[]} - * @since 1.0.0-beta - */ - public get group() { - return this.stack; - } - - /** - * @memberof Group - * @description Returns the length of the array - * @returns {number} - * @since 1.0.0-beta - */ - public get length() { - return this.stack.length; - } + protected stack: t[]; + + /** + * @memberof Group + * @description Game instance + * @type Game + * @since 1.0.0-beta + */ + public game: Game; + + /** + * @memberof Group + * @description Group name + * @type string + * @since 1.0.0-beta + */ + public readonly name: string; + + /** + * @constructor + * @description Creates a Group instance. + * @param {string} name Name of group + * @param {Game} game Game instance + * @param {t[]} [defaultItems=[]] Default items, optional -> defaults: [] + * @since 1.0.0-beta + */ + constructor(name: string, game: Game, defaultItems?: t[]) { + this.name = name; + this.stack = defaultItems || []; + this.game = game; + } + + /** + * @memberof Group + * @description Adds an item to the Group + * @param {t} item Item to add + * @emits EVENTS.GROUP.ADD + * @since 1.0.0-beta + */ + public add(item: t) { + this.stack.push(item); + if (this.game.config.debug) { + new Debug.Log('Added item to group.'); + } + + // listener + this.game.eventEmitter.emit(EVENTS.GROUP.ADD, item); + } + + /** + * @memberof Group + * @description Removes an item from the Group + * @param {t} item Item to remove + * @emits EVENTS.GROUP.REMOVE + * @since 1.0.0-beta + */ + public remove(item: t) { + if (this.find(item)) { + this.stack.splice(this.indexOf(item), 1); + if (this.game.config.debug) { + new Debug.Log('Removed item from group.'); + } + } else { + new Debug.Error( + 'Cannot remove item from Group. Item does not exist in Group.' + ); + } + + // listener + this.game.eventEmitter.emit(EVENTS.GROUP.REMOVE, item); + } + + /** + * @memberof Group + * @description Finds an item in the Group + * @param {t} item Item to find + * @since 1.0.0-beta + */ + public find(item: t) { + const a = this.stack.find((_a) => _a === item); + return a; + } + + /** + * @memberof Group + * @description Gets the index of an item from the Group list array + * @param {t} item Item to find the index of + * @since 1.0.0-beta + */ + public indexOf(item: t) { + return this.stack.indexOf(item); + } + + /** + * @memberof Group + * @description Loops through each item in the Group array + * @param {(item: t, index: number) => void} cb Callback function + * @since 1.0.0-beta + */ + public each(cb: (item: t, index: number) => void) { + return this.stack.forEach(cb.bind(this)); + } + + /** + * @memberof Group + * @description Pops an item from the Group array + * @returns {t | undefined} + * @since 1.0.0-beta + */ + public pop() { + return this.stack.pop(); + } + + /** + * @memberof Group + * @description Shifts an item from the Group array + * @returns {t | undefined} + * @since 1.0.0-beta + */ + public shift() { + return this.stack.shift(); + } + + /** + * @memberof Group + * @description Splices an item from the Group array + * @param {number} index Index to splice at + * @param {number} [deleteCount] How many items to remove, optional + * @returns {t[]} + * @since 1.0.0-beta + */ + public splice(index: number, deleteCount?: number) { + return this.stack.splice(index, deleteCount); + } + + /** + * @memberof Group + * @description Filters items from the Group + * @param {Duck.Types.Group.Filter} filter Filter string + * @returns {t[]} + * @since 1.0.0-beta + */ + public filter(filter: Duck.Types.Group.Filter) { + switch (filter) { + case 'cameras': + return this.stack.filter((item) => item instanceof Camera); + break; + case 'gameobject': + return this.stack.filter((item) => item instanceof GameObject); + break; + case 'ui': + return this.stack.filter((item) => item instanceof UI); + break; + case 'lights': + return this.stack.filter((item) => item instanceof StaticLight); + break; + case 'physics': + return this.stack.filter( + (item) => + item instanceof Collider || + item instanceof Hitbox || + item instanceof PhysicsBody + ); + break; + default: + new Debug.Error( + 'Cannot filter Group. Filter must be "cameras", "gameobject", "ui", "lights", or "physics".' + ); + return this.stack; + break; + } + } + + /** + * @memberof Group + * @description Adds an event listener to Group + * @param {Duck.Types.Group.ListenerType} type Listener type + * @param {() => unknown} cb Callback function + * @since 1.0.0-beta + */ + public on(type: Duck.Types.Group.ListenerType, cb: () => unknown) { + this.game.eventEmitter.on(`GROUP_${type}`, cb); + } + + /** + * @memberof Group + * @description Removes an event listener from Group + * @param {Duck.Types.Group.ListenerType} type Listener type + * @since 1.0.0-beta + */ + public off(type: Duck.Types.Group.ListenerType) { + this.game.eventEmitter.off(`GROUP_${type}`); + } + + /** + * @memberof Group + * @description Returns an item or undefined at a specified index + * @param {number} index The index to return a value from, 0-based like an array + * @returns {t | undefined} + * @since 2.1.0 + */ + public at(index: number): t | undefined { + return this.stack[index]; + } + + /** + * @memberof Group + * @description Returns the array + * @returns {t[]} + * @since 1.0.0-beta + */ + public get group() { + return this.stack; + } + + /** + * @memberof Group + * @description Returns the length of the array + * @returns {number} + * @since 1.0.0-beta + */ + public get length() { + return this.stack.length; + } } diff --git a/src/core/input/input.ts b/src/core/input/input.ts index 4fb72ce4..f946878e 100644 --- a/src/core/input/input.ts +++ b/src/core/input/input.ts @@ -10,51 +10,51 @@ import MouseInput from './mouseInput'; * @since 1.0.0-beta */ export default class Input { - /** - * @memberof Input - * @description Game instance - * @type Game - * @since 1.0.0-beta - */ - public game: Game; + /** + * @memberof Input + * @description Game instance + * @type Game + * @since 1.0.0-beta + */ + public game: Game; - /** - * @memberof Input - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof Input + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @constructor Input - * @description Creates an Input instance. - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor(game: Game, scene: Scene) { - this.game = game; - this.scene = scene; - } + /** + * @constructor Input + * @description Creates an Input instance. + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor(game: Game, scene: Scene) { + this.game = game; + this.scene = scene; + } - /** - * @memberof Input - * @description Creates a KeyboardInput instance - * @returns {KeyboardInput} - * @since 2.0.0 - */ - public createKeyboardInput() { - return new KeyboardInput(this.game, this.scene); - } + /** + * @memberof Input + * @description Creates a KeyboardInput instance + * @returns {KeyboardInput} + * @since 2.0.0 + */ + public createKeyboardInput() { + return new KeyboardInput(this.game, this.scene); + } - /** - * @memberof Input - * @description Creates a MouseInput instance - * @returns {MouseInput} - * @since 2.0.0 - */ - public createMouseInput() { - return new MouseInput(this.game, this.scene); - } + /** + * @memberof Input + * @description Creates a MouseInput instance + * @returns {MouseInput} + * @since 2.0.0 + */ + public createMouseInput() { + return new MouseInput(this.game, this.scene); + } } diff --git a/src/core/input/keyboardInput.ts b/src/core/input/keyboardInput.ts index 7e01d0b2..8c6ae601 100644 --- a/src/core/input/keyboardInput.ts +++ b/src/core/input/keyboardInput.ts @@ -12,146 +12,146 @@ import Key from './models/key'; * @since 2.0.0 */ export default class KeyboardInput { - /** - * @memberof KeyboardInput - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof KeyboardInput + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof KeyboardInput - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof KeyboardInput + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @memberof KeyboardInput - * @description The EventEmitter used to emit for Key events - * @type EventEmitter - * @since 2.0.0 - */ - public eventEmitter: EventEmitter; + /** + * @memberof KeyboardInput + * @description The EventEmitter used to emit for Key events + * @type EventEmitter + * @since 2.0.0 + */ + public eventEmitter: EventEmitter; - /** - * @memberof KeyboardInput - * @description All of the Keys added to the KeyboardInput - * @type { [key: string]: Key } - * @since 2.0.0 - */ - public keys: { - [key: string]: Key; - }; + /** + * @memberof KeyboardInput + * @description All of the Keys added to the KeyboardInput + * @type { [key: string]: Key } + * @since 2.0.0 + */ + public keys: { + [key: string]: Key; + }; - /** - * @memberof KeyboardInput - * @description Creates a KeyboardInput instance - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 2.0.0 - */ - constructor(game: Game, scene: Scene) { - this.game = game; - this.scene = scene; - this.eventEmitter = new EventEmitter(); + /** + * @memberof KeyboardInput + * @description Creates a KeyboardInput instance + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 2.0.0 + */ + constructor(game: Game, scene: Scene) { + this.game = game; + this.scene = scene; + this.eventEmitter = new EventEmitter(); - this.keys = {}; - } + this.keys = {}; + } - /** - * @memberof KeyboardInput - * @description Adds a Key to the KeyboardInput - * @param {number} keyCode The Key keyCode - * @param {string} descriptor The Key descriptor, used to set the value to KeyboardInput.keys - * @param { (e:KeyboardEvent) => any } [keyDown] Key Down callback - * @param { (e:KeyboardEvent) => any } [keyUp] Key Up callback - * @param { (e:KeyboardEvent) => any } [keyJustPressed] Key Just Pressed callback - * @param { (e:KeyboardEvent) => any } [keyState] Key State callback - * @since 2.0.0 - */ - public addKey( - keyCode: number, - descriptor: string, - keyDown?: (e: KeyboardEvent) => any, - keyUp?: (e: KeyboardEvent) => any, - keyJustPressed?: (e: KeyboardEvent) => any, - keyState?: (e: KeyboardEvent, state: boolean) => any - ) { - const myKey = new Key( - keyCode, - descriptor, - this.game, - this.scene, - this, - keyDown, - keyUp, - keyJustPressed, - keyState - ); + /** + * @memberof KeyboardInput + * @description Adds a Key to the KeyboardInput + * @param {number} keyCode The Key keyCode + * @param {string} descriptor The Key descriptor, used to set the value to KeyboardInput.keys + * @param { (e:KeyboardEvent) => any } [keyDown] Key Down callback + * @param { (e:KeyboardEvent) => any } [keyUp] Key Up callback + * @param { (e:KeyboardEvent) => any } [keyJustPressed] Key Just Pressed callback + * @param { (e:KeyboardEvent) => any } [keyState] Key State callback + * @since 2.0.0 + */ + public addKey( + keyCode: number, + descriptor: string, + keyDown?: (e: KeyboardEvent) => any, + keyUp?: (e: KeyboardEvent) => any, + keyJustPressed?: (e: KeyboardEvent) => any, + keyState?: (e: KeyboardEvent, state: boolean) => any + ) { + const myKey = new Key( + keyCode, + descriptor, + this.game, + this.scene, + this, + keyDown, + keyUp, + keyJustPressed, + keyState + ); - this.keys[descriptor] = myKey; + this.keys[descriptor] = myKey; - return myKey; - } + return myKey; + } - /** - * @memberof KeyboardInput - * @description Adds a Key to the KeyboardInput - * @param {Duck.Types.KeyboardInput.KeyBase[]} keys An array of base key configurations to create Keys from - * @since 2.0.0 - */ - public addKeys(keys: Duck.Types.KeyboardInput.KeyBase[]) { - keys.forEach((keyBase) => { - this.addKey( - keyBase.keyCode, - keyBase.descriptor, - keyBase.keyDown, - keyBase.keyUp, - keyBase.keyJustPressed, - keyBase.keyState - ); - }); - } + /** + * @memberof KeyboardInput + * @description Adds a Key to the KeyboardInput + * @param {Duck.Types.KeyboardInput.KeyBase[]} keys An array of base key configurations to create Keys from + * @since 2.0.0 + */ + public addKeys(keys: Duck.Types.KeyboardInput.KeyBase[]) { + keys.forEach((keyBase) => { + this.addKey( + keyBase.keyCode, + keyBase.descriptor, + keyBase.keyDown, + keyBase.keyUp, + keyBase.keyJustPressed, + keyBase.keyState + ); + }); + } - /** - * @memberof KeyboardInput - * @description Removes a Key from the KeyboardInput - * @param {string} descriptor Key descriptor - * @since 2.0.0 - */ - public removeKey(descriptor: string) { - const key = this.keys[descriptor]; + /** + * @memberof KeyboardInput + * @description Removes a Key from the KeyboardInput + * @param {string} descriptor Key descriptor + * @since 2.0.0 + */ + public removeKey(descriptor: string) { + const key = this.keys[descriptor]; - if (key) { - delete this.keys[descriptor]; - } - } + if (key) { + delete this.keys[descriptor]; + } + } - /** - * @memberof KeyboardInput - * @description Adds an onInput event listener to all keys - * @param {(key:Key,e:KeyboardEvent)=>any} cb - * @since 2.0.0 - */ - public onInput(cb: (key: Key, e: KeyboardEvent) => any) { - for (const key in this.keys) { - if (Object.prototype.hasOwnProperty.call(this.keys, key)) { - const myKey = this.keys[key]; - myKey.onInput(cb); - } - } - } + /** + * @memberof KeyboardInput + * @description Adds an onInput event listener to all keys + * @param {(key:Key,e:KeyboardEvent)=>any} cb + * @since 2.0.0 + */ + public onInput(cb: (key: Key, e: KeyboardEvent) => any) { + for (const key in this.keys) { + if (Object.prototype.hasOwnProperty.call(this.keys, key)) { + const myKey = this.keys[key]; + myKey.onInput(cb); + } + } + } - /** - * @memberof KeyboardInput - * @description Returns KeyboardInput.keys - * @returns {{ [key: string]: Key }} - * @since 2.0.0 - */ - public get inputs() { - return this.keys; - } + /** + * @memberof KeyboardInput + * @description Returns KeyboardInput.keys + * @returns {{ [key: string]: Key }} + * @since 2.0.0 + */ + public get inputs() { + return this.keys; + } } diff --git a/src/core/input/models/key.ts b/src/core/input/models/key.ts index 30b0767b..e89b694c 100644 --- a/src/core/input/models/key.ts +++ b/src/core/input/models/key.ts @@ -10,216 +10,210 @@ import KeyboardInput from '../keyboardInput'; * @since 2.0.0 */ export default class Key { - /** - * @memberof Key - * @description The keyCode - * @type number - * @since 2.0.0 - */ - public keyCode: number; - - /** - * @memberof Key - * @description The Key descriptor - * @type string - * @since 2.0.0 - */ - public descriptor: string; - - /** - * @memberof Key - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; - - /** - * @memberof Key - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; - - /** - * @memberof Key - * @description The KeyboardInput that the key is attached to - * @type KeyboardInput - * @since 2.0.0 - */ - public keyboardInput: KeyboardInput; - - /** - * @memberof Key - * @description Key down state - * @type boolean - * @since 2.0.0 - */ - public isDown: boolean; - - /** - * @memberof Key - * @description Key up state - * @type boolean - * @since 2.0.0 - */ - public isUp: boolean; - - /** - * @memberof Key - * @description Key just pressed state - * @type boolean - * @since 2.0.0 - */ - public isJustPressed: boolean; - - /** - * @memberof Key - * @description Key basic state of up or down, up being false, down being true - * @type boolean - * @since 2.0.0 - */ - public state: boolean; - - /** - * @constructor Key - * @description Creates a Key instance - * @param {number} keyCode The Key keyCode - * @param {string} descriptor The Key descriptor, used to set the value to KeyboardInput.keys - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @param { (e:KeyboardEvent) => any } [keyDown] Key Down callback - * @param { (e:KeyboardEvent) => any } [keyUp] Key Up callback - * @param { (e:KeyboardEvent) => any } [keyJustPressed] Key Just Pressed callback - * @param { (e:KeyboardEvent) => any } [keyState] Key State callback - * @since 2.0.0 - */ - constructor( - keyCode: number, - descriptor: string, - game: Game, - scene: Scene, - keyboardInput: KeyboardInput, - keyDown?: (e: KeyboardEvent) => any, - keyUp?: (e: KeyboardEvent) => any, - keyJustPressed?: (e: KeyboardEvent) => any, - keyState?: (e: KeyboardEvent, state: boolean) => any - ) { - this.keyCode = keyCode; - this.descriptor = descriptor.toUpperCase(); - this.game = game; - this.scene = scene; - - this.isDown = false; - this.isUp = false; - this.isJustPressed = false; - this.state = false; - - this.keyboardInput = keyboardInput; - - if (keyDown) { - this.keyboardInput.eventEmitter.on( - `KEY_DOWN_${this.descriptor}`, - keyDown - ); - } - if (keyUp) { - this.keyboardInput.eventEmitter.on( - `KEY_UP_${this.descriptor}`, - keyUp - ); - } - if (keyJustPressed) { - this.keyboardInput.eventEmitter.on( - `KEY_JUST_PRESSED_${this.descriptor}`, - keyJustPressed - ); - } - if (keyState) { - this.keyboardInput.eventEmitter.on( - `KEY_STATE_${this.descriptor}`, - keyState - ); - } - - this.registerListeners(); - } - - protected registerListeners() { - document.addEventListener('keydown', (e) => { - if (e.keyCode === this.keyCode) { - this.state = true; - this.keyboardInput.eventEmitter.emit( - `KEY_STATE_${this.descriptor}`, - e, - this.state - ); - - if (!e.repeat) { - this.isDown = false; - this.isUp = false; - this.isJustPressed = true; - - this.keyboardInput.eventEmitter.emit( - `KEY_JUST_PRESSED_${this.descriptor}`, - e - ); - this.keyboardInput.eventEmitter.emit( - `KEY_INPUT_${this.descriptor}`, - this, - e - ); - } else { - this.isDown = true; - this.isUp = false; - this.isJustPressed = false; - - this.keyboardInput.eventEmitter.emit( - `KEY_DOWN_${this.descriptor}`, - e - ); - this.keyboardInput.eventEmitter.emit( - `KEY_INPUT_${this.descriptor}`, - this, - e - ); - } - } - }); - document.addEventListener('keyup', (e) => { - if (e.keyCode === this.keyCode) { - this.state = false; - this.keyboardInput.eventEmitter.emit( - `KEY_STATE_${this.descriptor}`, - e, - this.state - ); - - this.isDown = false; - this.isUp = true; - this.isJustPressed = false; - - this.keyboardInput.eventEmitter.emit( - `KEY_UP_${this.descriptor}`, - e - ); - this.keyboardInput.eventEmitter.emit( - `KEY_INPUT_${this.descriptor}`, - this, - e - ); - } - }); - } - - /** - * @memberof Key - * @description Creates on event on event emitter to listen for input - * @param {(key:Key, e:KeyboardEvent) => any} cb Callback to call on input - * @since 2.0.0 - */ - public onInput(cb: (key: Key, e: KeyboardEvent) => any) { - this.keyboardInput.eventEmitter.on(`KEY_INPUT_${this.descriptor}`, cb); - } + /** + * @memberof Key + * @description The keyCode + * @type number + * @since 2.0.0 + */ + public keyCode: number; + + /** + * @memberof Key + * @description The Key descriptor + * @type string + * @since 2.0.0 + */ + public descriptor: string; + + /** + * @memberof Key + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; + + /** + * @memberof Key + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; + + /** + * @memberof Key + * @description The KeyboardInput that the key is attached to + * @type KeyboardInput + * @since 2.0.0 + */ + public keyboardInput: KeyboardInput; + + /** + * @memberof Key + * @description Key down state + * @type boolean + * @since 2.0.0 + */ + public isDown: boolean; + + /** + * @memberof Key + * @description Key up state + * @type boolean + * @since 2.0.0 + */ + public isUp: boolean; + + /** + * @memberof Key + * @description Key just pressed state + * @type boolean + * @since 2.0.0 + */ + public isJustPressed: boolean; + + /** + * @memberof Key + * @description Key basic state of up or down, up being false, down being true + * @type boolean + * @since 2.0.0 + */ + public state: boolean; + + /** + * @constructor Key + * @description Creates a Key instance + * @param {number} keyCode The Key keyCode + * @param {string} descriptor The Key descriptor, used to set the value to KeyboardInput.keys + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @param { (e:KeyboardEvent) => any } [keyDown] Key Down callback + * @param { (e:KeyboardEvent) => any } [keyUp] Key Up callback + * @param { (e:KeyboardEvent) => any } [keyJustPressed] Key Just Pressed callback + * @param { (e:KeyboardEvent) => any } [keyState] Key State callback + * @since 2.0.0 + */ + constructor( + keyCode: number, + descriptor: string, + game: Game, + scene: Scene, + keyboardInput: KeyboardInput, + keyDown?: (e: KeyboardEvent) => any, + keyUp?: (e: KeyboardEvent) => any, + keyJustPressed?: (e: KeyboardEvent) => any, + keyState?: (e: KeyboardEvent, state: boolean) => any + ) { + this.keyCode = keyCode; + this.descriptor = descriptor.toUpperCase(); + this.game = game; + this.scene = scene; + + this.isDown = false; + this.isUp = false; + this.isJustPressed = false; + this.state = false; + + this.keyboardInput = keyboardInput; + + if (keyDown) { + this.keyboardInput.eventEmitter.on( + `KEY_DOWN_${this.descriptor}`, + keyDown + ); + } + if (keyUp) { + this.keyboardInput.eventEmitter.on(`KEY_UP_${this.descriptor}`, keyUp); + } + if (keyJustPressed) { + this.keyboardInput.eventEmitter.on( + `KEY_JUST_PRESSED_${this.descriptor}`, + keyJustPressed + ); + } + if (keyState) { + this.keyboardInput.eventEmitter.on( + `KEY_STATE_${this.descriptor}`, + keyState + ); + } + + this.registerListeners(); + } + + protected registerListeners() { + document.addEventListener('keydown', (e) => { + if (e.keyCode === this.keyCode) { + this.state = true; + this.keyboardInput.eventEmitter.emit( + `KEY_STATE_${this.descriptor}`, + e, + this.state + ); + + if (!e.repeat) { + this.isDown = false; + this.isUp = false; + this.isJustPressed = true; + + this.keyboardInput.eventEmitter.emit( + `KEY_JUST_PRESSED_${this.descriptor}`, + e + ); + this.keyboardInput.eventEmitter.emit( + `KEY_INPUT_${this.descriptor}`, + this, + e + ); + } else { + this.isDown = true; + this.isUp = false; + this.isJustPressed = false; + + this.keyboardInput.eventEmitter.emit( + `KEY_DOWN_${this.descriptor}`, + e + ); + this.keyboardInput.eventEmitter.emit( + `KEY_INPUT_${this.descriptor}`, + this, + e + ); + } + } + }); + document.addEventListener('keyup', (e) => { + if (e.keyCode === this.keyCode) { + this.state = false; + this.keyboardInput.eventEmitter.emit( + `KEY_STATE_${this.descriptor}`, + e, + this.state + ); + + this.isDown = false; + this.isUp = true; + this.isJustPressed = false; + + this.keyboardInput.eventEmitter.emit(`KEY_UP_${this.descriptor}`, e); + this.keyboardInput.eventEmitter.emit( + `KEY_INPUT_${this.descriptor}`, + this, + e + ); + } + }); + } + + /** + * @memberof Key + * @description Creates on event on event emitter to listen for input + * @param {(key:Key, e:KeyboardEvent) => any} cb Callback to call on input + * @since 2.0.0 + */ + public onInput(cb: (key: Key, e: KeyboardEvent) => any) { + this.keyboardInput.eventEmitter.on(`KEY_INPUT_${this.descriptor}`, cb); + } } diff --git a/src/core/input/models/mouse.ts b/src/core/input/models/mouse.ts index 9ca9a56f..3eacb567 100644 --- a/src/core/input/models/mouse.ts +++ b/src/core/input/models/mouse.ts @@ -4,123 +4,111 @@ import Scene from '../../scene'; import MouseInput from '../mouseInput'; export default class Mouse { - /** - * @memberof Mouse - * @description The Mouse button - * @type number - * @since 2.0.0 - */ - public button: 0 | 1 | 2 | 3 | 4; + /** + * @memberof Mouse + * @description The Mouse button + * @type number + * @since 2.0.0 + */ + public button: 0 | 1 | 2 | 3 | 4; - /** - * @memberof Mouse - * @description The Mouse descriptor - * @type string - * @since 2.0.0 - */ - public descriptor: string; + /** + * @memberof Mouse + * @description The Mouse descriptor + * @type string + * @since 2.0.0 + */ + public descriptor: string; - /** - * @memberof Mouse - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof Mouse + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof Mouse - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof Mouse + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @memberof Mouse - * @description The MouseInput that the Mouse is attached to - * @type MouseInput - * @since 2.0.0 - */ - public mouseInput: MouseInput; + /** + * @memberof Mouse + * @description The MouseInput that the Mouse is attached to + * @type MouseInput + * @since 2.0.0 + */ + public mouseInput: MouseInput; - /** - * @constructor Mouse - * @description Creates a Mouse instance - * @param { 0 | 1 | 2 | 3 | 4 } button Mouse button - * @param {string} descriptor Mouse descriptor - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @param {MouseInput} mouseInput MouseInput that the Mouse is attached to - * @param { (e:MouseEvent) => any } [mouseDown] Mouse down callback - * @param { (e:MouseEvent) => any } [mouseUp] Mouse up callback - * @param { (e:MouseEvent) => any } [mouseMove] Mouse move callback - * @since 2.0.0 - */ - constructor( - button: 0 | 1 | 2 | 3 | 4, - descriptor: string, - game: Game, - scene: Scene, - mouseInput: MouseInput, - mouseDown?: (e: MouseEvent) => any, - mouseUp?: (e: MouseEvent) => any, - mouseMove?: (e: MouseEvent) => any - ) { - this.button = button; - this.descriptor = descriptor.toUpperCase(); - this.game = game; - this.scene = scene; - this.mouseInput = mouseInput; + /** + * @constructor Mouse + * @description Creates a Mouse instance + * @param { 0 | 1 | 2 | 3 | 4 } button Mouse button + * @param {string} descriptor Mouse descriptor + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @param {MouseInput} mouseInput MouseInput that the Mouse is attached to + * @param { (e:MouseEvent) => any } [mouseDown] Mouse down callback + * @param { (e:MouseEvent) => any } [mouseUp] Mouse up callback + * @param { (e:MouseEvent) => any } [mouseMove] Mouse move callback + * @since 2.0.0 + */ + constructor( + button: 0 | 1 | 2 | 3 | 4, + descriptor: string, + game: Game, + scene: Scene, + mouseInput: MouseInput, + mouseDown?: (e: MouseEvent) => any, + mouseUp?: (e: MouseEvent) => any, + mouseMove?: (e: MouseEvent) => any + ) { + this.button = button; + this.descriptor = descriptor.toUpperCase(); + this.game = game; + this.scene = scene; + this.mouseInput = mouseInput; - if (mouseDown) { - this.mouseInput.eventEmitter.on( - `MOUSE_DOWN_${this.descriptor}`, - mouseDown - ); - } + if (mouseDown) { + this.mouseInput.eventEmitter.on( + `MOUSE_DOWN_${this.descriptor}`, + mouseDown + ); + } - if (mouseUp) { - this.mouseInput.eventEmitter.on( - `MOUSE_UP_${this.descriptor}`, - mouseUp - ); - } + if (mouseUp) { + this.mouseInput.eventEmitter.on(`MOUSE_UP_${this.descriptor}`, mouseUp); + } - if (mouseMove) { - this.mouseInput.eventEmitter.on( - `MOUSE_MOVE_${this.descriptor}`, - mouseMove - ); - } + if (mouseMove) { + this.mouseInput.eventEmitter.on( + `MOUSE_MOVE_${this.descriptor}`, + mouseMove + ); + } - this.registerListeners(); - } + this.registerListeners(); + } - protected registerListeners() { - document.addEventListener('mousedown', (e) => { - if (e.button === this.button) { - this.mouseInput.eventEmitter.emit( - `MOUSE_DOWN_${this.descriptor}`, - e - ); - } - }); - document.addEventListener('mouseup', (e) => { - if (e.button === this.button) { - this.mouseInput.eventEmitter.emit( - `MOUSE_UP_${this.descriptor}`, - e - ); - } - }); - document.addEventListener('mousemove', (e) => { - if (e.button === this.button) { - this.mouseInput.eventEmitter.emit( - `MOUSE_MOVE_${this.descriptor}`, - e - ); - } - }); - } + protected registerListeners() { + document.addEventListener('mousedown', (e) => { + if (e.button === this.button) { + this.mouseInput.eventEmitter.emit(`MOUSE_DOWN_${this.descriptor}`, e); + } + }); + document.addEventListener('mouseup', (e) => { + if (e.button === this.button) { + this.mouseInput.eventEmitter.emit(`MOUSE_UP_${this.descriptor}`, e); + } + }); + document.addEventListener('mousemove', (e) => { + if (e.button === this.button) { + this.mouseInput.eventEmitter.emit(`MOUSE_MOVE_${this.descriptor}`, e); + } + }); + } } diff --git a/src/core/input/mouseInput.ts b/src/core/input/mouseInput.ts index d2aab570..9eb4dd39 100644 --- a/src/core/input/mouseInput.ts +++ b/src/core/input/mouseInput.ts @@ -12,114 +12,114 @@ import Mouse from './models/mouse'; * @since 1.0.0-beta */ export default class MouseInput { - /** - * @memberof MouseInput - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof MouseInput + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof MouseInput - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof MouseInput + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @memberof MouseInput - * @description The EventEmitter used to emit for Mouse events - * @type EventEmitter - * @since 2.0.0 - */ - public eventEmitter: EventEmitter; + /** + * @memberof MouseInput + * @description The EventEmitter used to emit for Mouse events + * @type EventEmitter + * @since 2.0.0 + */ + public eventEmitter: EventEmitter; - /** - * @memberof MouseInput - * @description All of the Mice added to the MouseInput - * @type { [key: string]: Mouse } - * @since 2.0.0 - */ - public mice: { - [key: string]: Mouse; - }; + /** + * @memberof MouseInput + * @description All of the Mice added to the MouseInput + * @type { [key: string]: Mouse } + * @since 2.0.0 + */ + public mice: { + [key: string]: Mouse; + }; - /** - * @memberof MouseInput - * @description Creates a MouseInput instance - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 2.0.0 - */ - constructor(game: Game, scene: Scene) { - this.game = game; - this.scene = scene; - this.eventEmitter = new EventEmitter(); + /** + * @memberof MouseInput + * @description Creates a MouseInput instance + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 2.0.0 + */ + constructor(game: Game, scene: Scene) { + this.game = game; + this.scene = scene; + this.eventEmitter = new EventEmitter(); - this.mice = {}; - } + this.mice = {}; + } - /** - * @memberof MouseInput - * @description Adds a Mouse to the MouseInput - * @param { 0 | 1 | 2 | 3 | 4 } button Mouse Button - * @param {string} descriptor The Mouse descriptor, used to set the value to MouseInput.mouse - * @param { (e: MouseEvent) => any } [mouseDown] Mouse down callback - * @param { (e: MouseEvent) => any } [mouseUp] Mouse up callback - * @param { (e: MouseEvent) => any } [mouseMove] Mouse move callback - * @returns {Mouse} - * @since 2.0.0 - */ - public addMouse( - button: 0 | 1 | 2 | 3 | 4, - descriptor: string, - mouseDown?: (e: MouseEvent) => any, - mouseUp?: (e: MouseEvent) => any, - mouseMove?: (e: MouseEvent) => any - ) { - const myMouse = new Mouse( - button, - descriptor, - this.game, - this.scene, - this, - mouseDown, - mouseUp, - mouseMove - ); + /** + * @memberof MouseInput + * @description Adds a Mouse to the MouseInput + * @param { 0 | 1 | 2 | 3 | 4 } button Mouse Button + * @param {string} descriptor The Mouse descriptor, used to set the value to MouseInput.mouse + * @param { (e: MouseEvent) => any } [mouseDown] Mouse down callback + * @param { (e: MouseEvent) => any } [mouseUp] Mouse up callback + * @param { (e: MouseEvent) => any } [mouseMove] Mouse move callback + * @returns {Mouse} + * @since 2.0.0 + */ + public addMouse( + button: 0 | 1 | 2 | 3 | 4, + descriptor: string, + mouseDown?: (e: MouseEvent) => any, + mouseUp?: (e: MouseEvent) => any, + mouseMove?: (e: MouseEvent) => any + ) { + const myMouse = new Mouse( + button, + descriptor, + this.game, + this.scene, + this, + mouseDown, + mouseUp, + mouseMove + ); - this.mice[descriptor] = myMouse; + this.mice[descriptor] = myMouse; - return myMouse; - } + return myMouse; + } - /** - * @memberof MouseInput - * @description Adds Mice to the MouseInput - * @param {Duck.Types.MouseInput.MouseBase[]} mice An array of Mouse Base configuration to use to add mice to the MouseInput - * @since 2.0.0 - */ - public addMice(mice: Duck.Types.MouseInput.MouseBase[]) { - mice.forEach((mouseBase) => { - this.addMouse( - mouseBase.button, - mouseBase.descriptor, - mouseBase.mouseDown, - mouseBase.mouseUp, - mouseBase.mouseDown - ); - }); - } + /** + * @memberof MouseInput + * @description Adds Mice to the MouseInput + * @param {Duck.Types.MouseInput.MouseBase[]} mice An array of Mouse Base configuration to use to add mice to the MouseInput + * @since 2.0.0 + */ + public addMice(mice: Duck.Types.MouseInput.MouseBase[]) { + mice.forEach((mouseBase) => { + this.addMouse( + mouseBase.button, + mouseBase.descriptor, + mouseBase.mouseDown, + mouseBase.mouseUp, + mouseBase.mouseDown + ); + }); + } - /** - * @memberof MouseInput - * @description Returns MouseInput.mice - * @returns {{ [key: string]: Mouse }} - * @since 2.0.0 - */ - public get inputs() { - return this.mice; - } + /** + * @memberof MouseInput + * @description Returns MouseInput.mice + * @returns {{ [key: string]: Mouse }} + * @since 2.0.0 + */ + public get inputs() { + return this.mice; + } } diff --git a/src/core/input/server/inputServer.ts b/src/core/input/server/inputServer.ts new file mode 100644 index 00000000..fae0874d --- /dev/null +++ b/src/core/input/server/inputServer.ts @@ -0,0 +1,50 @@ +import Game from '../../game'; +import Scene from '../../scene'; + +/** + * @class InputServer + * @classdesc Creates a DuckEngine InputServer + * @description The InputServer Class. Handles all input updates + * @since 3.0.0 + */ +export default class InputServer { + /** + * @memberof InputServer + * @description Game instance + * @type Game + * @since 3.0.0 + */ + public game: Game; + + /** + * @memberof InputServer + * @description Scene instance + * @type Scene + * @since 3.0.0 + */ + public scene: Scene; + + /** + * @constructor InputServer + * @description Creates a InputServer instance + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 3.0.0 + */ + constructor(game: Game, scene: Scene) { + this.game = game; + this.scene = scene; + } + + /** + * @memberof InputServer + * @description Uses InputServer.Scene.inputList to pool and update inputs such as touch and gamepad inputs, (Key and Mouse inputs are not pooled) + * + * *DO NOT CALL MANUALLY! CALLED IN SCENE.__TICK* + * + * @since 3.0.0 + */ + public __tick() { + // implement + } +} diff --git a/src/core/lights/staticLight.ts b/src/core/lights/staticLight.ts index f5bcbc7e..948a83b1 100644 --- a/src/core/lights/staticLight.ts +++ b/src/core/lights/staticLight.ts @@ -1,10 +1,10 @@ -import { Duck } from '../../index'; import convertColorToRGBA from '../../helper/color/convertColorToRGBA'; import Debug from '../debug/debug'; import Game from '../game'; import GameObject from '../gameobjects/gameObject'; import Texture from '../texture/texture'; import Scene from '../scene'; +import Color from '../renderer/models/color'; /** * @class StaticLight @@ -14,90 +14,80 @@ import Scene from '../scene'; * @since 1.0.0-beta */ export default class StaticLight extends GameObject<'color'> { - protected color: string; - protected alpha: Duck.Types.Helper.AlphaRange; + protected color: Color; + protected alpha: number; - /** - * @constructor StaticLight - * @description Creates an instance of a StaticLight - * @param {number} x X position - * @param {number} y Y position - * @param {number} r Radius - * @param {string} fillColor Color - * @param {Duck.Types.Helper.AlphaRange} alpha Alpha - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor( - x: number, - y: number, - r: number, - fillColor: string, - alpha: Duck.Types.Helper.AlphaRange, - game: Game, - scene: Scene - ) { - super( - 'circle', - x, - y, - 0, - 0, - r, - Texture.fromColor(fillColor, r, r), - game, - scene - ); - this.r = r; - this.alpha = alpha; - this.game = game; + /** + * @constructor StaticLight + * @description Creates an instance of a StaticLight + * @param {number} x X position + * @param {number} y Y position + * @param {number} r Radius + * @param {Color} color Color + * @param {number} alpha Alpha + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor( + x: number, + y: number, + r: number, + color: Color, + alpha: number, + game: Game, + scene: Scene + ) { + super('circle', x, y, 0, 0, r, Texture.fromColor(color, r, r), game, scene); + this.r = r; + this.alpha = alpha; + this.game = game; - this.visible = true; - this.zIndex = 2; + this.visible = true; + this.zIndex = 2; - this.color = fillColor; + this.color = color; - // convert all colors to RGBA - this.color = convertColorToRGBA(this.color, this.alpha); + // convert all colors to RGBA + this.color.value = convertColorToRGBA( + this.color.value as string, + this.alpha + ); - this.texture.texture = this.color; - } + this.texture.texture = this.color; + } - /** - * @description Draws the StaticLight. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - if (this.game.renderer.ctx) { - this.game.renderer.setBlendMode('lighten'); - this.game.renderer.drawCircle( - this.position.x, - this.position.y, - this.r, - this.texture.texture - ); - this.game.renderer.setBlendMode('source-over'); - } else { - new Debug.Error( - 'CanvasRenderingContext2D is undefined. Canvas is undefined.' - ); - } - } + /** + * @description Draws the StaticLight. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + if (this.game.renderer.ctx) { + this.game.renderer.setBlendMode('lighten'); + this.game.renderer.drawCircle( + this.position.x, + this.position.y, + this.r, + this.texture.texture + ); + this.game.renderer.setBlendMode('source-over'); + } else { + new Debug.Error( + 'CanvasRenderingContext2D is undefined. Canvas is undefined.' + ); + } + } - /** - * @memberof StaticLight - * @description Sets the fillColor with alpha - * @param {string} color Fill Color - * @param {Duck.Types.Helper.AlphaRange} alpha Alpha - * @since 2.0.0 - */ - public setFillColorAlpha( - color: string, - alpha: Duck.Types.Helper.AlphaRange - ) { - this.color = convertColorToRGBA(color, alpha); - } + /** + * @memberof StaticLight + * @description Sets the fillColor with alpha + * @param {string} color Fill Color + * @param {number} alpha Alpha + * @since 2.0.0 + */ + public setFillColorAlpha(color: string, alpha: number) { + this.color.value = convertColorToRGBA(color, alpha); + } } diff --git a/src/core/loader/loader.ts b/src/core/loader/loader.ts index a568d0d8..daa15584 100644 --- a/src/core/loader/loader.ts +++ b/src/core/loader/loader.ts @@ -19,500 +19,512 @@ import TextureBase from '../texture/textureBase'; * @since 1.0.0-beta */ export default class Loader { - /** - * @memberof Loader - * @description Game instance - * @type Game - * @since 1.0.0-beta - */ - public game: Game; - - /** - * @memberof Loader - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; - - /** - * @memberof Loader - * @description An array of loaded Textures - * @type Duck.Types.Loader.TextureStackItem>[] - * @since 2.0.0 - */ - public textureStack: Duck.Types.Loader.TextureStackItem< - TextureBase<'image'> - >[]; - - /** - * @memberof Loader - * @description An array of loaded JSON files - * @type Duck.Types.Loader.StackItem>[] - * @since 2.0.0 - */ - public jsonStack: Duck.Types.Loader.StackItem>[]; - - /** - * @memberof Loader - * @description An array of loaded HTML Documents - * @type Duck.Types.Loader.StackItem[] - * @since 2.0.0 - */ - public htmlStack: Duck.Types.Loader.StackItem[]; - - /** - * @memberof Loader - * @description An array of loaded XML Documents - * @type Duck.Types.Loader.StackItem[] - * @since 2.0.0 - */ - public xmlStack: Duck.Types.Loader.StackItem[]; - - /** - * @memberof Loader - * @description An array of loaded FontFaces - * @type Duck.Types.Loader.StackItem[] - * @since 2.0.0 - */ - public fontStack: Duck.Types.Loader.StackItem[]; - - /** - * @memberof Loader - * @description An array of loaded Audio elements - * @type Duck.Types.Loader.StackItem[] - * @since 2.0.0 - */ - public audioStack: Duck.Types.Loader.StackItem[]; - /** - * @constructor Loader - * @description Creates a Loader instance - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0-beta - */ - constructor(game: Game, scene: Scene) { - this.game = game; - this.scene = scene; - - this.textureStack = []; - this.jsonStack = []; - this.htmlStack = []; - this.xmlStack = []; - this.fontStack = []; - this.audioStack = []; - } - - protected async tryCache(prefix: string, key: string) { - return this.game.cacheManager.get(`${prefix}_${key}`); - } - - protected async saveCache(prefix: string, key: string, value: string) { - return this.game.cacheManager.set(`${prefix}_${key}`, value); - } - - /** - * @memberof Loader - * @description Loads an image and creates a texture, caches it if it does not already exist in the cache (clear cache if texture does not update - * if you edit the image src) - * @param {string} pathOrURL Path to the file or the URL - * @param {string} key Key of the texture, used to load the texture in sprites - * @param {number} w Width of image - * @param {number} h Height of image - * @since 2.0.0 - */ - public async loadTexture( - pathOrURL: string, - key: string, - w: number, - h: number - ) { - const image = new Image(); - image.width = w; - image.height = h; - - // try cache - const cacheData = await this.tryCache('texture', key); - if (cacheData) { - image.setAttribute('src', cacheData); // DATA URL object - - if (this.game.config.debug) { - new Debug.Log('Loaded texture from cache.'); - } - - const texture = new Texture<'image'>('image', image, w, h); - - this.textureStack.push({ - type: 'texture', - value: texture, - key, - dataType: 'base', - }); - - return image; - } else { - const res = await fetch(pathOrURL); - const blob = await res.blob(); - - const url = URL.createObjectURL(blob.slice(0, 4000)); - - image.src = url; - - const texture = new Texture<'image'>('image', image, w, h); - - this.textureStack.push({ - type: 'texture', - value: texture, - key, - dataType: 'base', - }); - - // save image in cache - getImageData( - image, - w, - h, - (data) => { - this.saveCache('texture', key, data); - }, - () => { - new Debug.Error( - 'Failed to save texture in cache, report this bug.' - ); - } - ); - - return image; - } - } - - /** - * @memberof Loader - * @description Loads an image and creates a texture sheet, caches it if it does not already exist in the cache (clear cache if texture does not update - * if you edit the image src) - * @param {string} pathOrURL Path to the file or the URL - * @param {string} key Key of the texture, used to load the texture in sprites and spritesheet - * @param {number} w Width of image - * @param {number} h Height of image - * @since 2.1.0 - */ - public async loadTextureSheet( - pathOrURL: string, - key: string, - frameWidth: number, - frameHeight: number, - rows: number, - cols: number - ) { - const image = new Image(); - image.width = frameWidth * cols; - image.height = frameHeight * rows; - - // try cache - const cacheData = await this.tryCache('texture_sheet', key); - if (cacheData) { - image.setAttribute('src', cacheData); // DATA URL object - - if (this.game.config.debug) { - new Debug.Log('Loaded texture sheet from cache.'); - } - - const texture = new TextureSheet( - image, - frameWidth, - frameHeight, - rows, - cols - ); - - this.textureStack.push({ - type: 'texture', - value: texture, - key, - dataType: 'sheet', - }); - - return image; - } else { - const res = await fetch(pathOrURL); - const blob = await res.blob(); - - const url = URL.createObjectURL(blob.slice(0, 4000)); - - image.src = url; - - const texture = new TextureSheet( - image, - frameWidth, - frameHeight, - rows, - cols - ); - - this.textureStack.push({ - type: 'texture', - value: texture, - key, - dataType: 'sheet', - }); - - // save image in cache - getImageData( - image, - frameWidth * cols, - frameHeight * rows, - (data) => { - this.saveCache('texture_sheet', key, data); - }, - () => { - new Debug.Error( - 'Failed to save texture sheet in cache, report this bug.' - ); - } - ); - - return image; - } - } - - public async loadTextureAtlas( - atlasKey: string, - texturePathOrURL: string, - jsonPathOrURL: string, - textureKey: string, - jsonKey: string, - imageW: number, - imageH: number - ) { - // load texture and json - // both try for cache - await this.loadTexture(texturePathOrURL, textureKey, imageW, imageH); - await this.loadJSON(jsonPathOrURL, jsonKey); - - // create TextureAtlas - const textureAtlas = new TextureAtlas( - textureKey, - jsonKey, - imageW, - imageH, - this.game, - this.scene - ); - - this.textureStack.push({ - type: 'texture', - value: textureAtlas, - key: atlasKey, - dataType: 'atlas', - }); - } - - /** - * @memberof Loader - * @description Loads a JSON file and adds it to the jsonStack, caches it if it does not already exist - * @param {string} pathOrURL Path to the file or the URL - * @param {string} key Key of the file to use to save it as - * @since 2.0.0 - */ - public async loadJSON( - pathOrURL: string, - key: string - ): Promise> { - // try cache - const cacheData = await this.tryCache('json', key); - if (cacheData) { - const json = JSON.parse(cacheData); - - if (this.game.config.debug) { - new Debug.Log('Loaded JSON from cache'); - } - - this.jsonStack.push({ - type: 'json', - value: json, - key, - }); - - return json; - } else { - const res = await fetch(pathOrURL); - const json: Record = await res.json(); - - this.jsonStack.push({ - type: 'json', - value: json, - key, - }); - - // save in cache - this.saveCache('json', key, JSON.stringify(json)); - - return json; - } - } - - /** - * @memberof Loader - * @description Loads a HTML file and adds it to the htmlStack - * @param {string} pathOrURL Path to the file or the URL - * @param {string} key Key of the file to use to save it as - * @since 2.0.0 - */ - public async loadHTML(pathOrURL: string, key: string) { - // try cache - const cacheData = await this.tryCache('html', key); - if (cacheData) { - const text = cacheData; - - if (this.game.config.debug) { - new Debug.Log('Loaded HTML from cache'); - } - - const html = new window.DOMParser().parseFromString( - text, - 'text/html' - ); - - this.htmlStack.push({ - type: 'html', - value: html, - key, - }); - - return html; - } else { - const res = await fetch(pathOrURL); - const text = await res.text(); - const html = new window.DOMParser().parseFromString( - text, - 'text/html' - ); - - this.htmlStack.push({ - type: 'html', - value: html, - key, - }); - - // save in cache - this.saveCache('html', key, text); - - return html; - } - } - - /** - * @memberof Loader - * @description Loads a XML file and adds it to the xmlStack - * @param {string} pathOrURL Path to the file or the URL - * @param {string} key Key of the file to use to save it as - * @since 2.0.0 - */ - public async loadXML(pathOrURL: string, key: string) { - // try cache - const cacheData = await this.tryCache('xml', key); - if (cacheData) { - const text = cacheData; - - if (this.game.config.debug) { - new Debug.Log('Loaded XML from cache'); - } - - const xml = new window.DOMParser().parseFromString( - text, - 'text/xml' - ); - - this.xmlStack.push({ - type: 'xml', - value: xml, - key, - }); - - return xml; - } else { - const res = await fetch(pathOrURL); - const text = await res.text(); - const xml = new window.DOMParser().parseFromString( - text, - 'text/xml' - ); - - this.xmlStack.push({ - type: 'xml', - value: xml, - key, - }); - - // save in cache - this.saveCache('xml', key, text); - - return xml; - } - } - - /** - * @memberof Loader - * @description Loads a font and adds it to the fontStack - * @param {string} fontFamily Font Family - * @param {string} pathOrURL Path to the file or the URL - * @param {string} key Key of the file to use to save it as - * @param {FontFaceDescriptors} [descriptors] Font Face Descriptors - * @since 2.0.0 - */ - public async loadFont( - fontFamily: string, - pathOrURL: string, - key: string, - descriptors?: FontFaceDescriptors - ) { - const font = new FontFace(fontFamily, `url(${pathOrURL})`, descriptors); - - const res = await font.load(); - - document.fonts.add(font); - - this.fontStack.push({ - type: 'font', - value: res, - key, - }); - - return res; - } - - /** - * @memberof Loader - * @description Loads an Audio file and adds it to the audioStack - * @param {string} pathOrURL Path to the file or the URL - * @param {string} key Key of the file to use to save it as - * @param {string} [mimeType] The mime type of the file, optional -> default: 'audio/mp3' - * @since 2.0.0 - */ - public async loadAudio( - pathOrURL: string, - key: string, - mimeType = 'audio/mp3' - ) { - const res = await fetch(pathOrURL); - const reader = res.body?.getReader(); - - const result = await reader?.read(); - - const blob = new Blob([result?.value] as unknown as BlobPart[], { - type: mimeType, - }); - - const url = window.URL.createObjectURL(blob); - const audio = new Audio(); - audio.src = url; - - this.audioStack.push({ - type: 'audio', - value: audio, - key, - }); - - return audio; - } + /** + * @memberof Loader + * @description Game instance + * @type Game + * @since 1.0.0-beta + */ + public game: Game; + + /** + * @memberof Loader + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; + + /** + * @memberof Loader + * @description An array of loaded Textures + * @type Duck.Types.Loader.TextureStackItem>[] + * @since 2.0.0 + */ + public textureStack: Duck.Types.Loader.TextureStackItem< + TextureBase<'image'> + >[]; + + /** + * @memberof Loader + * @description An array of loaded JSON files + * @type Duck.Types.Loader.StackItem>[] + * @since 2.0.0 + */ + public jsonStack: Duck.Types.Loader.StackItem>[]; + + /** + * @memberof Loader + * @description An array of loaded HTML Documents + * @type Duck.Types.Loader.StackItem[] + * @since 2.0.0 + */ + public htmlStack: Duck.Types.Loader.StackItem[]; + + /** + * @memberof Loader + * @description An array of loaded XML Documents + * @type Duck.Types.Loader.StackItem[] + * @since 2.0.0 + */ + public xmlStack: Duck.Types.Loader.StackItem[]; + + /** + * @memberof Loader + * @description An array of loaded FontFaces + * @type Duck.Types.Loader.StackItem[] + * @since 2.0.0 + */ + public fontStack: Duck.Types.Loader.StackItem[]; + + /** + * @memberof Loader + * @description An array of loaded Audio elements + * @type Duck.Types.Loader.StackItem[] + * @since 2.0.0 + */ + public audioStack: Duck.Types.Loader.StackItem[]; + + /** + * @memberof Loader + * @description An array of loaded AudioBuffer from an audio + * @type Duck.Types.Loader.StackItem[] + * @since 3.0.0 + */ + public audioBufferStack: Duck.Types.Loader.StackItem[]; + + /** + * @constructor Loader + * @description Creates a Loader instance + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0-beta + */ + constructor(game: Game, scene: Scene) { + this.game = game; + this.scene = scene; + + this.textureStack = []; + this.jsonStack = []; + this.htmlStack = []; + this.xmlStack = []; + this.fontStack = []; + this.audioStack = []; + this.audioBufferStack = []; + } + + protected async tryCache(prefix: string, key: string) { + return this.game.cacheManager.get(`${prefix}_${key}`); + } + + protected async saveCache(prefix: string, key: string, value: string) { + return this.game.cacheManager.set(`${prefix}_${key}`, value); + } + + /** + * @memberof Loader + * @description Loads an image and creates a texture, caches it if it does not already exist in the cache (clear cache if texture does not update + * if you edit the image src) + * @param {string} pathOrURL Path to the file or the URL + * @param {string} key Key of the texture, used to load the texture in sprites + * @param {number} w Width of image + * @param {number} h Height of image + * @since 2.0.0 + */ + public async loadTexture( + pathOrURL: string, + key: string, + w: number, + h: number + ) { + const image = new Image(); + image.width = w; + image.height = h; + + // try cache + const cacheData = await this.tryCache('texture', key); + if (cacheData) { + image.setAttribute('src', cacheData); // DATA URL object + + if (this.game.config.debug) { + new Debug.Log('Loaded texture from cache.'); + } + + const texture = new Texture<'image'>('image', image, w, h); + + this.textureStack.push({ + type: 'texture', + value: texture, + key, + dataType: 'base', + }); + + return image; + } else { + const res = await fetch(pathOrURL); + const blob = await res.blob(); + + const url = URL.createObjectURL(blob.slice(0, 4000)); + + image.src = url; + + const texture = new Texture<'image'>('image', image, w, h); + + this.textureStack.push({ + type: 'texture', + value: texture, + key, + dataType: 'base', + }); + + // save image in cache + getImageData( + image, + w, + h, + (data) => { + this.saveCache('texture', key, data); + }, + () => { + new Debug.Error('Failed to save texture in cache, report this bug.'); + } + ); + + return image; + } + } + + /** + * @memberof Loader + * @description Loads an image and creates a texture sheet, caches it if it does not already exist in the cache (clear cache if texture does not update + * if you edit the image src) + * @param {string} pathOrURL Path to the file or the URL + * @param {string} key Key of the texture, used to load the texture in sprites and spritesheet + * @param {number} w Width of image + * @param {number} h Height of image + * @since 2.1.0 + */ + public async loadTextureSheet( + pathOrURL: string, + key: string, + frameWidth: number, + frameHeight: number, + rows: number, + cols: number + ) { + const image = new Image(); + image.width = frameWidth * cols; + image.height = frameHeight * rows; + + // try cache + const cacheData = await this.tryCache('texture_sheet', key); + if (cacheData) { + image.setAttribute('src', cacheData); // DATA URL object + + if (this.game.config.debug) { + new Debug.Log('Loaded texture sheet from cache.'); + } + + const texture = new TextureSheet( + image, + frameWidth, + frameHeight, + rows, + cols + ); + + this.textureStack.push({ + type: 'texture', + value: texture, + key, + dataType: 'sheet', + }); + + return image; + } else { + const res = await fetch(pathOrURL); + const blob = await res.blob(); + + const url = URL.createObjectURL(blob.slice(0, 4000)); + + image.src = url; + + const texture = new TextureSheet( + image, + frameWidth, + frameHeight, + rows, + cols + ); + + this.textureStack.push({ + type: 'texture', + value: texture, + key, + dataType: 'sheet', + }); + + // save image in cache + getImageData( + image, + frameWidth * cols, + frameHeight * rows, + (data) => { + this.saveCache('texture_sheet', key, data); + }, + () => { + new Debug.Error( + 'Failed to save texture sheet in cache, report this bug.' + ); + } + ); + + return image; + } + } + + public async loadTextureAtlas( + atlasKey: string, + texturePathOrURL: string, + jsonPathOrURL: string, + textureKey: string, + jsonKey: string, + imageW: number, + imageH: number + ) { + // load texture and json + // both try for cache + await this.loadTexture(texturePathOrURL, textureKey, imageW, imageH); + await this.loadJSON(jsonPathOrURL, jsonKey); + + // create TextureAtlas + const textureAtlas = new TextureAtlas( + textureKey, + jsonKey, + imageW, + imageH, + this.game, + this.scene + ); + + this.textureStack.push({ + type: 'texture', + value: textureAtlas, + key: atlasKey, + dataType: 'atlas', + }); + } + + /** + * @memberof Loader + * @description Loads a JSON file and adds it to the jsonStack, caches it if it does not already exist + * @param {string} pathOrURL Path to the file or the URL + * @param {string} key Key of the file to use to save it as + * @since 2.0.0 + */ + public async loadJSON( + pathOrURL: string, + key: string + ): Promise> { + // try cache + const cacheData = await this.tryCache('json', key); + if (cacheData) { + const json = JSON.parse(cacheData); + + if (this.game.config.debug) { + new Debug.Log('Loaded JSON from cache'); + } + + this.jsonStack.push({ + type: 'json', + value: json, + key, + }); + + return json; + } else { + const res = await fetch(pathOrURL); + const json: Record = await res.json(); + + this.jsonStack.push({ + type: 'json', + value: json, + key, + }); + + // save in cache + this.saveCache('json', key, JSON.stringify(json)); + + return json; + } + } + + /** + * @memberof Loader + * @description Loads a HTML file and adds it to the htmlStack + * @param {string} pathOrURL Path to the file or the URL + * @param {string} key Key of the file to use to save it as + * @since 2.0.0 + */ + public async loadHTML(pathOrURL: string, key: string) { + // try cache + const cacheData = await this.tryCache('html', key); + if (cacheData) { + const text = cacheData; + + if (this.game.config.debug) { + new Debug.Log('Loaded HTML from cache'); + } + + const html = new window.DOMParser().parseFromString(text, 'text/html'); + + this.htmlStack.push({ + type: 'html', + value: html, + key, + }); + + return html; + } else { + const res = await fetch(pathOrURL); + const text = await res.text(); + const html = new window.DOMParser().parseFromString(text, 'text/html'); + + this.htmlStack.push({ + type: 'html', + value: html, + key, + }); + + // save in cache + this.saveCache('html', key, text); + + return html; + } + } + + /** + * @memberof Loader + * @description Loads a XML file and adds it to the xmlStack + * @param {string} pathOrURL Path to the file or the URL + * @param {string} key Key of the file to use to save it as + * @since 2.0.0 + */ + public async loadXML(pathOrURL: string, key: string) { + // try cache + const cacheData = await this.tryCache('xml', key); + if (cacheData) { + const text = cacheData; + + if (this.game.config.debug) { + new Debug.Log('Loaded XML from cache'); + } + + const xml = new window.DOMParser().parseFromString(text, 'text/xml'); + + this.xmlStack.push({ + type: 'xml', + value: xml, + key, + }); + + return xml; + } else { + const res = await fetch(pathOrURL); + const text = await res.text(); + const xml = new window.DOMParser().parseFromString(text, 'text/xml'); + + this.xmlStack.push({ + type: 'xml', + value: xml, + key, + }); + + // save in cache + this.saveCache('xml', key, text); + + return xml; + } + } + + /** + * @memberof Loader + * @description Loads a font and adds it to the fontStack + * @param {string} fontFamily Font Family + * @param {string} pathOrURL Path to the file or the URL + * @param {string} key Key of the file to use to save it as + * @param {FontFaceDescriptors} [descriptors] Font Face Descriptors + * @since 2.0.0 + */ + public async loadFont( + fontFamily: string, + pathOrURL: string, + key: string, + descriptors?: FontFaceDescriptors + ) { + const font = new FontFace(fontFamily, `url(${pathOrURL})`, descriptors); + + const res = await font.load(); + + document.fonts.add(font); + + this.fontStack.push({ + type: 'font', + value: res, + key, + }); + + return res; + } + + /** + * @memberof Loader + * @description Loads an Audio file and adds it to the audioStack + * @param {string} pathOrURL Path to the file or the URL + * @param {string} key Key of the file to use to save it as + * @param {string} [mimeType] The mime type of the file, optional -> default: 'audio/mp3' + * @since 2.0.0 + */ + public async loadAudio( + pathOrURL: string, + key: string, + mimeType = 'audio/mp3' + ) { + const res = await fetch(pathOrURL); + const reader = res.body?.getReader(); + + const result = await reader?.read(); + + const blob = new Blob([result?.value] as unknown as BlobPart[], { + type: mimeType, + }); + + const url = window.URL.createObjectURL(blob); + const audio = new Audio(); + audio.src = url; + + this.audioStack.push({ + type: 'audio', + value: audio, + key, + }); + + return audio; + } + + public async loadAudioBuffer(pathOrURL: string, key: string) { + const ctx = new AudioContext(); + + const res = await fetch(pathOrURL); + const arrayBuffer = await res.arrayBuffer(); + const audioBuffer = await ctx.decodeAudioData(arrayBuffer); + + this.audioBufferStack.push({ + type: 'audioBuffer', + value: audioBuffer, + key, + }); + + return audioBuffer; + } } diff --git a/src/core/map/map.ts b/src/core/map/map.ts index c351a509..b6f70114 100644 --- a/src/core/map/map.ts +++ b/src/core/map/map.ts @@ -12,113 +12,113 @@ import TileLayer from './tilelayer'; /** * @class Map * @classdesc Creates a DuckEngine Map - * @description The Map Class. Base Map class, extends by TileMap + * @description The Map Class. Base Map class, extended by TileMap * @since 1.2.0 */ export default class Map implements Duck.Types.Renderable { - /** - * @memberof Map - * @description A unique identifier for the Map - * @type number - * @since 2.0.0 - */ - public readonly id: string; + /** + * @memberof Map + * @description A unique identifier for the Map + * @type number + * @since 2.0.0 + */ + public readonly id: string; - /** - * @memberof Map - * @description "Shape" of the map, always "Map", used by Scene.displayList to distinguish between Renderables - * @type string - * @since 2.0.0 - */ - public readonly shape: string; + /** + * @memberof Map + * @description "Shape" of the map, always "Map", used by Scene.displayList to distinguish between Renderables + * @type string + * @since 2.0.0 + */ + public readonly shape: string; - /** - * @memberof Map - * @description The map origin point - * @type Vector2 - * @since 2.0.0 - */ - public origin: Vector2; + /** + * @memberof Map + * @description The map origin point + * @type Vector2 + * @since 2.0.0 + */ + public origin: Vector2; - /** - * @memberof Map - * @description An array of TileLayers - * @type TileLayers[] - * @since 2.0.0 - */ - public tileLayers: TileLayer[]; + /** + * @memberof Map + * @description An array of TileLayers + * @type TileLayers[] + * @since 2.0.0 + */ + public tileLayers: TileLayer[]; - /** - * @memberof Map - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof Map + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof Map - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof Map + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @memberof Map - * @description Determines if the Map is visible or not - * @type boolean - * @since 2.0.0 - */ - public visible: boolean; + /** + * @memberof Map + * @description Determines if the Map is visible or not + * @type boolean + * @since 2.0.0 + */ + public visible: boolean; - /** - * @memberof Map - * @description Used for depth sorting, default: 2 - * @type number - * @since 2.0.0 - */ - public zIndex: number; + /** + * @memberof Map + * @description Used for depth sorting, default: 2 + * @type number + * @since 2.0.0 + */ + public zIndex: number; - /** - * @memberof Map - * @description Determines if the Map should be visible by the current scene's current camera - * @type boolean - * @since 2.1.0 - */ - public culled: boolean; + /** + * @memberof Map + * @description Determines if the Map should be visible by the current scene's current camera + * @type boolean + * @since 2.1.0 + */ + public culled: boolean; - /** - * @constructor Map - * @description Creates a Map instance. - * @param {TileLayer[]} tileLayers An array of TileLayers - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 2.0.0 - */ - constructor( - origin: Duck.Types.Math.Vector2Like, - tileLayers: TileLayer[], - game: Game, - scene: Scene - ) { - this.id = uniqueID(); - this.shape = 'map'; - this.origin = Vector2.fromVector2Like(origin); - this.tileLayers = tileLayers; - this.game = game; - this.scene = scene; + /** + * @constructor Map + * @description Creates a Map instance. + * @param {TileLayer[]} tileLayers An array of TileLayers + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 2.0.0 + */ + constructor( + origin: Duck.Types.Math.Vector2Like, + tileLayers: TileLayer[], + game: Game, + scene: Scene + ) { + this.id = uniqueID(); + this.shape = 'map'; + this.origin = Vector2.fromVector2Like(origin); + this.tileLayers = tileLayers; + this.game = game; + this.scene = scene; - this.visible = true; - this.zIndex = 2; - this.culled = true; - } + this.visible = true; + this.zIndex = 2; + this.culled = true; + } - /** - * @description Draws the map. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() {} + /** + * @description Draws the map. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() {} } diff --git a/src/core/map/tile.ts b/src/core/map/tile.ts index 3307aa1e..9b8b966b 100644 --- a/src/core/map/tile.ts +++ b/src/core/map/tile.ts @@ -8,50 +8,50 @@ import Vector2 from '../math/vector2'; * @since 2.0.0 */ export default class Tile { - /** - * @memberof Tile - * @description Unique identifier for the Tile - * @type string - * @since 2.0.0 - */ - public readonly id: string; + /** + * @memberof Tile + * @description Unique identifier for the Tile + * @type string + * @since 2.0.0 + */ + public readonly id: string; - /** - * @memberof Tile - * @description Position of the tile - * @type Vector2 - * @since 2.0.0 - */ - public position: Vector2; + /** + * @memberof Tile + * @description Position of the tile + * @type Vector2 + * @since 2.0.0 + */ + public position: Vector2; - /** - * @memberof Tile - * @description Width of the tile - * @type number - * @since 2.0.0 - */ - public w: number; + /** + * @memberof Tile + * @description Width of the tile + * @type number + * @since 2.0.0 + */ + public w: number; - /** - * @memberof Tile - * @description Height of the tile - * @type number - * @since 2.0.0 - */ - public h: number; + /** + * @memberof Tile + * @description Height of the tile + * @type number + * @since 2.0.0 + */ + public h: number; - /** - * @constructor Tile - * @description Creates a Tile instance - * @param {number} x X position of the Tile - * @param {number} y Y position of the Tile - * @param {number} w Width of the Tile - * @param {number} h Height of the Tile - */ - constructor(x: number, y: number, w: number, h: number) { - this.id = uniqueID(); - this.position = new Vector2(x, y); - this.w = w; - this.h = h; - } + /** + * @constructor Tile + * @description Creates a Tile instance + * @param {number} x X position of the Tile + * @param {number} y Y position of the Tile + * @param {number} w Width of the Tile + * @param {number} h Height of the Tile + */ + constructor(x: number, y: number, w: number, h: number) { + this.id = uniqueID(); + this.position = new Vector2(x, y); + this.w = w; + this.h = h; + } } diff --git a/src/core/map/tilelayer.ts b/src/core/map/tilelayer.ts index d9211bea..e247273c 100644 --- a/src/core/map/tilelayer.ts +++ b/src/core/map/tilelayer.ts @@ -9,74 +9,74 @@ import Tileset from './tileset'; * @since 1.0.0-beta */ export default class TileLayer { - /** - * @memberof TileLayer - * @description Tileset to relate map info to - * @type Tileset - * @since 2.0.0 - */ - public tileset: Tileset; + /** + * @memberof TileLayer + * @description Tileset to relate map info to + * @type Tileset + * @since 2.0.0 + */ + public tileset: Tileset; - /** - * @memberof TileLayer - * @description A 2D array of numbers that relates to Tiles on a Tileset - * @type number[][] - * @since 2.0.0 - */ - public map: number[][]; + /** + * @memberof TileLayer + * @description A 2D array of numbers that relates to Tiles on a Tileset + * @type number[][] + * @since 2.0.0 + */ + public map: number[][]; - /** - * @memberof TileLayer - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof TileLayer + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof TileLayer - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof TileLayer + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @memberof TileLayer - * @description Used for depth sorting - * @type number - * @since 2.0.0 - */ - public zIndex: number; + /** + * @memberof TileLayer + * @description Used for depth sorting + * @type number + * @since 2.0.0 + */ + public zIndex: number; - /** - * @memberof TileLayer - * @description Determines if the TileLayer is visible or not - * @type boolean - * @since 2.0.0 - */ - public visible: boolean; - /** - * @param {Tileset} tileset Tileset that the 2D array relates to - * @param {number[][]} map A 2D array of numbers that relates to the Tileset - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @param {number} [zIndex=2] zIndex, optional -> defaults: 2 - * @param {boolean} [visible=true] visible, optional -> defaults: true - */ - constructor( - tileset: Tileset, - map: number[][], - game: Game, - scene: Scene, - zIndex = 2, - visible = true - ) { - this.tileset = tileset; - this.map = map; - this.game = game; - this.scene = scene; - this.zIndex = zIndex; - this.visible = visible; - } + /** + * @memberof TileLayer + * @description Determines if the TileLayer is visible or not + * @type boolean + * @since 2.0.0 + */ + public visible: boolean; + /** + * @param {Tileset} tileset Tileset that the 2D array relates to + * @param {number[][]} map A 2D array of numbers that relates to the Tileset + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @param {number} [zIndex=2] zIndex, optional -> defaults: 2 + * @param {boolean} [visible=true] visible, optional -> defaults: true + */ + constructor( + tileset: Tileset, + map: number[][], + game: Game, + scene: Scene, + zIndex = 2, + visible = true + ) { + this.tileset = tileset; + this.map = map; + this.game = game; + this.scene = scene; + this.zIndex = zIndex; + this.visible = visible; + } } diff --git a/src/core/map/tilemap.ts b/src/core/map/tilemap.ts index 75162717..83c048a6 100644 --- a/src/core/map/tilemap.ts +++ b/src/core/map/tilemap.ts @@ -12,72 +12,69 @@ import TileLayer from './tilelayer'; * @since 1.0.0 */ export default class TileMap extends Map { - /** - * @constructor TileMap - * @description Creates a TileMap instance. - * @param {TileLayer[]} tileLayers An array of TileLayers - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 1.0.0 - */ - constructor( - origin: Duck.Types.Math.Vector2Like, - tileLayers: TileLayer[], - game: Game, - scene: Scene - ) { - super(origin, tileLayers, game, scene); - } + /** + * @constructor TileMap + * @description Creates a TileMap instance. + * @param {TileLayer[]} tileLayers An array of TileLayers + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 1.0.0 + */ + constructor( + origin: Duck.Types.Math.Vector2Like, + tileLayers: TileLayer[], + game: Game, + scene: Scene + ) { + super(origin, tileLayers, game, scene); + } - /** - * @description Draws the tilemap. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - */ - public _draw() { - this.sortTileLayers().forEach((layer) => { - for (let row = 0; row < layer.map.length; row++) { - for (let col = 0; col < layer.map[row].length; col++) { - const tile = layer.tileset.getTile(layer.map[row][col]); + /** + * @description Draws the tilemap. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + */ + public _draw() { + this.sortTileLayers().forEach((layer) => { + for (let row = 0; row < layer.map.length; row++) { + for (let col = 0; col < layer.map[row].length; col++) { + const tile = layer.tileset.getTile(layer.map[row][col]); - if (tile) { - if ( - this.game.renderer.ctx && - layer.tileset.texture.texture - ) { - this.game.renderer.ctx.drawImage( - layer.tileset.texture.texture, - tile.position.x, - tile.position.y, - layer.tileset.tileW, - layer.tileset.tileH, - layer.tileset.tileW * col + this.origin.x, - layer.tileset.tileH * row + this.origin.y, - layer.tileset.tileW, - layer.tileset.tileH - ); - } - } - } - } - }); - } + if (tile) { + if (this.game.renderer.ctx && layer.tileset.texture.texture) { + this.game.renderer.ctx.drawImage( + layer.tileset.texture.texture, + tile.position.x, + tile.position.y, + layer.tileset.tileW, + layer.tileset.tileH, + layer.tileset.tileW * col + this.origin.x, + layer.tileset.tileH * row + this.origin.y, + layer.tileset.tileW, + layer.tileset.tileH + ); + } + } + } + } + }); + } - /** - * @memberof Tilemap - * @description Gets visible layers based on filter, then depth sorts the layers - * @param {boolean} [filter=true] - * @returns {TileLayer[]} - * @since 2.0.0 - */ - public sortTileLayers(filter = true) { - const visibleLayers = this.tileLayers.filter( - (layer) => layer.visible === filter - ); - const depthSortedLayers = [...visibleLayers].sort( - (layer, layer2) => layer.zIndex - layer2.zIndex - ); - return depthSortedLayers; - } + /** + * @memberof Tilemap + * @description Gets visible layers based on filter, then depth sorts the layers + * @param {boolean} [filter=true] + * @returns {TileLayer[]} + * @since 2.0.0 + */ + public sortTileLayers(filter = true) { + const visibleLayers = this.tileLayers.filter( + (layer) => layer.visible === filter + ); + const depthSortedLayers = [...visibleLayers].sort( + (layer, layer2) => layer.zIndex - layer2.zIndex + ); + return depthSortedLayers; + } } diff --git a/src/core/map/tileset.ts b/src/core/map/tileset.ts index 1738789d..88803021 100644 --- a/src/core/map/tileset.ts +++ b/src/core/map/tileset.ts @@ -11,130 +11,128 @@ import Tile from './tile'; * @since 2.0.0 */ export default class Tileset { - /** - * @memberof Tileset - * @description The Tileset image texture - * @type Texture<'image'> - * @since 2.0.0 - */ - public texture: Texture<'image'>; + /** + * @memberof Tileset + * @description The Tileset image texture + * @type Texture<'image'> + * @since 2.0.0 + */ + public texture: Texture<'image'>; - /** - * @memberof Tileset - * @description Width of each Tile - * @type number - * @since 2.0.0 - */ - public tileW: number; + /** + * @memberof Tileset + * @description Width of each Tile + * @type number + * @since 2.0.0 + */ + public tileW: number; - /** - * @memberof Tileset - * @description Height of each Tile - * @type number - * @since 2.0.0 - */ - public tileH: number; + /** + * @memberof Tileset + * @description Height of each Tile + * @type number + * @since 2.0.0 + */ + public tileH: number; - /** - * @memberof Tileset - * @description Number of rows in the tileset image - * @type number - * @since 2.0.0 - */ - public rows: number; + /** + * @memberof Tileset + * @description Number of rows in the tileset image + * @type number + * @since 2.0.0 + */ + public rows: number; - /** - * @memberof Tileset - * @description Number of columns in the tileset image - * @type number - * @since 2.0.0 - */ - public cols: number; + /** + * @memberof Tileset + * @description Number of columns in the tileset image + * @type number + * @since 2.0.0 + */ + public cols: number; - /** - * @memberof Tileset - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof Tileset + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof Tileset - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof Tileset + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @memberof Tileset - * @description Array of tiles that are generated from the Tileset - * @type Tile[] - * @since 2.0.0 - */ - public tiles: Tile[]; + /** + * @memberof Tileset + * @description Array of tiles that are generated from the Tileset + * @type Tile[] + * @since 2.0.0 + */ + public tiles: Tile[]; - /** - * @constructor Tileset - * @description Creates a Tileset instance - * @param {string} textureKey Key to the tileset image texture - * @param {number} tileW Width of each Tile - * @param {number} tileH Height of each Tile - * @param {number} rows Number of rows in the tileset image texture - * @param {number} cols Number of columns in the tileset image texture - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 2.0.0 - */ - constructor( - textureKey: string, - tileW: number, - tileH: number, - rows: number, - cols: number, - game: Game, - scene: Scene - ) { - this.texture = scene.loader.textureStack.find( - (v) => v.key === textureKey - )!.value; - this.tileW = tileW; - this.tileH = tileH; - this.rows = rows; - this.cols = cols; - this.game = game; - this.scene = scene; + /** + * @constructor Tileset + * @description Creates a Tileset instance + * @param {string} textureKey Key to the tileset image texture + * @param {number} tileW Width of each Tile + * @param {number} tileH Height of each Tile + * @param {number} rows Number of rows in the tileset image texture + * @param {number} cols Number of columns in the tileset image texture + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 2.0.0 + */ + constructor( + textureKey: string, + tileW: number, + tileH: number, + rows: number, + cols: number, + game: Game, + scene: Scene + ) { + this.texture = scene.loader.textureStack.find( + (v) => v.key === textureKey + )!.value; + this.tileW = tileW; + this.tileH = tileH; + this.rows = rows; + this.cols = cols; + this.game = game; + this.scene = scene; - this.tiles = []; + this.tiles = []; - this.generateTiles(); - } + this.generateTiles(); + } - protected generateTiles() { - for (let rowIndex = 0; rowIndex < this.rows; rowIndex++) { - for (let colIndex = 0; colIndex < this.cols; colIndex++) { - const tileX = colIndex * this.tileW; - const tileY = rowIndex * this.tileH; + protected generateTiles() { + for (let rowIndex = 0; rowIndex < this.rows; rowIndex++) { + for (let colIndex = 0; colIndex < this.cols; colIndex++) { + const tileX = colIndex * this.tileW; + const tileY = rowIndex * this.tileH; - this.tiles.push( - this.createTile(tileX, tileY, this.tileW, this.tileH) - ); - } - } - } + this.tiles.push(this.createTile(tileX, tileY, this.tileW, this.tileH)); + } + } + } - protected createTile(x: number, y: number, w: number, h: number) { - return new Tile(x, y, w, h); - } + protected createTile(x: number, y: number, w: number, h: number) { + return new Tile(x, y, w, h); + } - /** - * @memberof Tileset - * @description Gets the Tile based on index - * @param {number} num Index - * @since 2.0.0 - */ - public getTile(num: number): Tile | undefined { - return this.tiles[num]; - } + /** + * @memberof Tileset + * @description Gets the Tile based on index + * @param {number} num Index + * @since 2.0.0 + */ + public getTile(num: number): Tile | undefined { + return this.tiles[num]; + } } diff --git a/src/core/math/clamp.ts b/src/core/math/clamp.ts index 8b6cc5e4..73d90e8c 100644 --- a/src/core/math/clamp.ts +++ b/src/core/math/clamp.ts @@ -7,7 +7,7 @@ * @since 1.0.0-beta */ export default function clamp(x: number, min: number, max: number) { - if (x < min) x = min; - else if (x > max) x = max; - return x; + if (x < min) x = min; + else if (x > max) x = max; + return x; } diff --git a/src/core/math/lerp.ts b/src/core/math/lerp.ts index 25f6b32c..fcb5ddc6 100644 --- a/src/core/math/lerp.ts +++ b/src/core/math/lerp.ts @@ -7,5 +7,5 @@ * @since 2.0.0 */ export default function lerp(start: number, end: number, amount: number) { - return (1 - amount) * start + amount * end; + return (1 - amount) * start + amount * end; } diff --git a/src/core/math/randomFloat.ts b/src/core/math/randomFloat.ts index 331655b7..8bb15c85 100644 --- a/src/core/math/randomFloat.ts +++ b/src/core/math/randomFloat.ts @@ -6,7 +6,7 @@ * @param {number} [fixed=2] Number to fix the float to, optional -> defaults: 2 */ export default function randomFloat(min: number, max: number, fixed?: number) { - const num = Math.random() * (max - min) + min; - const res = num.toFixed(fixed || 2); - return Number(res); + const num = Math.random() * (max - min) + min; + const res = num.toFixed(fixed || 2); + return Number(res); } diff --git a/src/core/math/randomInt.ts b/src/core/math/randomInt.ts index 935e65fd..b964aa75 100644 --- a/src/core/math/randomInt.ts +++ b/src/core/math/randomInt.ts @@ -5,5 +5,5 @@ * @param {number} max Maximum */ export default function randomInt(min: number, max: number) { - return Math.floor(Math.random() * (max - min + 1) + min); + return Math.floor(Math.random() * (max - min + 1) + min); } diff --git a/src/core/math/vector2.ts b/src/core/math/vector2.ts index ea61044c..87ff104a 100644 --- a/src/core/math/vector2.ts +++ b/src/core/math/vector2.ts @@ -9,703 +9,702 @@ import clamp from './clamp'; * @since 2.0.0 */ export default class Vector2 { - /** - * @constructor Vector2 - * @description Creates a Vector2 instance - * @param {number} [x=0] X position, optional -> defaults: 0 - * @param {number} [y=0] Y position, optional -> defaults: 0 - * @since 2.0.0 - */ - constructor(public x = 0, public y = 0) {} - - /** - * @memberof Vector2 - * @description Sets the values of the Vector2 - * @param {number} x X position to setValue of - * @param {number} y Y position to setValue of - * @returns {Vector2} - * @since 2.0.0 - */ - public setValues(x: number, y: number) { - this.x = x; - this.y = y; - return this; - } - - /** - * @memberof Vector2 - * @description Sets the values of the Vector2 based on another Vector2 - * @param {number} vector Vector2 to use to set the position - * @returns {Vector2} - * @since 2.0.0 - */ - public setValuesVec(vector: Vector2) { - this.x = vector.x; - this.y = vector.y; - return this; - } - - /** - * @memberof Vector2 - * @description Adds a Vector2 - * @param {Vector2} vector Vector2 to be added to - * @returns {Vector2} - * @since 2.0.0 - */ - public add(vector: Vector2) { - this.x += vector.x; - this.y += vector.y; - return this; - } - - /** - * @memberof Vector2 - * @description Adds a number to the x and y properties - * @param {number} number Number to add to x and y properties - * @returns {Vector2} - * @since 2.0.0 - */ - public addNumber(number: number) { - this.x += number; - this.y += number; - return this; - } - - /** - * @memberof Vector2 - * @description Subtracts a Vector2 - * @param {Vector2} vector Vector2 to be subtracted to - * @returns {Vector2} - * @since 2.0.0 - */ - public subtract(vector: Vector2) { - this.x -= vector.x; - this.y -= vector.y; - return this; - } - - /** - * @memberof Vector2 - * @description Subtracts a number from the x and y properties - * @param {number} number Number to subtract from x and y properties - * @returns {Vector2} - * @since 2.0.0 - */ - public subtractNumber(number: number) { - this.x -= number; - this.y -= number; - return this; - } - - /** - * @memberof Vector2 - * @description Multiplies a Vector2 - * @param {Vector2} vector Vector2 to be multiplied to - * @returns {Vector2} - * @since 2.0.0 - */ - public multiply(vector: Vector2) { - this.x *= vector.x; - this.y *= vector.y; - return this; - } - - /** - * @memberof Vector2 - * @description Multiplies a number to the x and y properties - * @param {number} number Number to multiply to x and y properties - * @returns {Vector2} - * @since 2.0.0 - */ - public multiplyNumber(number: number) { - this.x *= number; - this.y *= number; - return this; - } - - /** - * @memberof Vector2 - * @description Divides a Vector2 - * @param {Vector2} vector Vector2 to be divided to - * @returns {Vector2} - * @since 2.0.0 - */ - public divide(vector: Vector2) { - this.x /= vector.x; - this.y /= vector.y; - return this; - } - - /** - * @memberof Vector2 - * @description Divides a number to the x and y properties - * @param {number} number Number to divide to x and y properties - * @returns {Vector2} - * @since 2.0.0 - */ - public divideNumber(number: number) { - this.x /= number; - this.y /= number; - return this; - } - - /** - * @memberof Vector2 - * @description Rounds the Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public round() { - this.x = Math.round(this.x); - this.y = Math.round(this.y); - return this; - } - - /** - * @memberof Vector2 - * @description Gets the angle between two Vector2s - * @param {Vector2} vector A Vector2 to get the angle between from - * @returns {number} - * @since 2.0.0 - */ - public angleBetween(vector: Vector2) { - return Math.atan2( - this.x * vector.y - this.y * vector.x, - this.x * vector.x + this.y * vector.y - ); - } - - /** - * @memberof Vector2 - * @description Gets the angle to two Vector2s - * @param {Vector2} vector A Vector2 to get the angle to from - * @returns {number} - * @since 2.0.0 - */ - public angleTo(vector: Vector2) { - return Math.atan2(vector.y - this.y, vector.x - this.x); - } - - /** - * @memberof Vector2 - * @description Clones the current Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public clone() { - return new Vector2(this.x, this.y); - } - - /** - * @memberof Vector2 - * @description Gets the distance from another Vector2 - * @param {Vector2} vector A Vector2 to get the distance from - * @returns {number} - * @since 2.0.0 - */ - public distance(vector: Vector2) { - return Math.sqrt( - (vector.x - this.x) * (vector.x - this.x) + - (vector.y - this.y) * (vector.y - this.y) - ); - } - - /** - * @memberof Vector2 - * @description Gets the distance squared from another Vector2 - * @param {Vector2} vector A Vector2 to get the distance from - * @returns {number} - * @since 2.0.0 - */ - public distanceSqr(vector: Vector2) { - return ( - (vector.x - this.x) * (vector.x - this.x) + - (vector.y - this.y) * (vector.y - this.y) - ); - } - - /** - * @memberof Vector2 - * @description Gets the dot product with another Vector2 - * @param {Vector2} vector A Vector2 to get the dot product from - * @returns {number} - * @since 2.0.0 - */ - public dot(vector: Vector2) { - return this.x * vector.x + this.y * vector.y; - } - - /** - * @memberof Vector2 - * @description Gets the cross dot product with another Vector2 - * @param {Vector2} vector A Vector2 to get the cross dot product from - * @returns {number} - * @since 2.0.0 - */ - public crossProduct(vector: Vector2) { - return this.x * vector.y - this.y * vector.x; - } - - /** - * @memberof Vector2 - * @description Checks if another Vector2 is equal on both axises - * @param {Vector2} vector A Vector2 to compare with - * @returns {boolean} - * @since 2.0.0 - */ - public equals(vector: Vector2) { - return this.x === vector.x && this.y === vector.y; - } - - /** - * @memberof Vector2 - * @description Gets the perpendicular values of the Vector2 - * @param {Vector2} [resultVector] The new Vector2 to save the value to, optional -> defaults: new Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public perpendicular(resultVector?: Vector2) { - resultVector = resultVector || new Vector2(); - return resultVector.setValues(-this.y, this.x); - } - - /** - * @memberof Vector2 - * @description Gradually interpolates the Vector2 towards another Vector2 by an amount - * @param {Vector2} current The Current Vector - * @param {Vector2} target The Target Vector2 - * @param {number} maxDistanceDelta The amount to increase by - * @returns {Vector2} - * @since 2.0.0 - */ - public moveTowards( - current: Vector2, - target: Vector2, - maxDistanceDelta: number - ) { - const toVector_x = target.x - current.x; - const toVector_y = target.y - current.y; - - const sqDist = toVector_x * toVector_x + toVector_y * toVector_y; - - if ( - sqDist === 0 || - (maxDistanceDelta >= 0 && - sqDist <= maxDistanceDelta * maxDistanceDelta) - ) { - return target; - } - - const dist = Math.sqrt(sqDist); - - const newX = current.x + (toVector_x / dist) * maxDistanceDelta; - const newY = current.y + (toVector_y / dist) * maxDistanceDelta; - - return new Vector2(newX, newY); - } - - /** - * @memberof Vector2 - * @description Normalizes the Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public normalize() { - const mag = this.magnitude(); - - if (mag > 0) { - this.divideNumber(mag); - } - - return this; - } - - /** - * @memberof Vector2 - * @description Gets the normal value of the Vector2 and another Vector2 - * @param - * @param {Vector2} [resultVector] The new Vector2 to save the value to, optional -> defaults: new Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public getNormal(vector: Vector2, resultVector?: Vector2) { - resultVector = resultVector || new Vector2(); - return resultVector - .setValues(vector.y - this.y, this.x - vector.x) - .normalize(); - } - - /** - * @memberof Vector2 - * @description Determines if Vector2.x and Vector2.y are both equal to 0 - * @returns {boolean} - * @since 2.0.0 - */ - public isZero() { - return this.x === 0 && this.y === 0; - } - - /** - * @memberof Vector - * @description Scales the Vector2 by a scalar Vector2 - * @param {Vector2} scalar A Vector2 that is used to scale the current Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public scale(scalar: Vector2) { - this.x *= scalar.x; - this.y *= scalar.y; - - return this; - } - - /** - * @memberof Vector2 - * @description Sets Vector2.x and Vector2.y to their negative values - * @returns {Vector2} - * @since 2.0.0 - */ - public negate() { - this.x = -this.x; - this.y = -this.y; - - return this; - } - - /** - * @memberof Vector2 - * @description Returns the magnitude or length of the Vector2 - * @returns {number} - * @since 2.0.0 - */ - public magnitude() { - return Math.sqrt(this.x * this.x + this.y * this.y); - } - - /** - * @memberof Vector2 - * @description Returns the magnitude/lenth squared of the Vector2 - * @returns {number} - * @since 2.0.0 - */ - public magnitudeSqr() { - return this.x * this.x + this.y * this.y; - } - - /** - * @memberof Vector2 - * @description Scales the Vector2 by the magnitude or length - * @param magnitude The magnitude or length of the Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public scaleToMagnitude(magnitude: number) { - const k = magnitude / this.magnitude(); - this.x *= k; - this.y *= k; - return this; - } - - /** - * @memberof Vector2 - * @description Returns the string version of the Vector2 - * @example console.log(new Vector2(0, 0).toString()) // Vector2(0, 0) - * @returns {string} - * @since 2.0.0 - */ - public toString() { - return `Vector2(${this.x}, ${this.y})`; - } - - /** - * @memberof Vector2 - * @description Sets the values to be precise by using Number.toPrecision - * @param {number} precision The precision - * @returns {Vector2} - * @since 2.0.0 - */ - public toPrecision(precision: number) { - this.x = Number(this.x.toPrecision(precision)); - this.y = Number(this.y.toPrecision(precision)); - - return this; - } - - /** - * @memberof Vector2 - * @description Adds to the Vector2 by an amount - * @param {number} dx Delta x, the amount to increase the x value by - * @param {number} dy Delta y, the amount to increase the y value by - * @returns {Vector2} - * @since 2.0.0 - */ - public translate(dx: number, dy: number) { - this.x += dx; - this.y += dy; - return this; - } - - /** - * @memberof Vector2 - * @description Adds to the Vector2.x by an amount - * @param {number} dx Delta x, the amount to increase the x value by - * @returns {Vector2} - * @since 2.0.0 - */ - public translateX(dx: number) { - this.x += dx; - return this; - } - - /** - * @memberof Vector2 - * @description Adds to the Vector2.y by an amount - * @param {number} dy Delta y, the amount to increase the y value by - * @returns {Vector2} - * @since 2.0.0 - */ - public translateY(dy: number) { - this.x += dy; - return this; - } - - /** - * @memberof Vector2 - * @description Gets the dot product using three different Vector2s - * @param {Vector2} a A Vector2 - * @param {Vector2} b A Vector2 - * @param {Vector2} c A Vector2 - * @param {Vector2} [resultVector=Vector2] A Vector2 that the result is saved in, optional -> defaults: new Vector2 - * @returns {Vector2} - * @since 2.0.0 - */ - public tripleProduct( - a: Vector2, - b: Vector2, - c: Vector2, - resultVector?: Vector2 - ) { - resultVector = resultVector || new Vector2(); - const ac = a.dot(c); - const bc = b.dot(c); - return resultVector.setValues(b.x * ac - a.x * bc, b.y * ac - a.y * bc); - } - - /** - * @memberof Vector2 - * @description Clamps the values to a min and max - * @param {number} min The min value - * @param {number} max The max value - * @returns {Vector2} - * @since 2.0.0 - */ - public clamp(min: number, max: number) { - this.x = clamp(this.x, min, max); - this.y = clamp(this.y, min, max); - - return this; - } - - /** - * @memberof Vector2 - * @description Clamps the values to a min - * @param {number} min The min value - * @returns {Vector2} - * @since 2.0.0 - */ - public clampMin(min: number) { - if (this.x < min) { - this.x = min; - } - if (this.y < min) { - this.y = min; - } - - return this; - } - - /** - * @memberof Vector2 - * @description Clamps the values to a max - * @param {number} max The max value - * @returns {Vector2} - * @since 2.0.0 - */ - public clampMax(max: number) { - if (this.x > max) { - this.x = max; - } - if (this.y > max) { - this.y = max; - } - - return this; - } - - /** - * @memberof Vector2 - * @description Rotates the Vector2 based on degrees - * @param {number} degrees The angle in degrees - * @param {Vector2} [center] The center Vector relative to the Vector, optional -> defaults: Vector2.ZERO - * @returns {Vector2} - * @since 2.0.0 - */ - public rotate(degrees: number, center = Vector2.ZERO) { - const radians = degToRadians(degrees); - - const cx = center.x || 0; - const cy = center.y || 0; - - const c = Math.cos(radians), - s = Math.sin(radians); - - const x = this.x - cx; - const y = this.y - cy; - - this.x = x * c - y * s + cx; - this.y = x * s + y * c + cy; - - return this; - } - - /** - * @memberof Vector2 - * @description Reflects the Vector2, returns the opposite value on a number line - * - * @example new Vector2(100, 50).reflect() // Vector2(-100, -50) - * - * @returns {Vector2} - * @since 2.0.0 - */ - public reflect() { - this.x *= -1; - this.y *= -1; - - return this; - } - - /** - * @memberof Vector2 - * @description Gets the absolute value of the vector - * @returns {Vector2} - * @since 2.0.0 - */ - public abs() { - this.x = Math.abs(this.x); - this.y = Math.abs(this.y); - - return this; - } - - // STATIC - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with 0 set as x and y - * @returns {Vector2} - * @since 2.0.0 - */ - public static get ZERO() { - return new Vector2(0, 0); - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with 0 set as x and -1 set as y - * @returns {Vector2} - * @since 2.0.0 - */ - public static get UP() { - return new Vector2(0, -1); - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with 0 set as x and 1 set as y - * @returns {Vector2} - * @since 2.0.0 - */ - public static get DOWN() { - return new Vector2(0, 1); - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with -1 set as x and 0 set as y - * @returns {Vector2} - * @since 2.0.0 - */ - public static get LEFT() { - return new Vector2(-1, 0); - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with 1 set as x and 0 set as y - * @returns {Vector2} - * @since 2.0.0 - */ - public static get RIGHT() { - return new Vector2(1, 0); - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with passed parameters, if no parameters are passed, a Vector2.ZERO is returned - * @param {number} [x] X position, optional -> defaults: 0 - * @param {number} [y] Y position, optional -> defaults: 0 - * @returns {Vector2} - * @since 2.0.0 - */ - public static CREATE(x?: number, y?: number) { - if (!x && !y) return this.ZERO; // none - if (x && !y) return new Vector2(x); // only x - if (!x && y) return new Vector2(0, y); // only y - return new Vector2(x, y); // both - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with passed vector2Like object - * @param {Duck.Types.Math.Vector2Like} vector2Like An object with x and y properties - * @returns {Vector2} - * @since 2.0.0 - */ - public static fromVector2Like(vector2Like: Duck.Types.Math.Vector2Like) { - return new Vector2(vector2Like.x, vector2Like.y); - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2Like object with passed Vector2 - * @param {Vector2} vector2 A Vector2 to convert to Vector2Like object - * @returns {Vector2} - * @since 2.0.0 - */ - public static toVector2Like(vector2: Vector2) { - return { - x: vector2.x, - y: vector2.y, - }; - } - - /** - * @memberof Vector2 - * @static - * @description Returns a Vector2 with values from a passed Vector2 - * @param {Vector2} vector Vector2 to create a Vector2 from - * @returns {Vector2} - * @since 2.0.0 - */ - public static fromVec(vector: Vector2) { - return new Vector2(vector.x, vector.y); - } + /** + * @constructor Vector2 + * @description Creates a Vector2 instance + * @param {number} [x=0] X position, optional -> defaults: 0 + * @param {number} [y=0] Y position, optional -> defaults: 0 + * @since 2.0.0 + */ + constructor(public x = 0, public y = 0) {} + + /** + * @memberof Vector2 + * @description Sets the values of the Vector2 + * @param {number} x X position to setValue of + * @param {number} y Y position to setValue of + * @returns {Vector2} + * @since 2.0.0 + */ + public setValues(x: number, y: number) { + this.x = x; + this.y = y; + return this; + } + + /** + * @memberof Vector2 + * @description Sets the values of the Vector2 based on another Vector2 + * @param {number} vector Vector2 to use to set the position + * @returns {Vector2} + * @since 2.0.0 + */ + public setValuesVec(vector: Vector2) { + this.x = vector.x; + this.y = vector.y; + return this; + } + + /** + * @memberof Vector2 + * @description Adds a Vector2 + * @param {Vector2} vector Vector2 to be added to + * @returns {Vector2} + * @since 2.0.0 + */ + public add(vector: Vector2) { + this.x += vector.x; + this.y += vector.y; + return this; + } + + /** + * @memberof Vector2 + * @description Adds a number to the x and y properties + * @param {number} number Number to add to x and y properties + * @returns {Vector2} + * @since 2.0.0 + */ + public addNumber(number: number) { + this.x += number; + this.y += number; + return this; + } + + /** + * @memberof Vector2 + * @description Subtracts a Vector2 + * @param {Vector2} vector Vector2 to be subtracted to + * @returns {Vector2} + * @since 2.0.0 + */ + public subtract(vector: Vector2) { + this.x -= vector.x; + this.y -= vector.y; + return this; + } + + /** + * @memberof Vector2 + * @description Subtracts a number from the x and y properties + * @param {number} number Number to subtract from x and y properties + * @returns {Vector2} + * @since 2.0.0 + */ + public subtractNumber(number: number) { + this.x -= number; + this.y -= number; + return this; + } + + /** + * @memberof Vector2 + * @description Multiplies a Vector2 + * @param {Vector2} vector Vector2 to be multiplied to + * @returns {Vector2} + * @since 2.0.0 + */ + public multiply(vector: Vector2) { + this.x *= vector.x; + this.y *= vector.y; + return this; + } + + /** + * @memberof Vector2 + * @description Multiplies a number to the x and y properties + * @param {number} number Number to multiply to x and y properties + * @returns {Vector2} + * @since 2.0.0 + */ + public multiplyNumber(number: number) { + this.x *= number; + this.y *= number; + return this; + } + + /** + * @memberof Vector2 + * @description Divides a Vector2 + * @param {Vector2} vector Vector2 to be divided to + * @returns {Vector2} + * @since 2.0.0 + */ + public divide(vector: Vector2) { + this.x /= vector.x; + this.y /= vector.y; + return this; + } + + /** + * @memberof Vector2 + * @description Divides a number to the x and y properties + * @param {number} number Number to divide to x and y properties + * @returns {Vector2} + * @since 2.0.0 + */ + public divideNumber(number: number) { + this.x /= number; + this.y /= number; + return this; + } + + /** + * @memberof Vector2 + * @description Rounds the Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public round() { + this.x = Math.round(this.x); + this.y = Math.round(this.y); + return this; + } + + /** + * @memberof Vector2 + * @description Gets the angle between two Vector2s + * @param {Vector2} vector A Vector2 to get the angle between from + * @returns {number} + * @since 2.0.0 + */ + public angleBetween(vector: Vector2) { + return Math.atan2( + this.x * vector.y - this.y * vector.x, + this.x * vector.x + this.y * vector.y + ); + } + + /** + * @memberof Vector2 + * @description Gets the angle to two Vector2s + * @param {Vector2} vector A Vector2 to get the angle to from + * @returns {number} + * @since 2.0.0 + */ + public angleTo(vector: Vector2) { + return Math.atan2(vector.y - this.y, vector.x - this.x); + } + + /** + * @memberof Vector2 + * @description Clones the current Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public clone() { + return new Vector2(this.x, this.y); + } + + /** + * @memberof Vector2 + * @description Gets the distance from another Vector2 + * @param {Vector2} vector A Vector2 to get the distance from + * @returns {number} + * @since 2.0.0 + */ + public distance(vector: Vector2) { + return Math.sqrt( + (vector.x - this.x) * (vector.x - this.x) + + (vector.y - this.y) * (vector.y - this.y) + ); + } + + /** + * @memberof Vector2 + * @description Gets the distance squared from another Vector2 + * @param {Vector2} vector A Vector2 to get the distance from + * @returns {number} + * @since 2.0.0 + */ + public distanceSqr(vector: Vector2) { + return ( + (vector.x - this.x) * (vector.x - this.x) + + (vector.y - this.y) * (vector.y - this.y) + ); + } + + /** + * @memberof Vector2 + * @description Gets the dot product with another Vector2 + * @param {Vector2} vector A Vector2 to get the dot product from + * @returns {number} + * @since 2.0.0 + */ + public dot(vector: Vector2) { + return this.x * vector.x + this.y * vector.y; + } + + /** + * @memberof Vector2 + * @description Gets the cross dot product with another Vector2 + * @param {Vector2} vector A Vector2 to get the cross dot product from + * @returns {number} + * @since 2.0.0 + */ + public crossProduct(vector: Vector2) { + return this.x * vector.y - this.y * vector.x; + } + + /** + * @memberof Vector2 + * @description Checks if another Vector2 is equal on both axises + * @param {Vector2} vector A Vector2 to compare with + * @returns {boolean} + * @since 2.0.0 + */ + public equals(vector: Vector2) { + return this.x === vector.x && this.y === vector.y; + } + + /** + * @memberof Vector2 + * @description Gets the perpendicular values of the Vector2 + * @param {Vector2} [resultVector] The new Vector2 to save the value to, optional -> defaults: new Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public perpendicular(resultVector?: Vector2) { + resultVector = resultVector || new Vector2(); + return resultVector.setValues(-this.y, this.x); + } + + /** + * @memberof Vector2 + * @description Gradually interpolates the Vector2 towards another Vector2 by an amount + * @param {Vector2} current The Current Vector + * @param {Vector2} target The Target Vector2 + * @param {number} maxDistanceDelta The amount to increase by + * @returns {Vector2} + * @since 2.0.0 + */ + public moveTowards( + current: Vector2, + target: Vector2, + maxDistanceDelta: number + ) { + const toVector_x = target.x - current.x; + const toVector_y = target.y - current.y; + + const sqDist = toVector_x * toVector_x + toVector_y * toVector_y; + + if ( + sqDist === 0 || + (maxDistanceDelta >= 0 && sqDist <= maxDistanceDelta * maxDistanceDelta) + ) { + return target; + } + + const dist = Math.sqrt(sqDist); + + const newX = current.x + (toVector_x / dist) * maxDistanceDelta; + const newY = current.y + (toVector_y / dist) * maxDistanceDelta; + + return new Vector2(newX, newY); + } + + /** + * @memberof Vector2 + * @description Normalizes the Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public normalize() { + const mag = this.magnitude(); + + if (mag > 0) { + this.divideNumber(mag); + } + + return this; + } + + /** + * @memberof Vector2 + * @description Gets the normal value of the Vector2 and another Vector2 + * @param + * @param {Vector2} [resultVector] The new Vector2 to save the value to, optional -> defaults: new Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public getNormal(vector: Vector2, resultVector?: Vector2) { + resultVector = resultVector || new Vector2(); + return resultVector + .setValues(vector.y - this.y, this.x - vector.x) + .normalize(); + } + + /** + * @memberof Vector2 + * @description Determines if Vector2.x and Vector2.y are both equal to 0 + * @returns {boolean} + * @since 2.0.0 + */ + public isZero() { + return this.x === 0 && this.y === 0; + } + + /** + * @memberof Vector + * @description Scales the Vector2 by a scalar Vector2 + * @param {Vector2} scalar A Vector2 that is used to scale the current Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public scale(scalar: Vector2) { + this.x *= scalar.x; + this.y *= scalar.y; + + return this; + } + + /** + * @memberof Vector2 + * @description Sets Vector2.x and Vector2.y to their negative values + * @returns {Vector2} + * @since 2.0.0 + */ + public negate() { + this.x = -this.x; + this.y = -this.y; + + return this; + } + + /** + * @memberof Vector2 + * @description Returns the magnitude or length of the Vector2 + * @returns {number} + * @since 2.0.0 + */ + public magnitude() { + return Math.sqrt(this.x * this.x + this.y * this.y); + } + + /** + * @memberof Vector2 + * @description Returns the magnitude/lenth squared of the Vector2 + * @returns {number} + * @since 2.0.0 + */ + public magnitudeSqr() { + return this.x * this.x + this.y * this.y; + } + + /** + * @memberof Vector2 + * @description Scales the Vector2 by the magnitude or length + * @param magnitude The magnitude or length of the Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public scaleToMagnitude(magnitude: number) { + const k = magnitude / this.magnitude(); + this.x *= k; + this.y *= k; + return this; + } + + /** + * @memberof Vector2 + * @description Returns the string version of the Vector2 + * @example console.log(new Vector2(0, 0).toString()) // Vector2(0, 0) + * @returns {string} + * @since 2.0.0 + */ + public toString() { + return `Vector2(${this.x}, ${this.y})`; + } + + /** + * @memberof Vector2 + * @description Sets the values to be precise by using Number.toPrecision + * @param {number} precision The precision + * @returns {Vector2} + * @since 2.0.0 + */ + public toPrecision(precision: number) { + this.x = Number(this.x.toPrecision(precision)); + this.y = Number(this.y.toPrecision(precision)); + + return this; + } + + /** + * @memberof Vector2 + * @description Adds to the Vector2 by an amount + * @param {number} dx Delta x, the amount to increase the x value by + * @param {number} dy Delta y, the amount to increase the y value by + * @returns {Vector2} + * @since 2.0.0 + */ + public translate(dx: number, dy: number) { + this.x += dx; + this.y += dy; + return this; + } + + /** + * @memberof Vector2 + * @description Adds to the Vector2.x by an amount + * @param {number} dx Delta x, the amount to increase the x value by + * @returns {Vector2} + * @since 2.0.0 + */ + public translateX(dx: number) { + this.x += dx; + return this; + } + + /** + * @memberof Vector2 + * @description Adds to the Vector2.y by an amount + * @param {number} dy Delta y, the amount to increase the y value by + * @returns {Vector2} + * @since 2.0.0 + */ + public translateY(dy: number) { + this.x += dy; + return this; + } + + /** + * @memberof Vector2 + * @description Gets the dot product using three different Vector2s + * @param {Vector2} a A Vector2 + * @param {Vector2} b A Vector2 + * @param {Vector2} c A Vector2 + * @param {Vector2} [resultVector=Vector2] A Vector2 that the result is saved in, optional -> defaults: new Vector2 + * @returns {Vector2} + * @since 2.0.0 + */ + public tripleProduct( + a: Vector2, + b: Vector2, + c: Vector2, + resultVector?: Vector2 + ) { + resultVector = resultVector || new Vector2(); + const ac = a.dot(c); + const bc = b.dot(c); + return resultVector.setValues(b.x * ac - a.x * bc, b.y * ac - a.y * bc); + } + + /** + * @memberof Vector2 + * @description Clamps the values to a min and max + * @param {number} min The min value + * @param {number} max The max value + * @returns {Vector2} + * @since 2.0.0 + */ + public clamp(min: number, max: number) { + this.x = clamp(this.x, min, max); + this.y = clamp(this.y, min, max); + + return this; + } + + /** + * @memberof Vector2 + * @description Clamps the values to a min + * @param {number} min The min value + * @returns {Vector2} + * @since 2.0.0 + */ + public clampMin(min: number) { + if (this.x < min) { + this.x = min; + } + if (this.y < min) { + this.y = min; + } + + return this; + } + + /** + * @memberof Vector2 + * @description Clamps the values to a max + * @param {number} max The max value + * @returns {Vector2} + * @since 2.0.0 + */ + public clampMax(max: number) { + if (this.x > max) { + this.x = max; + } + if (this.y > max) { + this.y = max; + } + + return this; + } + + /** + * @memberof Vector2 + * @description Rotates the Vector2 based on degrees + * @param {number} degrees The angle in degrees + * @param {Vector2} [center] The center Vector relative to the Vector, optional -> defaults: Vector2.ZERO + * @returns {Vector2} + * @since 2.0.0 + */ + public rotate(degrees: number, center = Vector2.ZERO) { + const radians = degToRadians(degrees); + + const cx = center.x || 0; + const cy = center.y || 0; + + const c = Math.cos(radians), + s = Math.sin(radians); + + const x = this.x - cx; + const y = this.y - cy; + + this.x = x * c - y * s + cx; + this.y = x * s + y * c + cy; + + return this; + } + + /** + * @memberof Vector2 + * @description Reflects the Vector2, returns the opposite value on a number line + * + * @example new Vector2(100, 50).reflect() // Vector2(-100, -50) + * + * @returns {Vector2} + * @since 2.0.0 + */ + public reflect() { + this.x *= -1; + this.y *= -1; + + return this; + } + + /** + * @memberof Vector2 + * @description Gets the absolute value of the vector + * @returns {Vector2} + * @since 2.0.0 + */ + public abs() { + this.x = Math.abs(this.x); + this.y = Math.abs(this.y); + + return this; + } + + // STATIC + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with 0 set as x and y + * @returns {Vector2} + * @since 2.0.0 + */ + public static get ZERO() { + return new Vector2(0, 0); + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with 0 set as x and -1 set as y + * @returns {Vector2} + * @since 2.0.0 + */ + public static get UP() { + return new Vector2(0, -1); + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with 0 set as x and 1 set as y + * @returns {Vector2} + * @since 2.0.0 + */ + public static get DOWN() { + return new Vector2(0, 1); + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with -1 set as x and 0 set as y + * @returns {Vector2} + * @since 2.0.0 + */ + public static get LEFT() { + return new Vector2(-1, 0); + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with 1 set as x and 0 set as y + * @returns {Vector2} + * @since 2.0.0 + */ + public static get RIGHT() { + return new Vector2(1, 0); + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with passed parameters, if no parameters are passed, a Vector2.ZERO is returned + * @param {number} [x] X position, optional -> defaults: 0 + * @param {number} [y] Y position, optional -> defaults: 0 + * @returns {Vector2} + * @since 2.0.0 + */ + public static CREATE(x?: number, y?: number) { + if (!x && !y) return this.ZERO; // none + if (x && !y) return new Vector2(x); // only x + if (!x && y) return new Vector2(0, y); // only y + return new Vector2(x, y); // both + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with passed vector2Like object + * @param {Duck.Types.Math.Vector2Like} vector2Like An object with x and y properties + * @returns {Vector2} + * @since 2.0.0 + */ + public static fromVector2Like(vector2Like: Duck.Types.Math.Vector2Like) { + return new Vector2(vector2Like.x, vector2Like.y); + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2Like object with passed Vector2 + * @param {Vector2} vector2 A Vector2 to convert to Vector2Like object + * @returns {Vector2} + * @since 2.0.0 + */ + public static toVector2Like(vector2: Vector2) { + return { + x: vector2.x, + y: vector2.y, + }; + } + + /** + * @memberof Vector2 + * @static + * @description Returns a Vector2 with values from a passed Vector2 + * @param {Vector2} vector Vector2 to create a Vector2 from + * @returns {Vector2} + * @since 2.0.0 + */ + public static fromVec(vector: Vector2) { + return new Vector2(vector.x, vector.y); + } } diff --git a/src/core/misc/pluginManager.ts b/src/core/misc/pluginManager.ts index e987e5b2..f1547514 100644 --- a/src/core/misc/pluginManager.ts +++ b/src/core/misc/pluginManager.ts @@ -8,79 +8,84 @@ import Debug from '../debug/debug'; * @since 2.0.0 */ export default class PluginManager { - /** - * @memberof PluginManager - * @description An object that holds all registered plugins - * @type { [key: string]: Duck.Types.Game.Plugin; } - * @since 2.0.0 - */ - public plugins: { - [key: string]: Duck.Types.Game.Plugin; - }; + /** + * @memberof PluginManager + * @description An object that holds all registered plugins + * @type { [key: string]: Duck.Types.Game.Plugin; } + * @since 2.0.0 + */ + public plugins: { + [key: string]: Duck.Types.Game.Plugin; + }; - /** - * @constructor PluginManager - * @description Creates a PluginManager instance - * @since 2.0.0 - */ - constructor() { - this.plugins = {}; - } + /** + * @constructor PluginManager + * @description Creates a PluginManager instance + * @since 2.0.0 + */ + constructor() { + this.plugins = {}; + } - /** - * @memberof PluginManager - * @description Registers a plugin and adds a plugin by its name to the plugins object - * @param {Duck.Types.Game.Plugin} plugin Plugin to add - * @since 2.0.0 - */ - public registerPlugin(plugin: Duck.Types.Game.Plugin) { - const foundPlugin = this.find(plugin.name); + /** + * @memberof PluginManager + * @description Registers a plugin and adds a plugin by its name to the plugins object + * @param {Duck.Types.Game.Plugin} plugin Plugin to add + * @since 2.0.0 + */ + public registerPlugin(plugin: Duck.Types.Game.Plugin) { + const foundPlugin = this.find(plugin.name); - if (!foundPlugin) { - this.plugins[plugin.name] = plugin; - } else { - new Debug.Error( - `Cannot register plugin with name "${plugin.name}". Plugin with that name already exists.` - ); - } - } + if (!foundPlugin) { + this.plugins[plugin.name] = plugin; + } else { + new Debug.Error( + `Cannot register plugin with name "${plugin.name}". Plugin with that name already exists.` + ); + } + } - /** - * @memberof PluginManager - * @description Unregisters a plugin by its name - * @param {string} name Name of plugin to remove - * @since 2.0.0 - */ - public unregisterPlugin(name: string) { - const plugin = this.find(name); + /** + * @memberof PluginManager + * @description Unregisters a plugin by its name + * @param {string} name Name of plugin to remove + * @since 2.0.0 + */ + public unregisterPlugin(name: string) { + const plugin = this.find(name); - if (plugin) { - delete this.plugins[name]; - } - } + if (plugin) { + delete this.plugins[name]; + } + } - /** - * @memberof PluginManager - * @description Calls/Runs a plugin by its name - * @param {string} name Name of plugin to call/run - * @since 2.0.0 - */ - public call(name: string) { - const plugin = this.find(name); + /** + * @memberof PluginManager + * @description Calls/Runs a plugin by its name + * @param {string} name Name of plugin to call/run + * @param {unknown[]} [overrideArgs] If you want to override the passed arguments, these will override + * @since 2.0.0 + */ + public call(name: string, overrideArgs?: unknown[]) { + const plugin = this.find(name); - if (plugin) { - plugin.func(...plugin.args); - } - } + if (plugin) { + if (overrideArgs) { + plugin.func(...overrideArgs); + } else { + plugin.func(...plugin.args); + } + } + } - /** - * @memberof PluginManager - * @description Finds a plugin by its name - * @param {string} name Name of plugin to find - * @returns {Duck.Types.Game.Plugin} - * @since 2.0.0 - */ - public find(name: string): Duck.Types.Game.Plugin | undefined { - return this.plugins[name]; - } + /** + * @memberof PluginManager + * @description Finds a plugin by its name + * @param {string} name Name of plugin to find + * @returns {Duck.Types.Game.Plugin} + * @since 2.0.0 + */ + public find(name: string): Duck.Types.Game.Plugin | undefined { + return this.plugins[name]; + } } diff --git a/src/core/models/displayList.ts b/src/core/models/displayList.ts index cca51889..7bb413e1 100644 --- a/src/core/models/displayList.ts +++ b/src/core/models/displayList.ts @@ -9,117 +9,115 @@ import Game from '../game'; * @since 2.0.0 */ export default class DisplayList { - public game: Game; + public game: Game; - public list: Duck.Types.Renderable[] = []; + public list: Duck.Types.Renderable[] = []; - constructor(game: Game) { - this.game = game; - } + constructor(game: Game) { + this.game = game; + } - /** - * @memberof DisplayList - * @description Adds a renderableObject to the list - * @param {Duck.Types.Renderable} renderableObject A renderableObject - * - * Note: this pools the game's renderer pipeline for instant updates - * - * @since 2.0.0 - */ - public add(renderableObject: Duck.Types.Renderable) { - this.list.push(renderableObject); + /** + * @memberof DisplayList + * @description Adds a renderableObject to the list + * @param {Duck.Types.Renderable} renderableObject A renderableObject + * + * Note: this pools the game's renderer pipeline for instant updates + * + * @since 2.0.0 + */ + public add(renderableObject: Duck.Types.Renderable) { + this.list.push(renderableObject); - // pool renderer pipeline for instant update - this.game.renderer.pipeline.pool(); - } + // pool renderer pipeline for instant update + this.game.renderer.pipeline.pool(); + } - /** - * @memberof DisplayList - * @description Removes a renderableObject from the list - * @param {Duck.Types.Renderable} renderableObject A renderableObject - * @since 2.0.0 - */ - public remove(renderableObject: Duck.Types.Renderable) { - const f = this.list.find((r) => r.id === renderableObject.id); - if (f) { - this.list.splice( - this.list.findIndex((r) => r.id === renderableObject.id), - 1 - ); - } else { - new Debug.Error( - `INTERNAL -> Cannot remove renderableObject from displayList with id "${renderableObject.id}". If you suspect this as a bug, please report it on github.` - ); - } - } + /** + * @memberof DisplayList + * @description Removes a renderableObject from the list + * @param {Duck.Types.Renderable} renderableObject A renderableObject + * @since 2.0.0 + */ + public remove(renderableObject: Duck.Types.Renderable) { + const f = this.list.find((r) => r.id === renderableObject.id); + if (f) { + this.list.splice( + this.list.findIndex((r) => r.id === renderableObject.id), + 1 + ); + } else { + new Debug.Error( + `INTERNAL -> Cannot remove renderableObject from displayList with id "${renderableObject.id}". If you suspect this as a bug, please report it on github.` + ); + } + } - /** - * @memberof DisplayList - * @description Sorts all renderableObject by zIndex - * @returns {Duck.Types.Renderable[]} - * @since 2.0.0 - */ - public depthSort() { - const sorted = [...this.list].sort( - (obj, obj2) => obj.zIndex - obj2.zIndex - ); + /** + * @memberof DisplayList + * @description Sorts all renderableObject by zIndex + * @returns {Duck.Types.Renderable[]} + * @since 2.0.0 + */ + public depthSort() { + const sorted = [...this.list].sort((obj, obj2) => obj.zIndex - obj2.zIndex); - return sorted; - } + return sorted; + } - /** - * @memberof DisplayList - * @description Filters all renderableObjects by its visible boolean property - * @param {boolean} [filter=true] By what to filter. EX: true, filters all visible objects, optional -> default: true - * @returns {Duck.Types.Renderable[]} - * @since 2.0.0 - */ - public visibilityFilter(filter = true) { - const filtered = this.list.filter((r) => r.visible === filter); + /** + * @memberof DisplayList + * @description Filters all renderableObjects by its visible boolean property + * @param {boolean} [filter=true] By what to filter. EX: true, filters all visible objects, optional -> default: true + * @returns {Duck.Types.Renderable[]} + * @since 2.0.0 + */ + public visibilityFilter(filter = true) { + const filtered = this.list.filter((r) => r.visible === filter); - return filtered; - } + return filtered; + } - /** - * @memberof DisplayList - * @template t - * @description Loops through each renderableObject and runs a callback with it passed - * @param {(renderableObject: Duck.Types.Renderable, index: number) => t} cb Callback - * @since 2.0.0 - */ - public each( - cb: (renderableObject: Duck.Types.Renderable, index: number) => t - ) { - this.list.forEach(cb.bind(this)); - } + /** + * @memberof DisplayList + * @template t + * @description Loops through each renderableObject and runs a callback with it passed + * @param {(renderableObject: Duck.Types.Renderable, index: number) => t} cb Callback + * @since 2.0.0 + */ + public each( + cb: (renderableObject: Duck.Types.Renderable, index: number) => t + ) { + this.list.forEach(cb.bind(this)); + } - /** - * @memberof DisplayList - * @description Removes an item from the list based on passed index - * @param {number} index - * @param {number} [amount] - * @since 2.0.0 - */ - public splice(index: number, amount?: number) { - return this.list.splice(index, amount); - } + /** + * @memberof DisplayList + * @description Removes an item from the list based on passed index + * @param {number} index + * @param {number} [amount] + * @since 2.0.0 + */ + public splice(index: number, amount?: number) { + return this.list.splice(index, amount); + } - /** - * @memberof DisplayList - * @description Gets the length of the list - * @since 2.0.0 - */ - public get length() { - return this.list.length; - } + /** + * @memberof DisplayList + * @description Gets the length of the list + * @since 2.0.0 + */ + public get length() { + return this.list.length; + } - /** - * @memberof DisplayList - * @description Overwrites the list items with passed parameter - * @param {Duck.Types.Renderable[]} listItems Renderable objects to overwrite with - * @since 2.0.0 - */ - public set listItems(listItems: Duck.Types.Renderable[]) { - this.list = listItems; - } + /** + * @memberof DisplayList + * @description Overwrites the list items with passed parameter + * @param {Duck.Types.Renderable[]} listItems Renderable objects to overwrite with + * @since 2.0.0 + */ + public set listItems(listItems: Duck.Types.Renderable[]) { + this.list = listItems; + } } diff --git a/src/core/models/physicsList.ts b/src/core/models/physicsList.ts index 4519774f..beebc5fa 100644 --- a/src/core/models/physicsList.ts +++ b/src/core/models/physicsList.ts @@ -8,84 +8,84 @@ import Debug from '../debug/debug'; * @since 2.0.0 */ export default class PhysicsList { - public list: Duck.Types.PhysicsProcessMember[] = []; + public list: Duck.Types.PhysicsProcessMember[] = []; - /** - * @memberof PhysicsList - * @description Adds a physicsObject to the list - * @param {Duck.Types.PhysicsProcessMember} physicsObject A physicsObject - * @since 2.0.0 - */ - public add(physicsObject: Duck.Types.PhysicsProcessMember) { - this.list.push(physicsObject); - } + /** + * @memberof PhysicsList + * @description Adds a physicsObject to the list + * @param {Duck.Types.PhysicsProcessMember} physicsObject A physicsObject + * @since 2.0.0 + */ + public add(physicsObject: Duck.Types.PhysicsProcessMember) { + this.list.push(physicsObject); + } - /** - * @memberof PhysicsList - * @description Removes a physicsObject from the list - * @param {Duck.Types.PhysicsProcessMember} physicsObject A physicsObject - * @since 2.0.0 - */ - public remove(physicsObject: Duck.Types.PhysicsProcessMember) { - const f = this.list.find((r) => r.id === physicsObject.id); - if (f) { - this.list.splice( - this.list.findIndex((r) => r.id === physicsObject.id), - 1 - ); - } else { - new Debug.Error( - `INTERNAL -> Cannot remove physicsObject from physicsList with id "${physicsObject.id}". If you suspect this as a bug, please report it on github.` - ); - } - } + /** + * @memberof PhysicsList + * @description Removes a physicsObject from the list + * @param {Duck.Types.PhysicsProcessMember} physicsObject A physicsObject + * @since 2.0.0 + */ + public remove(physicsObject: Duck.Types.PhysicsProcessMember) { + const f = this.list.find((r) => r.id === physicsObject.id); + if (f) { + this.list.splice( + this.list.findIndex((r) => r.id === physicsObject.id), + 1 + ); + } else { + new Debug.Error( + `INTERNAL -> Cannot remove physicsObject from physicsList with id "${physicsObject.id}". If you suspect this as a bug, please report it on github.` + ); + } + } - /** - * @memberof PhysicsList - * @template t - * @description Loops through each physicsObject and runs a callback with it passed - * @param {(physicsObject: Duck.Types.PhysicsProcessMember, index: number) => t} cb Callback - * @since 2.0.0 - */ - public each( - cb: (physicsBody: Duck.Types.PhysicsProcessMember, index: number) => t - ) { - this.list.forEach(cb.bind(this)); - } + /** + * @memberof PhysicsList + * @template t + * @description Loops through each physicsObject and runs a callback with it passed + * @param {(physicsObject: Duck.Types.PhysicsProcessMember, index: number) => t} cb Callback + * @since 2.0.0 + */ + public each( + cb: (physicsBody: Duck.Types.PhysicsProcessMember, index: number) => t + ) { + this.list.forEach(cb.bind(this)); + } - public enabledFilter(filter = true) { - const filtered = this.list.filter((r) => r.enabled === filter); + public enabledFilter(filter = true) { + const filtered = this.list.filter((r) => r.enabled === filter); - return filtered; - } + return filtered; + } - /** - * @memberof PhysicsList - * @description Removes an item from the list based on passed index - * @param {number} index - * @param {number} [amount] - * @since 2.0.0 - */ - public splice(index: number, amount?: number) { - return this.list.splice(index, amount); - } + /** + * @memberof PhysicsList + * @description Removes an item from the list based on passed index + * @param {number} index + * @param {number} [amount] + * @since 2.0.0 + */ + public splice(index: number, amount?: number) { + return this.list.splice(index, amount); + } - /** - * @memberof PhysicsList - * @description Gets the length of the list - * @since 2.0.0 - */ - public get length() { - return this.list.length; - } + /** + * @memberof PhysicsList + * @description Gets the length of the list + * @since 2.0.0 + */ + public get length() { + return this.list.length; + } - /** - * @memberof PhysicsList - * @description Overwrites the list items with passed parameter - * @param {Duck.Types.PhysicsProcessMember[]} listItems Renderable objects to overwrite with - * @since 2.0.0 - */ - public set listItems(listItems: Duck.Types.PhysicsProcessMember[]) { - this.list = listItems; - } + /** + * @memberof PhysicsList + * @description Overwrites the list items with passed parameter + * @param {Duck.Types.PhysicsProcessMember[]} listItems Renderable objects to overwrite with + * @since 2.0.0 + */ + public set listItems(listItems: Duck.Types.PhysicsProcessMember[]) { + this.list = listItems; + } } diff --git a/src/core/physics/models/area.ts b/src/core/physics/models/area.ts index 11c45838..01ddd503 100644 --- a/src/core/physics/models/area.ts +++ b/src/core/physics/models/area.ts @@ -12,129 +12,129 @@ import PhysicsBody from '../physicsBody'; * @since 2.0.0 */ export default class Area extends PhysicsBody<'color'> { - /** - * @memberof Area - * @description An array of PhysicsBodies with Hitboxes to check for entering and leaving the area - * @type PhysicsBody[] - * @since 2.0.0 - */ - public collisionFilter: PhysicsBody[]; + /** + * @memberof Area + * @description An array of PhysicsBodies with Hitboxes to check for entering and leaving the area + * @type PhysicsBody[] + * @since 2.0.0 + */ + public collisionFilter: PhysicsBody[]; - /** - * @memberof Area - * @description An array of PhysicsBodies that are currently in the area - * @type PhysicsBody[] - * @since 2.0.0 - */ - public bodies: PhysicsBody[]; + /** + * @memberof Area + * @description An array of PhysicsBodies that are currently in the area + * @type PhysicsBody[] + * @since 2.0.0 + */ + public bodies: PhysicsBody[]; - /** - * @memberof Area - * @description Callback to call when a PhysicsBody with a Hitbox enters - * @type ((physicsBody: PhysicsBody) => unknown) | undefined - * @since 2.0.0 - */ - public onBodyEnter: - | ((physicsBody: PhysicsBody) => unknown) - | undefined; + /** + * @memberof Area + * @description Callback to call when a PhysicsBody with a Hitbox enters + * @type ((physicsBody: PhysicsBody) => unknown) | undefined + * @since 2.0.0 + */ + public onBodyEnter: + | ((physicsBody: PhysicsBody) => unknown) + | undefined; - /** - * @memberof Area - * @description Callback to call when a PhysicsBody with a Hitbox leaves the area - * @type ((physicsBody: PhysicsBody) => unknown) | undefined - * @since 2.0.0 - */ - public onBodyLeave: - | ((physicsBody: PhysicsBody) => unknown) - | undefined; - /** - * @constructor Area - * @description Creates an Area instance - * @param {number} x X position of the area - * @param {number} y Y position of the area - * @param {number} w Width of the area - * @param {number} h Height of the area - * @param {PhysicsBody[]} collisionFilter An array of PhysicsBodies, with Hitboxes attached to them, - * to check for when it leaves/enters the area - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 2.0.0 - */ - constructor( - x: number, - y: number, - w: number, - h: number, - collisionFilter: PhysicsBody[], - game: Game, - scene: Scene - ) { - const id = uniqueID(); + /** + * @memberof Area + * @description Callback to call when a PhysicsBody with a Hitbox leaves the area + * @type ((physicsBody: PhysicsBody) => unknown) | undefined + * @since 2.0.0 + */ + public onBodyLeave: + | ((physicsBody: PhysicsBody) => unknown) + | undefined; + /** + * @constructor Area + * @description Creates an Area instance + * @param {number} x X position of the area + * @param {number} y Y position of the area + * @param {number} w Width of the area + * @param {number} h Height of the area + * @param {PhysicsBody[]} collisionFilter An array of PhysicsBodies, with Hitboxes attached to them, + * to check for when it leaves/enters the area + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 2.0.0 + */ + constructor( + x: number, + y: number, + w: number, + h: number, + collisionFilter: PhysicsBody[], + game: Game, + scene: Scene + ) { + const id = uniqueID(); - super('rect', id, x, y, w, h, 0, game, scene); + super('rect', id, x, y, w, h, 0, game, scene); - this.collisionFilter = collisionFilter; - this.bodies = []; + this.collisionFilter = collisionFilter; + this.bodies = []; - this.physics.addHitbox(w, h); - } + this.physics.addHitbox(w, h); + } - /** - * @memberof Area - * @description Updates the Area, check for Hitbox intersections with the passed collisionFilter array of PhysicsBodies - * - * *DO NOT CALL MANUALLY! CALLED IN SCENE.PHYSICS SERVER.__tick* - * - * @since 2.0.0 - */ - public _update() { - this.collisionFilter.forEach((object) => { - if (object.hitbox && this.hitbox) { - // add body - if (this.hitbox.intersectsWith(object.hitbox)) { - this.addBody(object); - } - // remove body - if (!this.hitbox.intersectsWith(object.hitbox)) { - this.removeBody(object); - } - } - }); - } + /** + * @memberof Area + * @description Updates the Area, check for Hitbox intersections with the passed collisionFilter array of PhysicsBodies + * + * *DO NOT CALL MANUALLY! CALLED IN SCENE.PHYSICS SERVER.__tick* + * + * @since 2.0.0 + */ + public _update() { + this.collisionFilter.forEach((object) => { + if (object.hitbox && this.hitbox) { + // add body + if (this.hitbox.intersectsWith(object.hitbox)) { + this.addBody(object); + } + // remove body + if (!this.hitbox.intersectsWith(object.hitbox)) { + this.removeBody(object); + } + } + }); + } - protected addBody(physicsBody: PhysicsBody) { - const exists = this.bodyIsInArea(physicsBody); + protected addBody(physicsBody: PhysicsBody) { + const exists = this.bodyIsInArea(physicsBody); - if (!exists) { - this.bodies.push(physicsBody); - if (this.onBodyEnter) { - this.onBodyEnter(physicsBody); - } - } - } + if (!exists) { + this.bodies.push(physicsBody); + if (this.onBodyEnter) { + this.onBodyEnter(physicsBody); + } + } + } - protected removeBody(physicsBody: PhysicsBody) { - const exists = this.bodyIsInArea(physicsBody); + protected removeBody(physicsBody: PhysicsBody) { + const exists = this.bodyIsInArea(physicsBody); - if (exists) { - this.bodies.splice( - this.bodies.findIndex((object) => object.id === physicsBody.id), - 1 - ); - if (this.onBodyLeave) { - this.onBodyLeave(physicsBody); - } - } - } + if (exists) { + this.bodies.splice( + this.bodies.findIndex((object) => object.id === physicsBody.id), + 1 + ); + if (this.onBodyLeave) { + this.onBodyLeave(physicsBody); + } + } + } - /** - * @memberof Area - * @description Checks if the body is currently in the area - * @param {PhysicsBody} physicsBody PhysicsBody to check - * @returns {boolean} - */ - public bodyIsInArea(physicsBody: PhysicsBody) { - const f = this.bodies.find((object) => object.id === physicsBody.id); - return f ? true : false; - } + /** + * @memberof Area + * @description Checks if the body is currently in the area + * @param {PhysicsBody} physicsBody PhysicsBody to check + * @returns {boolean} + */ + public bodyIsInArea(physicsBody: PhysicsBody) { + const f = this.bodies.find((object) => object.id === physicsBody.id); + return f ? true : false; + } } diff --git a/src/core/physics/models/collider.ts b/src/core/physics/models/collider.ts index 52e83b53..67b4f994 100644 --- a/src/core/physics/models/collider.ts +++ b/src/core/physics/models/collider.ts @@ -14,113 +14,113 @@ import Hitbox from './hitbox'; * @since 1.0.0-beta */ export default class Collider { - public hitbox: Hitbox; - public collidesWith: - | GameObject[] - | Group>; - public game: Game; + public hitbox: Hitbox; + public collidesWith: + | GameObject[] + | Group>; + public game: Game; - /** - * @constructor Collider - * @description Creates a Collider instance - * @param {Hitbox} hitbox Hitbox to append the collider to - * @param {GameObject[] | Group>} collidesWith What the PhysicsBody collides with - * @param {Game} game Game instance - * @since 1.0.0-beta - */ - constructor( - hitbox: Hitbox, - collidesWith: - | GameObject[] - | Group>, - game: Game - ) { - this.hitbox = hitbox; - this.collidesWith = collidesWith; - this.game = game; - } + /** + * @constructor Collider + * @description Creates a Collider instance + * @param {Hitbox} hitbox Hitbox to append the collider to + * @param {GameObject[] | Group>} collidesWith What the PhysicsBody collides with + * @param {Game} game Game instance + * @since 1.0.0-beta + */ + constructor( + hitbox: Hitbox, + collidesWith: + | GameObject[] + | Group>, + game: Game + ) { + this.hitbox = hitbox; + this.collidesWith = collidesWith; + this.game = game; + } - /** - * @memberof Collider - * @description Updates the collider and checks for collisions with the updated version of the object, and collides with. - * - * DO NOT CALL MANUALLY! CALLED IN PHYSICS SERVER! - * - * @param {Hitbox} hitbox The updated hitbox that the collider is attached - * @param {GameObject[] | Group>} updatedCollidesWith Updated version of what the object collides with - * @since 2.0.0 - */ - public _update( - hitbox: Hitbox, - updatedCollidesWith: - | GameObject[] - | Group> - ) { - this.hitbox = hitbox; + /** + * @memberof Collider + * @description Updates the collider and checks for collisions with the updated version of the object, and collides with. + * + * DO NOT CALL MANUALLY! CALLED IN PHYSICS SERVER! + * + * @param {Hitbox} hitbox The updated hitbox that the collider is attached + * @param {GameObject[] | Group>} updatedCollidesWith Updated version of what the object collides with + * @since 2.0.0 + */ + public _update( + hitbox: Hitbox, + updatedCollidesWith: + | GameObject[] + | Group> + ) { + this.hitbox = hitbox; - this.collidesWith = updatedCollidesWith; + this.collidesWith = updatedCollidesWith; - if (Array.isArray(this.collidesWith)) { - this.collidesWith.forEach((otherObject) => { - if (otherObject.hitbox) { - this.collideHitboxes(otherObject.hitbox); - } - }); - } else { - this.collidesWith.each((otherObject) => { - if (otherObject.hitbox) { - this.collideHitboxes(otherObject.hitbox); - } - }); - } - } + if (Array.isArray(this.collidesWith)) { + this.collidesWith.forEach((otherObject) => { + if (otherObject.hitbox) { + this.collideHitboxes(otherObject.hitbox); + } + }); + } else { + this.collidesWith.each((otherObject) => { + if (otherObject.hitbox) { + this.collideHitboxes(otherObject.hitbox); + } + }); + } + } - protected collideHitboxes( - hitbox2: Hitbox - ): Duck.Types.Collider.CollisionResponseType { - const rectCX = hitbox2.position.x + hitbox2.w * 0.5; - const rectCY = hitbox2.position.y + hitbox2.h * 0.5; + protected collideHitboxes( + hitbox2: Hitbox + ): Duck.Types.Collider.CollisionResponseType { + const rectCX = hitbox2.position.x + hitbox2.w * 0.5; + const rectCY = hitbox2.position.y + hitbox2.h * 0.5; - const thisCX = this.hitbox.position.x + this.hitbox.w * 0.5; - const thisCY = this.hitbox.position.y + this.hitbox.h * 0.5; + const thisCX = this.hitbox.position.x + this.hitbox.w * 0.5; + const thisCY = this.hitbox.position.y + this.hitbox.h * 0.5; - const dx = rectCX - thisCX; // x difference between centers - const dy = rectCY - thisCY; // y difference between centers - const aw = (hitbox2.w + this.hitbox.w) * 0.5; // average width - const ah = (hitbox2.h + this.hitbox.h) * 0.5; // average height + const dx = rectCX - thisCX; // x difference between centers + const dy = rectCY - thisCY; // y difference between centers + const aw = (hitbox2.w + this.hitbox.w) * 0.5; // average width + const ah = (hitbox2.h + this.hitbox.h) * 0.5; // average height - /* If either distance is greater than the average dimension there is no collision. */ - if (Math.abs(dx) > aw || Math.abs(dy) > ah) { - return 'none'; - } + /* If either distance is greater than the average dimension there is no collision. */ + if (Math.abs(dx) > aw || Math.abs(dy) > ah) { + return 'none'; + } - /* To determine which region of this rectangle the rect's center + /* To determine which region of this rectangle the rect's center point is in, we have to account for the scale of the this rectangle. To do that, we divide dx and dy by it's width and height respectively. */ - if (Math.abs(dx / this.hitbox.w) > Math.abs(dy / this.hitbox.h)) { - if (dx < 0) { - // left - this.hitbox.position.x = hitbox2.position.x + hitbox2.w; + if (Math.abs(dx / this.hitbox.w) > Math.abs(dy / this.hitbox.h)) { + if (dx < 0) { + // left + this.hitbox.position.x = hitbox2.position.x + hitbox2.w; - return 'left'; - } else { - // right - this.hitbox.position.x = hitbox2.position.x - this.hitbox.w; + return 'left'; + } else { + // right + this.hitbox.position.x = hitbox2.position.x - this.hitbox.w; - return 'right'; - } - } else { - if (dy < 0) { - // top - this.hitbox.position.y = hitbox2.position.y + hitbox2.h; + return 'right'; + } + } else { + if (dy < 0) { + // top + this.hitbox.position.y = hitbox2.position.y + hitbox2.h; - return 'top'; - } else { - // bottom - this.hitbox.position.y = hitbox2.position.y - this.hitbox.h; + return 'top'; + } else { + // bottom + this.hitbox.position.y = hitbox2.position.y - this.hitbox.h; - return 'bottom'; - } - } - } + return 'bottom'; + } + } + } } diff --git a/src/core/physics/models/hitbox.ts b/src/core/physics/models/hitbox.ts index 512c8e1e..7bfb5ae3 100644 --- a/src/core/physics/models/hitbox.ts +++ b/src/core/physics/models/hitbox.ts @@ -8,6 +8,7 @@ import Scene from '../../scene'; import hitboxFaceIntersect from '../utils/hitboxFaceIntersect'; import PhysicsBody from '../physicsBody'; import rectToRectIntersect from '../utils/rectToRectIntersect'; +import Color from '../../renderer/models/color'; /** * @class Hitbox @@ -16,397 +17,398 @@ import rectToRectIntersect from '../utils/rectToRectIntersect'; * @since 2.0.0 */ export default class Hitbox implements Duck.Types.Renderable { - /** - * @memberof Hitbox - * @description The unique identifier for a Hitbox - * @type string - * @since 2.0.0 - */ - public readonly id: string; - - /** - * @memberof Hitbox - * @description The Position of the Hitbox - * @type Vector2 - * @since 2.0.0 - */ - public position: Vector2; - - /** - * @memberof Hitbox - * @description The Offset Position of the hitbox - * @type Vector2 - * @since 2.0.0 - */ - public offset: Vector2; - - /** - * @memberof Hitbox - * @description The Width of the Hitbox - * @type number - * @since 2.0.0 - */ - public w: number; - - /** - * @memberof Hitbox - * @description The Height of the Hitbox - * @type number - * @since 2.0.0 - */ - public h: number; - - /** - * @memberof Hitbox - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; - - /** - * @memberof Hitbox - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; - - /** - * @memberof Hitbox - * @description PhysicsBody that the Hitbox is attached to - * @type PhysicsBody - * @since 2.0.0 - */ - public physicsObject: PhysicsBody; - - /** - * @memberof Hitbox - * @description The debug color of the Hitbox, determines if the visibility of the hitbox - * @type string | undefined - * @since - */ - public debugColor: string | undefined; - - /** - * @memberof Hitbox - * @description Determines if the Hitbox will be drawn on the screen as a debug aid - * @type boolean - * @since 2.0.0 - */ - public visible: boolean; - - /** - * @memberof Hitbox - * @description The zIndex of the Hitbox, effects how the Hitbox is layered if it is drawn on the screen as a debug aid - * @type number - * @since 2.0.0 - */ - public zIndex: number; - - /** - * @memberof Hitbox - * @description Determines if the Hitbox should be visible by the current scene's current camera - * @type boolean - * @since 2.1.0 - */ - public culled: boolean; - - /** - * @memberof Hitbox - * @description A string determining the state of the current collision - * @type Duck.Types.Collider.CollisionResponseType - * @since 2.0.0 - */ - public collisionState: Duck.Types.Collider.CollisionResponseType; - - /** - * @constructor Hitbox - * @param {number} id The PhysicsBody ID - * @param {Vector2} position The position of the Hitbox - * @param {number} w The width of the Hitbox - * @param {number} h The height of the Hitbox - * @param {Vector2} offset The offset position of the Hitbox - * @param {PhysicsBody} physicsObject The PhysicsBody that the Hitbox is attached to - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @param {string|undefined} [debugColor=undefined] The debugColor of the Hitbox - */ - constructor( - position: Vector2, - w: number, - h: number, - offset: Vector2, - physicsObject: PhysicsBody, - game: Game, - scene: Scene, - debugColor?: string - ) { - this.id = uniqueID(); - this.position = position; - this.offset = offset; - this.w = w; - this.h = h; - this.game = game; - this.scene = scene; - this.physicsObject = physicsObject; - - this.debugColor = debugColor; - this.visible = debugColor ? true : false; - this.zIndex = Duck.Layers.Rendering.zIndex.graphicDebug; - this.culled = debugColor ? true : false; - - this.collisionState = 'none'; - } - - /** - * @memberof Hitbox - * @description Draws the hitbox if a debugColor is passed in the constructor. - * - * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList - * - * @since 2.0.0 - */ - public _draw() { - if (this.game.renderer.ctx) { - if (this.debugColor) { - this.game.renderer.drawRect( - this.position.x, - this.position.y, - this.w, - this.h, - this.debugColor - ); - } - } else { - new Debug.Error( - 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' - ); - } - } - - /** - * @memberof Hitbox - * @description Sets the Hitboxes position to the PhysicsBodies position plus the passed offset if one was set - * - * DO NOT CALL MANUALLY, CALLED IN SCENE.__tick - * - * @since 2.0.0 - */ - public _update(physicsObject: PhysicsBody) { - this.physicsObject = physicsObject; - - // resolve - this.position = this.physicsObject.position.add(this.offset); - } - - /** - * @memberof Hitbox - * @description Sets the debugColor and visibility of the Hitbox as a debug aid - * @param {string} debugColor Color - * @param {boolean} [visible=true] What to set the visible property as, optional -> defaults: true - * @since 2.0.0 - */ - public setDebugColor(debugColor: string, visible = true) { - this.debugColor = debugColor; - this.visible = visible; - } - - /** - * @memberof Hitbox - * @description Sets the width and height of the Hitbox - * @param {Vector2} scale The new scale of the Hitbox - * @since 2.0.0 - */ - public scale(scale: Vector2) { - this.w = scale.x; - this.h = scale.y; - } - - /** - * @memberof Hitbox - * @description Sets position of the Hitbox - * @param {Vector2} newPosition The new position of the Hitbox - * @param {Vector2} [offset] The new offset position of the Hitbox, optional -> defaults: Hitbox.offset - * @since 2.0.0 - */ - public setPosition(newPosition: Vector2, offset = this.offset) { - this.offset = offset; - this.position = newPosition.add(this.offset); - } - - /** - * @memberof Hitbox - * @description Auto scales, positions, and offsets the Hitbox based on the shape of the PhysicsBody - * @param {Vector2} [offset] The new offset position of the Hitbox, optional - * @since 2.0.0 - */ - public auto(offset?: Vector2) { - if (this.physicsObject.shape === 'circle') { - // top left corner - const topLeft = new Vector2( - this.physicsObject.position.x - this.physicsObject.r, - this.physicsObject.position.y - this.physicsObject.r - ); - - if (offset) { - topLeft.add(offset); - } - - this.position = topLeft; - - this.scale( - new Vector2(this.physicsObject.r * 2, this.physicsObject.r * 2) - ); - } else { - this.position = this.physicsObject.position; - - if (offset) { - this.position.add(offset); - } - - this.scale(new Vector2(this.physicsObject.w, this.physicsObject.h)); - } - } - - /** - * @memberof Hitbox - * @description Checks if the Hitbox is intersecting with another Hitbox - * @param {Hitbox} Hitbox Hitbox to use to test the intersection - * @returns {boolean} - * @since 2.0.0 - */ - public intersectsWith(hitbox: Hitbox) { - return rectToRectIntersect( - { - position: { - x: this.position.x, - y: this.position.y, - }, - w: this.w, - h: this.h, - }, - { - position: { - x: hitbox.position.x, - y: hitbox.position.y, - }, - w: hitbox.w, - h: hitbox.h, - } - ); - } - - /** - * @memberof Hitbox - * @description Checks if the Hitbox is intersecting with another Hitbox and returns the face that is colliding - * @param {Hitbox} hitbox Hitbox to use to test the intersection - * @returns {Duck.Types.Collider.CollisionResponseType} - * @since 2.0.0 - */ - public intersectsFaceWith(hitbox: Hitbox) { - this.collisionState = hitboxFaceIntersect(this, hitbox); - - return this.collisionState; - } - - /** - * @memberof Hitbox - * @description Checks if the Hitbox is intersecting with other Hitboxes and returns the face that is colliding - * @param {Group | Hitbox[]} hitboxes Hitboxes to use to test the intersection - * @returns {Duck.Types.Collider.CollisionResponseType[]} - * @since 2.0.0 - */ - public groupIntersectsFaceWith(hitboxes: Group | Hitbox[]) { - const collisionStates: Duck.Types.Collider.CollisionResponseType[] = []; - - if (Array.isArray(hitboxes)) { - for (let i = 0; i < hitboxes.length; i++) { - const hitbox = hitboxes[i]; - - collisionStates.push(hitboxFaceIntersect(this, hitbox)); - } - } else { - for (let i = 0; i < hitboxes.group.length; i++) { - const hitbox = hitboxes.group[i]; - - collisionStates.push(hitboxFaceIntersect(this, hitbox)); - } - } - - return collisionStates; - } - - /** - * @memberof Hitbox - * @description Gets the top most coordinate of the Hitbox - * @returns {number} - * @since 2.0.0 - */ - public getTop() { - return this.position.y; - } - - /** - * @memberof Hitbox - * @description Gets the bottom most coordinate of the Hitbox - * @returns {number} - * @since 2.0.0 - */ - public getBottom() { - return this.position.y + this.h; - } - - /** - * @memberof Hitbox - * @description Gets the left most coordinate of the Hitbox - * @returns {number} - * @since 2.0.0 - */ - public getLeft() { - return this.position.x; - } - - /** - * @memberof Hitbox - * @description Gets the right most coordinate of the Hitbox - * @returns {number} - * @since 2.0.0 - */ - public getRight() { - return this.position.x + this.w; - } - - /** - * @memberof Hitbox - * @description Gets the center coordinates of the Hitbox - * @returns {Vector2} - * @since 2.0.0 - */ - public getCenter() { - return new Vector2( - this.position.x + this.w / 2, - this.position.y + this.h / 2 - ); - } - - /** - * @memberof Hitbox - * @description Gets the centerY coordinate of the Hitbox - * @returns {number} - * @since 2.0.0 - */ - public getCenterY() { - return this.position.y + this.h / 2; - } - - /** - * @memberof Hitbox - * @description Gets the centerX coordinate of the Hitbox - * @returns {number} - * @since 2.0.0 - */ - public getCenterX() { - return this.position.x + this.w / 2; - } + /** + * @memberof Hitbox + * @description The unique identifier for a Hitbox + * @type string + * @since 2.0.0 + */ + public readonly id: string; + + /** + * @memberof Hitbox + * @description The Position of the Hitbox + * @type Vector2 + * @since 2.0.0 + */ + public position: Vector2; + + /** + * @memberof Hitbox + * @description The Offset Position of the hitbox + * @type Vector2 + * @since 2.0.0 + */ + public offset: Vector2; + + /** + * @memberof Hitbox + * @description The Width of the Hitbox + * @type number + * @since 2.0.0 + */ + public w: number; + + /** + * @memberof Hitbox + * @description The Height of the Hitbox + * @type number + * @since 2.0.0 + */ + public h: number; + + /** + * @memberof Hitbox + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; + + /** + * @memberof Hitbox + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; + + /** + * @memberof Hitbox + * @description PhysicsBody that the Hitbox is attached to + * @type PhysicsBody + * @since 2.0.0 + */ + public physicsObject: PhysicsBody; + + /** + * @memberof Hitbox + * @description The debug color of the Hitbox, determines if the visibility of the hitbox + * @type Color | undefined + * @since + */ + public debugColor: Color | undefined; + + /** + * @memberof Hitbox + * @description Determines if the Hitbox will be drawn on the screen as a debug aid + * @type boolean + * @since 2.0.0 + */ + public visible: boolean; + + /** + * @memberof Hitbox + * @description The zIndex of the Hitbox, effects how the Hitbox is layered if it is drawn on the screen as a debug aid + * @type number + * @since 2.0.0 + */ + public zIndex: number; + + /** + * @memberof Hitbox + * @description Determines if the Hitbox should be visible by the current scene's current camera + * @type boolean + * @since 2.1.0 + */ + public culled: boolean; + + /** + * @memberof Hitbox + * @description A string determining the state of the current collision + * @type Duck.Types.Collider.CollisionResponseType + * @since 2.0.0 + */ + public collisionState: Duck.Types.Collider.CollisionResponseType; + + /** + * @constructor Hitbox + * @param {number} id The PhysicsBody ID + * @param {Vector2} position The position of the Hitbox + * @param {number} w The width of the Hitbox + * @param {number} h The height of the Hitbox + * @param {Vector2} offset The offset position of the Hitbox + * @param {PhysicsBody} physicsObject The PhysicsBody that the Hitbox is attached to + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @param {Color|undefined} [debugColor=undefined] The debugColor of the Hitbox + */ + constructor( + position: Vector2, + w: number, + h: number, + offset: Vector2, + physicsObject: PhysicsBody, + game: Game, + scene: Scene, + debugColor?: Color + ) { + this.id = uniqueID(); + this.position = position; + this.offset = offset; + this.w = w; + this.h = h; + this.game = game; + this.scene = scene; + this.physicsObject = physicsObject; + + this.debugColor = debugColor; + this.visible = debugColor ? true : false; + this.zIndex = Duck.Layers.Rendering.zIndex.graphicDebug; + this.culled = debugColor ? true : false; + + this.collisionState = 'none'; + } + + /** + * @memberof Hitbox + * @description Draws the hitbox if a debugColor is passed in the constructor. + * + * DO NOT CALL MANUALLY, CALLED IN GAME LOOP USING SCENE.displayList + * + * @since 2.0.0 + */ + public _draw() { + if (this.game.renderer.ctx) { + if (this.debugColor) { + this.game.renderer.drawRect( + this.position.x, + this.position.y, + this.w, + this.h, + this.debugColor + ); + } + } else { + new Debug.Error( + 'CanvasRenderingContext2D is undefined. HTMLCanvasElement is undefined.' + ); + } + } + + /** + * @memberof Hitbox + * @description Sets the Hitboxes position to the PhysicsBodies position plus the passed offset if one was set + * + * DO NOT CALL MANUALLY, CALLED IN SCENE.__tick + * + * @since 2.0.0 + */ + public _update(physicsObject: PhysicsBody) { + this.physicsObject = physicsObject; + + // resolve + this.position = this.physicsObject.position.add(this.offset); + } + + /** + * @memberof Hitbox + * @description Sets the debugColor and visibility of the Hitbox as a debug aid + * @param {string} debugColor Color + * @param {boolean} [visible=true] What to set the visible property as, optional -> defaults: true + * @since 2.0.0 + */ + public setDebugColor(debugColor: string, visible = true) { + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + this.debugColor!.value = debugColor; + this.visible = visible; + } + + /** + * @memberof Hitbox + * @description Sets the width and height of the Hitbox + * @param {Vector2} scale The new scale of the Hitbox + * @since 2.0.0 + */ + public scale(scale: Vector2) { + this.w = scale.x; + this.h = scale.y; + } + + /** + * @memberof Hitbox + * @description Sets position of the Hitbox + * @param {Vector2} newPosition The new position of the Hitbox + * @param {Vector2} [offset] The new offset position of the Hitbox, optional -> defaults: Hitbox.offset + * @since 2.0.0 + */ + public setPosition(newPosition: Vector2, offset = this.offset) { + this.offset = offset; + this.position = newPosition.add(this.offset); + } + + /** + * @memberof Hitbox + * @description Auto scales, positions, and offsets the Hitbox based on the shape of the PhysicsBody + * @param {Vector2} [offset] The new offset position of the Hitbox, optional + * @since 2.0.0 + */ + public auto(offset?: Vector2) { + if (this.physicsObject.shape === 'circle') { + // top left corner + const topLeft = new Vector2( + this.physicsObject.position.x - this.physicsObject.r, + this.physicsObject.position.y - this.physicsObject.r + ); + + if (offset) { + topLeft.add(offset); + } + + this.position = topLeft; + + this.scale( + new Vector2(this.physicsObject.r * 2, this.physicsObject.r * 2) + ); + } else { + this.position = this.physicsObject.position; + + if (offset) { + this.position.add(offset); + } + + this.scale(new Vector2(this.physicsObject.w, this.physicsObject.h)); + } + } + + /** + * @memberof Hitbox + * @description Checks if the Hitbox is intersecting with another Hitbox + * @param {Hitbox} Hitbox Hitbox to use to test the intersection + * @returns {boolean} + * @since 2.0.0 + */ + public intersectsWith(hitbox: Hitbox) { + return rectToRectIntersect( + { + position: { + x: this.position.x, + y: this.position.y, + }, + w: this.w, + h: this.h, + }, + { + position: { + x: hitbox.position.x, + y: hitbox.position.y, + }, + w: hitbox.w, + h: hitbox.h, + } + ); + } + + /** + * @memberof Hitbox + * @description Checks if the Hitbox is intersecting with another Hitbox and returns the face that is colliding + * @param {Hitbox} hitbox Hitbox to use to test the intersection + * @returns {Duck.Types.Collider.CollisionResponseType} + * @since 2.0.0 + */ + public intersectsFaceWith(hitbox: Hitbox) { + this.collisionState = hitboxFaceIntersect(this, hitbox); + + return this.collisionState; + } + + /** + * @memberof Hitbox + * @description Checks if the Hitbox is intersecting with other Hitboxes and returns the face that is colliding + * @param {Group | Hitbox[]} hitboxes Hitboxes to use to test the intersection + * @returns {Duck.Types.Collider.CollisionResponseType[]} + * @since 2.0.0 + */ + public groupIntersectsFaceWith(hitboxes: Group | Hitbox[]) { + const collisionStates: Duck.Types.Collider.CollisionResponseType[] = []; + + if (Array.isArray(hitboxes)) { + for (let i = 0; i < hitboxes.length; i++) { + const hitbox = hitboxes[i]; + + collisionStates.push(hitboxFaceIntersect(this, hitbox)); + } + } else { + for (let i = 0; i < hitboxes.group.length; i++) { + const hitbox = hitboxes.group[i]; + + collisionStates.push(hitboxFaceIntersect(this, hitbox)); + } + } + + return collisionStates; + } + + /** + * @memberof Hitbox + * @description Gets the top most coordinate of the Hitbox + * @returns {number} + * @since 2.0.0 + */ + public getTop() { + return this.position.y; + } + + /** + * @memberof Hitbox + * @description Gets the bottom most coordinate of the Hitbox + * @returns {number} + * @since 2.0.0 + */ + public getBottom() { + return this.position.y + this.h; + } + + /** + * @memberof Hitbox + * @description Gets the left most coordinate of the Hitbox + * @returns {number} + * @since 2.0.0 + */ + public getLeft() { + return this.position.x; + } + + /** + * @memberof Hitbox + * @description Gets the right most coordinate of the Hitbox + * @returns {number} + * @since 2.0.0 + */ + public getRight() { + return this.position.x + this.w; + } + + /** + * @memberof Hitbox + * @description Gets the center coordinates of the Hitbox + * @returns {Vector2} + * @since 2.0.0 + */ + public getCenter() { + return new Vector2( + this.position.x + this.w / 2, + this.position.y + this.h / 2 + ); + } + + /** + * @memberof Hitbox + * @description Gets the centerY coordinate of the Hitbox + * @returns {number} + * @since 2.0.0 + */ + public getCenterY() { + return this.position.y + this.h / 2; + } + + /** + * @memberof Hitbox + * @description Gets the centerX coordinate of the Hitbox + * @returns {number} + * @since 2.0.0 + */ + public getCenterX() { + return this.position.x + this.w / 2; + } } diff --git a/src/core/physics/physicsBody.ts b/src/core/physics/physicsBody.ts index c0453976..17632f1d 100644 --- a/src/core/physics/physicsBody.ts +++ b/src/core/physics/physicsBody.ts @@ -4,6 +4,7 @@ import Game from '../game'; import Group from '../group/group'; import clamp from '../math/clamp'; import Vector2 from '../math/vector2'; +import Color from '../renderer/models/color'; import Scene from '../scene'; import Collider from './models/collider'; import Hitbox from './models/hitbox'; @@ -15,870 +16,861 @@ import Hitbox from './models/hitbox'; * @since 2.0.0 */ export default class PhysicsBody { - /** - * @memberof PhysicsBody - * @description The unique identifier for a GameObject - * @type string - * @since 2.0.0 - */ - public readonly id: string; - - /** - * @memberof PhysicsBody - * @description The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite' - * @type Duck.Types.Collider.ShapeString - * @since 2.0.0 - */ - public readonly shape: Duck.Types.Collider.ShapeString; - - /** - * @memberof PhysicsBody - * @description The current global position of the GameObject - * @type Vector2 - * @since 2.0.0 - */ - public position: Vector2; - - /** - * @memberof PhysicsBody - * @description The width of the GameObject - * @type number - * @since 2.0.0 - */ - public w: number; - - /** - * @memberof PhysicsBody - * @description The height of the GameObject - * @type number - * @since 2.0.0 - */ - public h: number; - - /** - * @memberof PhysicsBody - * @description The radius of the GameObject - * @type number - * @since 2.0.0 - */ - public r: number; - - /** - * @memberof PhysicsBody - * @description PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody - * - * defaults: { type: 'KinematicBody'} - * - * @type Duck.Types.PhysicsBody.Config - * @since 2.0.0 - */ - public options: Duck.Types.PhysicsBody.Config; - - /** - * @memberof PhysicsBody - * @description The Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; - - /** - * @memberof PhysicsBody - * @description The Scene instance - * @type Game - * @since 2.0.0 - */ - public scene: Scene; - - /** - * @memberof PhysicsBody - * @description The Collider instance of the PhysicsBody - * @type Collider | undefined - * @since 2.0.0 - */ - public collider: Collider | undefined; - - /** - * @memberof PhysicsBody - * @description An array or group of GameObjects that can collide with the PhysicsBody - * @type Duck.TypeClasses.GameObjects.GameObject[] | Group> - * @since 2.0.0 - */ - public collidesWith: - | Duck.TypeClasses.GameObjects.GameObject[] - | Group>; - - /** - * @memberof PhysicsBody - * @description The Collider Hitbox of the PhysicsBody - * @type Hitbox | undefined - * @since 2.0.0 - */ - public hitbox: Hitbox | undefined; - - /** - * @memberof PhysicsBody - * @description The velocity of the PhysicsBody - * @type Vector2 - * @since 2.0.0 - */ - public velocity: Vector2; - - /** - * @memberof PhysicsBody - * @description The bounds of the PhysicsBody - * @type Duck.Types.Math.BoundsLike - * @since 2.0.0 - */ - public bounds: Duck.Types.Math.BoundsLike; - - /** - * @memberof PhysicsBody - * @description Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList - * , changing this value does nothing, must use PhysicsBody.setEnabled - * @type boolean - * @since 2.0.0 - */ - public enabled: boolean; - - /** - * @memberof PhysicsBody - * @description Determines if the PhysicsBody is attached to another PhysicsBody - * @type boolean - * @since 2.0.0 - */ - public isAttached: boolean; - - /** - * @memberof PhysicsBody - * @description PhysicsBodies that are attached - * @type PhysicsBody[] - * @since 2.0.0 - */ - public attachedChildren: PhysicsBody[]; - - /** - * @memberof PhysicsBody - * @description The offset between the PhysicsBody that self is attached to - * @type Vector2 - * @since 2.0.0 - */ - public attachOffset: Vector2; - - /** - * @memberof PhysicsBody - * @description Object that has all the physics method - * @type { addCollider: (collidesWith: Duck.TypeClasses.GameObjects.GameObject[]) => Collider; - * setBounds: (x: number, y: number, w: number, h: number) => void - * } - * @since 2.0.0 - */ - public physics: { - /** - * @memberof PhysicsBody#physics - * @description Adds a collider to the PhysicsBody - * @param {Duck.TypeClasses.GameObjects.GameObject[]} collidesWith What the GameObject collides with - * @since 2.0.0 - */ - addCollider: ( - collidesWith: Duck.TypeClasses.GameObjects.GameObject[] - ) => Collider | undefined; - - /** - * @memberof PhysicsBody#physics - * @description Adds a hitbox to the PhysicsBody - * @param {number} [w] Width of hitbox, optional -> defaults: PhysicsBody.w or PhysicsBody.r * 2 - * @param {number} [h] Height of hitbox, optional -> defaults: PhysicsBody.h or PhysicsBody.r * 2 - * @param {Vector2} [offset=Vector2.ZERO] Offset of hitbox, optional -> defaults: Vector2.ZERO - * @since 2.0.0 - */ - addHitbox: (w?: number, h?: number, offset?: Vector2) => Hitbox; - - /** - * @memberof GameObject#physics - * @description Adds bounds to the GameObject - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of the bounds - * @param {number} h Height of the bounds - * @since 2.0.0 - */ - setBounds: (x: number, y: number, w: number, h: number) => void; - }; - - /** - * @constructor PhysicsBody - * @description Creates a PhysicsBody instance. Extended by GameObject - * @param {Duck.Types.Collider.ShapeString} shape Shape of PhysicsBody - * @param {number} id ID from GameObject ID - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width - * @param {number} h Height - * @param {number} r Radius - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 2.0.0 - */ - constructor( - shape: Duck.Types.Collider.ShapeString, - id: string, - x: number, - y: number, - w: number, - h: number, - r: number, - game: Game, - scene: Scene - ) { - this.shape = shape; - this.id = id; - - this.position = new Vector2(x, y); - this.w = w; - this.h = h; - this.r = r; - - this.options = { - type: 'KinematicBody', - }; - - this.game = game; - this.scene = scene; - - this.velocity = Vector2.ZERO; - - this.collider = undefined; - this.collidesWith = []; - - this.enabled = true; - - this.isAttached = false; - this.attachedChildren = []; - this.attachOffset = Vector2.ZERO; - - this.bounds = { - x: -Infinity, - y: -Infinity, - w: Infinity, - h: Infinity, - }; - - // methods - this.physics = { - addCollider: ( - collidesWith: - | Duck.Types.GameObject[] - | Group> - ) => { - if (!this.hitbox) { - new Debug.Error( - 'Cannot add collider to PhysicsObject. No hitbox exists. Create a hitbox first using PhysicsObject.physics.addHitbox' - ); - return undefined; - } - - if (!this.game.config.physics?.enabled) { - new Debug.Error( - 'Cannot add collider to PhysicsObject. Game Config.physics.enabled must be truthy!' - ); - } - - this.collidesWith = collidesWith; - - this.collider = new Collider( - this.hitbox, - collidesWith, - this.game - ); - - return this.collider; - }, - addHitbox: ( - w?: number, - h?: number, - offset = Vector2.ZERO, - debugColor?: string - ) => { - if (!this.game.config.physics?.enabled) { - new Debug.Error( - 'Cannot add hitbox to PhysicsObject. Game Config.physics.enabled must be truthy!' - ); - } - - this.hitbox = new Hitbox( - this.position, - w || 0, - h || 0, - offset, - this, - this.game, - this.scene, - debugColor - ); - - if (!w && !h) { - this.hitbox.auto(offset); - } - - this.scene.displayList.add(this.hitbox); - - return this.hitbox; - }, - setBounds: (x: number, y: number, w: number, h: number) => { - this.bounds.x = x; - this.bounds.y = y; - this.bounds.w = w; - this.bounds.h = h; - }, - }; - } - - public setEnabled(enabled: boolean) { - this.enabled = enabled; - return this.enabled; - } - - /** - * @memberof PhysicsBody - * @description Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. - * Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. - * Updates hitbox.collisionState if hitbox exists. - * - * DO NOT CALL MANUALLY, CALLED IN SCENE.__tick - * - * @since 2.0.0 - */ - public _update() { - this.position.x += this.velocity.x * this.game.smoothDeltaTime; - this.position.y += this.velocity.y * this.game.smoothDeltaTime; - - // clamp to bounds - this.position.x = clamp(this.position.x, this.bounds.x, this.bounds.w); - this.position.y = clamp(this.position.y, this.bounds.y, this.bounds.h); - - // set to none - this.velocity.x = 0; - this.velocity.y = 0; - - // roundPixels - if (this.game.config.roundPixels) { - this.position.round(); - } - - // apply gravity - if (this.game.config.physics?.gravity) { - if ( - this.options.type === 'KinematicBody' || - this.options.type === 'RigidBody' - ) { - this.applyGravity( - Vector2.fromVector2Like(this.game.config.physics.gravity) - ); - } - } - - // update attached children position - this.attachedChildren.forEach((object) => { - const pos = this.position.clone(); - pos.subtract(object.attachOffset); - - object.position = pos; - if (object.hitbox) { - object.hitbox.position = object.position - .clone() - .add(object.hitbox.offset); - } - }); - } - - /** - * @memberof PhysicsBody - * @description Sets the PhysicsBody type, PhysicsBody type determines what can be applied and what effects the body - * @param {Duck.Types.PhysicsBody.Type} type The type of the PhysicsBody, 'KinematicBody' | 'RigidBody' | 'StaticBody' - * @since 2.0.0 - */ - public setType(type: Duck.Types.PhysicsBody.Type) { - this.options.type = type; - return this.options; - } - - /** - * @memberof PhysicsBody - * @description Attaches self to another PhysicsBody, makes self unmovable and follows the PhysicsBody accordingly - * @param {PhysicsBody} object PhysicsBody to attach to - * @param {Vector2} [diffOffset=Vector2] A different offset, optional -> defaults: Difference in positions from PhysicsBody to self - * @since 2.0.0 - */ - public attachTo( - object: PhysicsBody, - diffOffset?: Vector2 - ) { - const offset = - diffOffset || - Vector2.fromVec(object.position).subtract(this.position); - - this.isAttached = true; - this.attachOffset = offset; - - object.attachedChildren.push(this); - } - - /** - * @memberof PhysicsBody - * @description Attaches a child PhysicsBody to self, makes child unmovable and follows the self accordingly - * @param {PhysicsBody} object PhysicsBody to attach - * @param {Vector2} [diffOffset=Vector2] A different offset, optional -> defaults: Difference in positions from self to PhysicsBody - * @since 2.0.0 - */ - public attachChild( - object: PhysicsBody, - diffOffset?: Vector2 - ) { - const offset = - diffOffset || - Vector2.fromVec(this.position).subtract(object.position); - - object.isAttached = true; - object.attachOffset = offset; - - this.attachedChildren.push(object); - } - - /** - * @memberof PhysicsBody - * @description Detaches self from another PhysicsBody - * @param {PhysicsBody} object PhysicsBody to detach from - * @since 2.0.0 - */ - public detachFrom(object: PhysicsBody) { - const f = object.attachedChildren.find((o) => o.id === this.id); - - if (f) { - this.isAttached = false; - this.attachOffset = Vector2.ZERO; - object.attachedChildren.splice( - object.attachedChildren.findIndex((o) => o.id === this.id), - 1 - ); - } else { - new Debug.Error( - 'Cannot detachFrom from object, PhysicsBody is not attached to anything.' - ); - } - } - - /** - * @memberof PhysicsBody - * @description Detaches PhysicsBody from self - * @param {PhysicsBody} object PhysicsBody to detach - * @since 2.0.0 - */ - public detachChild(object: PhysicsBody) { - const f = this.attachedChildren.find((o) => o.id === object.id); - - if (f) { - object.isAttached = false; - object.attachOffset = Vector2.ZERO; - this.attachedChildren.splice( - this.attachedChildren.findIndex((o) => o.id === object.id), - 1 - ); - } else { - new Debug.Error( - 'Cannot detachChild from PhysicsBody, object is not attached to anything.' - ); - } - } - - /** - * @memberof PhysicsBody - * @description Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody - * @param {'x'|'y'} axis The axis to set the velocity of - * @param {number} pxPerSecond The value to set the velocity axis as, in pixels per second - * @since 2.0.0 - */ - public setVelocity(axis: 'x' | 'y', pxPerSecond: number) { - if (this.options.type !== 'KinematicBody') { - new Debug.Error( - `Cannot set velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot set velocity as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - if (axis === 'x') { - this.velocity.x = pxPerSecond; - } - - if (axis === 'y') { - this.velocity.y = pxPerSecond; - } - } - - /** - * @memberof PhysicsBody - * @description Sets the velocity.x, PhysicsBody.options.type must be KinematicBody - * @param {number} pxPerSecond The value to set the velocity axis as, in pixels per second - * @since 2.0.0 - */ - public setVelocityX(pxPerSecond: number) { - if (this.options.type !== 'KinematicBody') { - new Debug.Error( - `Cannot set velocity X as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot set velocity X as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - this.velocity.x = pxPerSecond; - } - - /** - * @memberof PhysicsBody - * @description Sets the velocity.y, PhysicsBody.options.type must be KinematicBody - * @param {number} pxPerSecond The value to set the velocity.y as, in pixels per second - * @since 2.0.0 - */ - public setVelocityY(pxPerSecond: number) { - if (this.options.type !== 'KinematicBody') { - new Debug.Error( - `Cannot set velocity Y as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot set velocity Y as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - this.velocity.y = pxPerSecond; - } - - /** - * @memberof PhysicsBody - * @description Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody - * @param {Vector2} target The target velocity - * @param {number} amount The value to increase the velocity by - * @since 2.0.0 - */ - public accelerateVelocity(target: Vector2, amount: number) { - if (this.options.type !== 'KinematicBody') { - new Debug.Error( - `Cannot accelerate velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot accelerate velocity as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - this.velocity.moveTowards(this.velocity, target, amount); - } - - /** - * @memberof PhysicsBody - * @description Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody - * @param {number} frictionAmount The value to decrease the velocity by - * @since 2.0.0 - */ - public applyFriction(frictionAmount: Vector2) { - if ( - this.options.type !== 'KinematicBody' && - this.options.type !== 'RigidBody' - ) { - new Debug.Error( - `Cannot apply friction as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot apply friction as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - this.velocity.subtract(frictionAmount).clampMin(0); - } - - /** - * @memberof PhysicsBody - * @description Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody - * @param {Vector2} gravity The Vector2 to add to the velocity by - * @since 2.0.0 - */ - public applyGravity(gravity: Vector2) { - if ( - this.options.type !== 'KinematicBody' && - this.options.type !== 'RigidBody' - ) { - new Debug.Error( - `Cannot apply gravity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot apply gravity as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - if (gravity.x !== 0) { - this.velocity.x += gravity.x; - } - if (gravity.y !== 0) { - this.velocity.y += gravity.y; - } - } - - /** - * @memberof PhysicsBody - * @description Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody - * @param {Duck.Types.Math.BoundsLike} [bounds=PhysicsBody.bounds] The bounds of the PhysicsBody, optional -> defaults: PhysicsBody.bounds, if none - * are set, it is infinite - * @param {number} [restitution=1] How much energy is lost when bouncing, a number between 0-1 to loose energy, - * 1-any to increase energy, 1 = none, must be a positive number - * @since 2.0.0 - */ - public bounceVelocityBounds(bounds = this.bounds, restitution = 1) { - if ( - this.options.type !== 'KinematicBody' && - this.options.type !== 'RigidBody' - ) { - new Debug.Error( - `Cannot bounce velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot bounce velocity as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - if (this.position.x > bounds.w || this.position.x < bounds.x) { - this.velocity.x = this.velocity.x * -restitution; - } - if (this.position.y > bounds.h || this.position.y < bounds.y) { - this.velocity.y = this.velocity.y * -restitution; - } - } - - /** - * @memberof PhysicsBody - * @description Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody - * - * @example myPhysicsBody.setVelocity('x', 3); - * myPhysicsBody.reflect(); // velocity: 0, -3 - * - * @since 2.0.0 - */ - public reflectVelocity() { - if ( - this.options.type !== 'KinematicBody' && - this.options.type !== 'RigidBody' - ) { - new Debug.Error( - `Cannot reflect velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` - ); - return; - } - - if (this.isAttached) { - new Debug.Error( - 'Cannot reflect velocity as PhysicsBody is attached to another PhysicsBody.' - ); - return; - } - - this.velocity.reflect(); - } - - /** - * @memberof PhysicsBody - * @description Auto scales the PhysicsBody.hitbox to fit the shape - * @param {Vector2} [offset] Position offset, optional -> defaults: undefined - * @since 2.0.0 - */ - public autoFitHitbox(offset?: Vector2) { - this.hitbox?.auto(offset); - } - - /** - * @memberof PhysicsBody - * @description Scales the PhysicsBody.hitbox - * @param {Vector2} scale Scale Vector2, x is width, y is height - * @since 2.0.0 - */ - public scaleHitbox(scale: Vector2) { - this.hitbox?.scale(scale); - } - - /** - * @memberof PhysicsBody - * @description Gets the top most coordinate of the PhysicsBody - * @returns {number} - * @since 2.0.0 - */ - public getTop() { - return this.position.y; - } - - /** - * @memberof PhysicsBody - * @description Gets the bottom most coordinate of the PhysicsBody - * @returns {number} - * @since 2.0.0 - */ - public getBottom() { - return this.position.y + this.h; - } - - /** - * @memberof PhysicsBody - * @description Gets the left most coordinate of the PhysicsBody - * @returns {number} - * @since 2.0.0 - */ - public getLeft() { - return this.position.x; - } - - /** - * @memberof PhysicsBody - * @description Gets the right most coordinate of the PhysicsBody - * @returns {number} - * @since 2.0.0 - */ - public getRight() { - return this.position.x + this.w; - } - - /** - * @memberof PhysicsBody - * @description Gets the center coordinates of the PhysicsBody - * @returns {Vector2} - * @since 2.0.0 - */ - public getCenter() { - if (this.shape === 'circle') { - return new Vector2(this.position.x, this.position.y); - } else { - return new Vector2( - this.position.x + this.w / 2, - this.position.y + this.h / 2 - ); - } - } - - /** - * @memberof PhysicsBody - * @description Gets the centerY coordinate of the PhysicsBody - * @returns {number} - * @since 2.0.0 - */ - public getCenterY() { - if (this.shape === 'circle') { - return this.position.y + this.r; - } else { - return this.position.y + this.h / 2; - } - } - - /** - * @memberof PhysicsBody - * @description Gets the centerX coordinate of the PhysicsBody - * @returns {number} - * @since 2.0.0 - */ - public getCenterX() { - if (this.shape === 'circle') { - return this.position.x + this.r; - } else { - return this.position.x + this.w / 2; - } - } - - /** - * @memberof PhysicsBody - * @description Checks and returns the Collision Type if two hitboxes are colliding - * @param {PhysicsBody} obj PhysicsBody to check their hitbox with - * @returns {false | Duck.Types.Collider.CollisionResponseType | undefined} - * @since 2.0.0 - */ - public isColliding(obj: PhysicsBody) { - if (obj.hitbox) { - return this.hitbox?.intersectsFaceWith(obj.hitbox) !== 'none' - ? this.hitbox?.intersectsFaceWith(obj.hitbox) - : false; - } else { - return false; - } - } - - /** - * @memberof PhysicsBody - * @description Checks and returns the Collision Type if multiple hitboxes are colliding - * @param {Group> | PhysicsBody[]} objects PhysicsBodies to check their hitbox with - * @returns {false | Duck.Types.Collider.CollisionResponseType} - * @since 2.0.0 - */ - public isCollidingGroup( - objects: - | Group> - | PhysicsBody[] - ) { - const hitboxes: Hitbox[] = []; - - if (Array.isArray(objects)) { - objects.forEach((obj) => { - if (obj.hitbox) { - hitboxes.push(obj.hitbox); - } - }); - } else { - objects.each((obj) => { - if (obj.hitbox) { - hitboxes.push(obj.hitbox); - } - }); - } - - const states = this.hitbox?.groupIntersectsFaceWith(hitboxes); - - return states?.includes('top') - ? 'top' - : false || states?.includes('bottom') - ? 'bottom' - : false || states?.includes('left') - ? 'left' - : false || states?.includes('right') - ? 'right' - : false; - } + /** + * @memberof PhysicsBody + * @description The unique identifier for a GameObject + * @type string + * @since 2.0.0 + */ + public readonly id: string; + + /** + * @memberof PhysicsBody + * @description The shape of the GameObject, 'rect', 'circle', 'roundrect', or 'sprite' + * @type Duck.Types.Collider.ShapeString + * @since 2.0.0 + */ + public readonly shape: Duck.Types.Collider.ShapeString; + + /** + * @memberof PhysicsBody + * @description The current global position of the GameObject + * @type Vector2 + * @since 2.0.0 + */ + public position: Vector2; + + /** + * @memberof PhysicsBody + * @description The width of the GameObject + * @type number + * @since 2.0.0 + */ + public w: number; + + /** + * @memberof PhysicsBody + * @description The height of the GameObject + * @type number + * @since 2.0.0 + */ + public h: number; + + /** + * @memberof PhysicsBody + * @description The radius of the GameObject + * @type number + * @since 2.0.0 + */ + public r: number; + + /** + * @memberof PhysicsBody + * @description PhysicsBody config, includes: type - KinematicBody | RigidBody | StaticBody + * + * defaults: { type: 'KinematicBody'} + * + * @type Duck.Types.PhysicsBody.Config + * @since 2.0.0 + */ + public options: Duck.Types.PhysicsBody.Config; + + /** + * @memberof PhysicsBody + * @description The Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; + + /** + * @memberof PhysicsBody + * @description The Scene instance + * @type Game + * @since 2.0.0 + */ + public scene: Scene; + + /** + * @memberof PhysicsBody + * @description The Collider instance of the PhysicsBody + * @type Collider | undefined + * @since 2.0.0 + */ + public collider: Collider | undefined; + + /** + * @memberof PhysicsBody + * @description An array or group of GameObjects that can collide with the PhysicsBody + * @type Duck.TypeClasses.GameObjects.GameObject[] | Group> + * @since 2.0.0 + */ + public collidesWith: + | Duck.TypeClasses.GameObjects.GameObject[] + | Group>; + + /** + * @memberof PhysicsBody + * @description The Collider Hitbox of the PhysicsBody + * @type Hitbox | undefined + * @since 2.0.0 + */ + public hitbox: Hitbox | undefined; + + /** + * @memberof PhysicsBody + * @description The velocity of the PhysicsBody + * @type Vector2 + * @since 2.0.0 + */ + public velocity: Vector2; + + /** + * @memberof PhysicsBody + * @description The bounds of the PhysicsBody + * @type Duck.Types.Math.BoundsLike + * @since 2.0.0 + */ + public bounds: Duck.Types.Math.BoundsLike; + + /** + * @memberof PhysicsBody + * @description Determines if the PhysicsBody._update is called by the Scene.physicsServer used by Scene.physicsList + * , changing this value does nothing, must use PhysicsBody.setEnabled + * @type boolean + * @since 2.0.0 + */ + public enabled: boolean; + + /** + * @memberof PhysicsBody + * @description Determines if the PhysicsBody is attached to another PhysicsBody + * @type boolean + * @since 2.0.0 + */ + public isAttached: boolean; + + /** + * @memberof PhysicsBody + * @description PhysicsBodies that are attached + * @type PhysicsBody[] + * @since 2.0.0 + */ + public attachedChildren: PhysicsBody[]; + + /** + * @memberof PhysicsBody + * @description The offset between the PhysicsBody that self is attached to + * @type Vector2 + * @since 2.0.0 + */ + public attachOffset: Vector2; + + /** + * @memberof PhysicsBody + * @description Object that has all the physics method + * @type { addCollider: (collidesWith: Duck.TypeClasses.GameObjects.GameObject[]) => Collider; + * setBounds: (x: number, y: number, w: number, h: number) => void + * } + * @since 2.0.0 + */ + public physics: { + /** + * @memberof PhysicsBody#physics + * @description Adds a collider to the PhysicsBody + * @param {Duck.TypeClasses.GameObjects.GameObject[]} collidesWith What the GameObject collides with + * @since 2.0.0 + */ + addCollider: ( + collidesWith: Duck.TypeClasses.GameObjects.GameObject[] + ) => Collider | undefined; + + /** + * @memberof PhysicsBody#physics + * @description Adds a hitbox to the PhysicsBody + * @param {number} [w] Width of hitbox, optional -> defaults: PhysicsBody.w or PhysicsBody.r * 2 + * @param {number} [h] Height of hitbox, optional -> defaults: PhysicsBody.h or PhysicsBody.r * 2 + * @param {Vector2} [offset=Vector2.ZERO] Offset of hitbox, optional -> defaults: Vector2.ZERO + * @since 2.0.0 + */ + addHitbox: (w?: number, h?: number, offset?: Vector2) => Hitbox; + + /** + * @memberof GameObject#physics + * @description Adds bounds to the GameObject + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of the bounds + * @param {number} h Height of the bounds + * @since 2.0.0 + */ + setBounds: (x: number, y: number, w: number, h: number) => void; + }; + + /** + * @constructor PhysicsBody + * @description Creates a PhysicsBody instance. Extended by GameObject + * @param {Duck.Types.Collider.ShapeString} shape Shape of PhysicsBody + * @param {number} id ID from GameObject ID + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width + * @param {number} h Height + * @param {number} r Radius + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 2.0.0 + */ + constructor( + shape: Duck.Types.Collider.ShapeString, + id: string, + x: number, + y: number, + w: number, + h: number, + r: number, + game: Game, + scene: Scene + ) { + this.shape = shape; + this.id = id; + + this.position = new Vector2(x, y); + this.w = w; + this.h = h; + this.r = r; + + this.options = { + type: 'KinematicBody', + }; + + this.game = game; + this.scene = scene; + + this.velocity = Vector2.ZERO; + + this.collider = undefined; + this.collidesWith = []; + + this.enabled = true; + + this.isAttached = false; + this.attachedChildren = []; + this.attachOffset = Vector2.ZERO; + + this.bounds = { + x: -Infinity, + y: -Infinity, + w: Infinity, + h: Infinity, + }; + + // methods + this.physics = { + addCollider: ( + collidesWith: + | Duck.Types.GameObject[] + | Group> + ) => { + if (!this.hitbox) { + new Debug.Error( + 'Cannot add collider to PhysicsObject. No hitbox exists. Create a hitbox first using PhysicsObject.physics.addHitbox' + ); + return undefined; + } + + if (!this.game.config.physics?.enabled) { + new Debug.Error( + 'Cannot add collider to PhysicsObject. Game Config.physics.enabled must be truthy!' + ); + } + + this.collidesWith = collidesWith; + + this.collider = new Collider(this.hitbox, collidesWith, this.game); + + return this.collider; + }, + addHitbox: ( + w?: number, + h?: number, + offset = Vector2.ZERO, + debugColor?: Color + ) => { + if (!this.game.config.physics?.enabled) { + new Debug.Error( + 'Cannot add hitbox to PhysicsObject. Game Config.physics.enabled must be truthy!' + ); + } + + this.hitbox = new Hitbox( + this.position, + w || 0, + h || 0, + offset, + this, + this.game, + this.scene, + debugColor + ); + + if (!w && !h) { + this.hitbox.auto(offset); + } + + this.scene.displayList.add(this.hitbox); + + return this.hitbox; + }, + setBounds: (x: number, y: number, w: number, h: number) => { + this.bounds.x = x; + this.bounds.y = y; + this.bounds.w = w; + this.bounds.h = h; + }, + }; + } + + public setEnabled(enabled: boolean) { + this.enabled = enabled; + return this.enabled; + } + + /** + * @memberof PhysicsBody + * @description Updates the PhysicsBody's position by the velocity. Sets velocity to 0 on every tick. + * Clamps position to bounds if exists. Rounds pixels if roundPixels game config is set to true. + * Updates hitbox.collisionState if hitbox exists. + * + * DO NOT CALL MANUALLY, CALLED IN SCENE.__tick + * + * @since 2.0.0 + */ + public _update() { + this.position.x += this.velocity.x * this.game.smoothDeltaTime; + this.position.y += this.velocity.y * this.game.smoothDeltaTime; + + // clamp to bounds + this.position.x = clamp(this.position.x, this.bounds.x, this.bounds.w); + this.position.y = clamp(this.position.y, this.bounds.y, this.bounds.h); + + // set to none + this.velocity.x = 0; + this.velocity.y = 0; + + // roundPixels + if (this.game.config.roundPixels) { + this.position.round(); + } + + // apply gravity + if (this.game.config.physics?.gravity) { + if ( + this.options.type === 'KinematicBody' || + this.options.type === 'RigidBody' + ) { + this.applyGravity( + Vector2.fromVector2Like(this.game.config.physics.gravity) + ); + } + } + + // update attached children position + this.attachedChildren.forEach((object) => { + const pos = this.position.clone(); + pos.subtract(object.attachOffset); + + object.position = pos; + if (object.hitbox) { + object.hitbox.position = object.position + .clone() + .add(object.hitbox.offset); + } + }); + } + + /** + * @memberof PhysicsBody + * @description Sets the PhysicsBody type, PhysicsBody type determines what can be applied and what effects the body + * @param {Duck.Types.PhysicsBody.Type} type The type of the PhysicsBody, 'KinematicBody' | 'RigidBody' | 'StaticBody' + * @since 2.0.0 + */ + public setType(type: Duck.Types.PhysicsBody.Type) { + this.options.type = type; + return this.options; + } + + /** + * @memberof PhysicsBody + * @description Attaches self to another PhysicsBody, makes self unmovable and follows the PhysicsBody accordingly + * @param {PhysicsBody} object PhysicsBody to attach to + * @param {Vector2} [diffOffset=Vector2] A different offset, optional -> defaults: Difference in positions from PhysicsBody to self + * @since 2.0.0 + */ + public attachTo( + object: PhysicsBody, + diffOffset?: Vector2 + ) { + const offset = + diffOffset || Vector2.fromVec(object.position).subtract(this.position); + + this.isAttached = true; + this.attachOffset = offset; + + object.attachedChildren.push(this); + } + + /** + * @memberof PhysicsBody + * @description Attaches a child PhysicsBody to self, makes child unmovable and follows the self accordingly + * @param {PhysicsBody} object PhysicsBody to attach + * @param {Vector2} [diffOffset=Vector2] A different offset, optional -> defaults: Difference in positions from self to PhysicsBody + * @since 2.0.0 + */ + public attachChild( + object: PhysicsBody, + diffOffset?: Vector2 + ) { + const offset = + diffOffset || Vector2.fromVec(this.position).subtract(object.position); + + object.isAttached = true; + object.attachOffset = offset; + + this.attachedChildren.push(object); + } + + /** + * @memberof PhysicsBody + * @description Detaches self from another PhysicsBody + * @param {PhysicsBody} object PhysicsBody to detach from + * @since 2.0.0 + */ + public detachFrom(object: PhysicsBody) { + const f = object.attachedChildren.find((o) => o.id === this.id); + + if (f) { + this.isAttached = false; + this.attachOffset = Vector2.ZERO; + object.attachedChildren.splice( + object.attachedChildren.findIndex((o) => o.id === this.id), + 1 + ); + } else { + new Debug.Error( + 'Cannot detachFrom from object, PhysicsBody is not attached to anything.' + ); + } + } + + /** + * @memberof PhysicsBody + * @description Detaches PhysicsBody from self + * @param {PhysicsBody} object PhysicsBody to detach + * @since 2.0.0 + */ + public detachChild(object: PhysicsBody) { + const f = this.attachedChildren.find((o) => o.id === object.id); + + if (f) { + object.isAttached = false; + object.attachOffset = Vector2.ZERO; + this.attachedChildren.splice( + this.attachedChildren.findIndex((o) => o.id === object.id), + 1 + ); + } else { + new Debug.Error( + 'Cannot detachChild from PhysicsBody, object is not attached to anything.' + ); + } + } + + /** + * @memberof PhysicsBody + * @description Sets the velocity based on an axis, PhysicsBody.options.type must be KinematicBody + * @param {'x'|'y'} axis The axis to set the velocity of + * @param {number} pxPerSecond The value to set the velocity axis as, in pixels per second + * @since 2.0.0 + */ + public setVelocity(axis: 'x' | 'y', pxPerSecond: number) { + if (this.options.type !== 'KinematicBody') { + new Debug.Error( + `Cannot set velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` + ); + return; + } + + if (this.isAttached) { + new Debug.Error( + 'Cannot set velocity as PhysicsBody is attached to another PhysicsBody.' + ); + return; + } + + if (axis === 'x') { + this.velocity.x = pxPerSecond; + } + + if (axis === 'y') { + this.velocity.y = pxPerSecond; + } + } + + /** + * @memberof PhysicsBody + * @description Sets the velocity.x, PhysicsBody.options.type must be KinematicBody + * @param {number} pxPerSecond The value to set the velocity axis as, in pixels per second + * @since 2.0.0 + */ + public setVelocityX(pxPerSecond: number) { + if (this.options.type !== 'KinematicBody') { + new Debug.Error( + `Cannot set velocity X as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` + ); + return; + } + + if (this.isAttached) { + new Debug.Error( + 'Cannot set velocity X as PhysicsBody is attached to another PhysicsBody.' + ); + return; + } + + this.velocity.x = pxPerSecond; + } + + /** + * @memberof PhysicsBody + * @description Sets the velocity.y, PhysicsBody.options.type must be KinematicBody + * @param {number} pxPerSecond The value to set the velocity.y as, in pixels per second + * @since 2.0.0 + */ + public setVelocityY(pxPerSecond: number) { + if (this.options.type !== 'KinematicBody') { + new Debug.Error( + `Cannot set velocity Y as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` + ); + return; + } + + if (this.isAttached) { + new Debug.Error( + 'Cannot set velocity Y as PhysicsBody is attached to another PhysicsBody.' + ); + return; + } + + this.velocity.y = pxPerSecond; + } + + /** + * @memberof PhysicsBody + * @description Accelerates the velocity by an amount, PhysicsBody.options.type must be KinematicBody + * @param {Vector2} target The target velocity + * @param {number} amount The value to increase the velocity by + * @since 2.0.0 + */ + public accelerateVelocity(target: Vector2, amount: number) { + if (this.options.type !== 'KinematicBody') { + new Debug.Error( + `Cannot accelerate velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody.` + ); + return; + } + + if (this.isAttached) { + new Debug.Error( + 'Cannot accelerate velocity as PhysicsBody is attached to another PhysicsBody.' + ); + return; + } + + this.velocity.moveTowards(this.velocity, target, amount); + } + + /** + * @memberof PhysicsBody + * @description Applies friction to the velocity by an amount, PhysicsBody.options.type must be KinematicBody or RigidBody + * @param {number} frictionAmount The value to decrease the velocity by + * @since 2.0.0 + */ + public applyFriction(frictionAmount: Vector2) { + if ( + this.options.type !== 'KinematicBody' && + this.options.type !== 'RigidBody' + ) { + new Debug.Error( + `Cannot apply friction as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` + ); + return; + } + + if (this.isAttached) { + new Debug.Error( + 'Cannot apply friction as PhysicsBody is attached to another PhysicsBody.' + ); + return; + } + + this.velocity.subtract(frictionAmount).clampMin(0); + } + + /** + * @memberof PhysicsBody + * @description Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody + * @param {Vector2} gravity The Vector2 to add to the velocity by + * @since 2.0.0 + */ + public applyGravity(gravity: Vector2) { + if ( + this.options.type !== 'KinematicBody' && + this.options.type !== 'RigidBody' + ) { + new Debug.Error( + `Cannot apply gravity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` + ); + return; + } + + if (this.isAttached) { + return; + } + + if (gravity.x !== 0) { + this.velocity.x += gravity.x; + } + if (gravity.y !== 0) { + this.velocity.y += gravity.y; + } + } + + /** + * @memberof PhysicsBody + * @description Applies gravity to the velocity by a Vector2, PhysicsBody.options.type must be KinematicBody or RigidBody + * @param {Duck.Types.Math.BoundsLike} [bounds=PhysicsBody.bounds] The bounds of the PhysicsBody, optional -> defaults: PhysicsBody.bounds, if none + * are set, it is infinite + * @param {number} [restitution=1] How much energy is lost when bouncing, a number between 0-1 to loose energy, + * 1-any to increase energy, 1 = none, must be a positive number + * @since 2.0.0 + */ + public bounceVelocityBounds(bounds = this.bounds, restitution = 1) { + if ( + this.options.type !== 'KinematicBody' && + this.options.type !== 'RigidBody' + ) { + new Debug.Error( + `Cannot bounce velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` + ); + return; + } + + if (this.isAttached) { + new Debug.Error( + 'Cannot bounce velocity as PhysicsBody is attached to another PhysicsBody.' + ); + return; + } + + if (this.position.x > bounds.w || this.position.x < bounds.x) { + this.velocity.x = this.velocity.x * -restitution; + } + if (this.position.y > bounds.h || this.position.y < bounds.y) { + this.velocity.y = this.velocity.y * -restitution; + } + } + + /** + * @memberof PhysicsBody + * @description Reflects the velocity, sets the velocity as the opposite value of the velocity, PhysicsBody.options.type must be KinematicBody or RigidBody + * + * @example myPhysicsBody.setVelocity('x', 3); + * myPhysicsBody.reflect(); // velocity: 0, -3 + * + * @since 2.0.0 + */ + public reflectVelocity() { + if ( + this.options.type !== 'KinematicBody' && + this.options.type !== 'RigidBody' + ) { + new Debug.Error( + `Cannot reflect velocity as PhysicsBody.options.type is ${this.options.type} instead of KinematicBody or RigidBody.` + ); + return; + } + + if (this.isAttached) { + new Debug.Error( + 'Cannot reflect velocity as PhysicsBody is attached to another PhysicsBody.' + ); + return; + } + + this.velocity.reflect(); + } + + /** + * @memberof PhysicsBody + * @description Auto scales the PhysicsBody.hitbox to fit the shape + * @param {Vector2} [offset] Position offset, optional -> defaults: undefined + * @since 2.0.0 + */ + public autoFitHitbox(offset?: Vector2) { + this.hitbox?.auto(offset); + } + + /** + * @memberof PhysicsBody + * @description Scales the PhysicsBody.hitbox + * @param {Vector2} scale Scale Vector2, x is width, y is height + * @since 2.0.0 + */ + public scaleHitbox(scale: Vector2) { + this.hitbox?.scale(scale); + } + + /** + * @memberof PhysicsBody + * @description Gets the top most coordinate of the PhysicsBody + * @returns {number} + * @since 2.0.0 + */ + public getTop() { + return this.position.y; + } + + /** + * @memberof PhysicsBody + * @description Gets the bottom most coordinate of the PhysicsBody + * @returns {number} + * @since 2.0.0 + */ + public getBottom() { + return this.position.y + this.h; + } + + /** + * @memberof PhysicsBody + * @description Gets the left most coordinate of the PhysicsBody + * @returns {number} + * @since 2.0.0 + */ + public getLeft() { + return this.position.x; + } + + /** + * @memberof PhysicsBody + * @description Gets the right most coordinate of the PhysicsBody + * @returns {number} + * @since 2.0.0 + */ + public getRight() { + return this.position.x + this.w; + } + + /** + * @memberof PhysicsBody + * @description Gets the center coordinates of the PhysicsBody + * @returns {Vector2} + * @since 2.0.0 + */ + public getCenter() { + if (this.shape === 'circle') { + return new Vector2(this.position.x, this.position.y); + } else { + return new Vector2( + this.position.x + this.w / 2, + this.position.y + this.h / 2 + ); + } + } + + /** + * @memberof PhysicsBody + * @description Gets the centerY coordinate of the PhysicsBody + * @returns {number} + * @since 2.0.0 + */ + public getCenterY() { + if (this.shape === 'circle') { + return this.position.y + this.r; + } else { + return this.position.y + this.h / 2; + } + } + + /** + * @memberof PhysicsBody + * @description Gets the centerX coordinate of the PhysicsBody + * @returns {number} + * @since 2.0.0 + */ + public getCenterX() { + if (this.shape === 'circle') { + return this.position.x + this.r; + } else { + return this.position.x + this.w / 2; + } + } + + /** + * @memberof PhysicsBody + * @description Checks and returns the Collision Type if two hitboxes are colliding + * @param {PhysicsBody} obj PhysicsBody to check their hitbox with + * @returns {false | Duck.Types.Collider.CollisionResponseType | undefined} + * @since 2.0.0 + */ + public isColliding(obj: PhysicsBody) { + if (obj.hitbox) { + return this.hitbox?.intersectsFaceWith(obj.hitbox) !== 'none' + ? this.hitbox?.intersectsFaceWith(obj.hitbox) + : false; + } else { + return false; + } + } + + /** + * @memberof PhysicsBody + * @description Checks and returns the Collision Type if multiple hitboxes are colliding + * @param {Group> | PhysicsBody[]} objects PhysicsBodies to check their hitbox with + * @returns {false | Duck.Types.Collider.CollisionResponseType} + * @since 2.0.0 + */ + public isCollidingGroup( + objects: + | Group> + | PhysicsBody[] + ) { + const hitboxes: Hitbox[] = []; + + if (Array.isArray(objects)) { + objects.forEach((obj) => { + if (obj.hitbox) { + hitboxes.push(obj.hitbox); + } + }); + } else { + objects.each((obj) => { + if (obj.hitbox) { + hitboxes.push(obj.hitbox); + } + }); + } + + const states = this.hitbox?.groupIntersectsFaceWith(hitboxes); + + return states?.includes('top') + ? 'top' + : false || states?.includes('bottom') + ? 'bottom' + : false || states?.includes('left') + ? 'left' + : false || states?.includes('right') + ? 'right' + : false; + } } diff --git a/src/core/physics/server/physicsServer.ts b/src/core/physics/server/physicsServer.ts index b41ae762..126d3ad2 100644 --- a/src/core/physics/server/physicsServer.ts +++ b/src/core/physics/server/physicsServer.ts @@ -8,52 +8,52 @@ import Scene from '../../scene'; * @since 2.0.0 */ export default class PhysicsServer { - /** - * @memberof PhysicsServer - * @description Game instance - * @type Game - * @since 2.0.0 - */ - public game: Game; + /** + * @memberof PhysicsServer + * @description Game instance + * @type Game + * @since 2.0.0 + */ + public game: Game; - /** - * @memberof PhysicsServer - * @description Scene instance - * @type Scene - * @since 2.0.0 - */ - public scene: Scene; + /** + * @memberof PhysicsServer + * @description Scene instance + * @type Scene + * @since 2.0.0 + */ + public scene: Scene; - /** - * @constructor PhysicsServer - * @description Creates a PhysicsServer instance - * @param {Game} game Game instance - * @param {Scene} scene Scene instance - * @since 2.0.0 - */ - constructor(game: Game, scene: Scene) { - this.game = game; - this.scene = scene; - } + /** + * @constructor PhysicsServer + * @description Creates a PhysicsServer instance + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 2.0.0 + */ + constructor(game: Game, scene: Scene) { + this.game = game; + this.scene = scene; + } - /** - * @memberof PhysicsServer - * @description Uses PhysicsServer.Scene.physicsList and filters all enabled PhysicsBodies and calls PhysicsBody._update, - * PhysicsBody.hitbox._update, and PhysicsBody.collider._update - * - * *DO NOT CALL MANUALLY! CALLED IN SCENE.__TICK* - * - * @since 2.0.0 - */ - public __tick() { - this.scene.physicsList.enabledFilter(true).forEach((r) => { - r._update(); + /** + * @memberof PhysicsServer + * @description Uses PhysicsServer.Scene.physicsList and filters all enabled PhysicsBodies and calls PhysicsBody._update, + * PhysicsBody.hitbox._update, and PhysicsBody.collider._update + * + * *DO NOT CALL MANUALLY! CALLED IN SCENE.__TICK* + * + * @since 2.0.0 + */ + public __tick() { + this.scene.physicsList.enabledFilter(true).forEach((r) => { + r._update(); - if (r.collider && r.collidesWith && r.hitbox) { - r.hitbox._update(r); + if (r.collider && r.collidesWith && r.hitbox) { + r.hitbox._update(r); - r.collider._update(r.hitbox, r.collidesWith); - } - }); - } + r.collider._update(r.hitbox, r.collidesWith); + } + }); + } } diff --git a/src/core/physics/utils/circleToRectIntersect.ts b/src/core/physics/utils/circleToRectIntersect.ts index b8382bc8..c58fc56d 100644 --- a/src/core/physics/utils/circleToRectIntersect.ts +++ b/src/core/physics/utils/circleToRectIntersect.ts @@ -11,37 +11,37 @@ import Sprite from '../../gameobjects/sprite'; * @since 1.1.0-beta */ export default function circleRectCollision( - circle: - | Circle - | { - position: { x: number; y: number }; - w: number; - h: number; - r: number; - }, - rect: - | Rect - | { position: { x: number; y: number }; w: number; h: number } - | Sprite + circle: + | Circle + | { + position: { x: number; y: number }; + w: number; + h: number; + r: number; + }, + rect: + | Rect + | { position: { x: number; y: number }; w: number; h: number } + | Sprite ) { - let dx = Math.abs(circle.position.x - (rect.position.x + rect.w / 2)); - let dy = Math.abs(circle.position.y - (rect.position.y + rect.h / 2)); + let dx = Math.abs(circle.position.x - (rect.position.x + rect.w / 2)); + let dy = Math.abs(circle.position.y - (rect.position.y + rect.h / 2)); - if (dx > circle.r + rect.w / 2) { - return false; - } - if (dy > circle.r + rect.h / 2) { - return false; - } + if (dx > circle.r + rect.w / 2) { + return false; + } + if (dy > circle.r + rect.h / 2) { + return false; + } - if (dx <= rect.w) { - return true; - } - if (dy <= rect.h) { - return true; - } + if (dx <= rect.w) { + return true; + } + if (dy <= rect.h) { + return true; + } - dx = dx - rect.w; - dy = dy - rect.h; - return dx * dx + dy * dy <= circle.r * circle.r; + dx = dx - rect.w; + dy = dy - rect.h; + return dx * dx + dy * dy <= circle.r * circle.r; } diff --git a/src/core/physics/utils/hitboxFaceIntersect.ts b/src/core/physics/utils/hitboxFaceIntersect.ts index 27cd6a92..b3dbf6fe 100644 --- a/src/core/physics/utils/hitboxFaceIntersect.ts +++ b/src/core/physics/utils/hitboxFaceIntersect.ts @@ -2,53 +2,51 @@ import { Duck } from '../../../index'; import Hitbox from '../models/hitbox'; export default function hitboxFaceIntersect( - hitbox: - | Hitbox - | { position: { x: number; y: number }; w: number; h: number }, - hitbox2: Hitbox + hitbox: Hitbox | { position: { x: number; y: number }; w: number; h: number }, + hitbox2: Hitbox ): Duck.Types.Collider.CollisionResponseType { - const rectCX = hitbox2.position.x + hitbox2.w * 0.5; - const rectCY = hitbox2.position.y + hitbox2.h * 0.5; + const rectCX = hitbox2.position.x + hitbox2.w * 0.5; + const rectCY = hitbox2.position.y + hitbox2.h * 0.5; - const thisCX = hitbox.position.x + hitbox.w * 0.5; - const thisCY = hitbox.position.y + hitbox.h * 0.5; + const thisCX = hitbox.position.x + hitbox.w * 0.5; + const thisCY = hitbox.position.y + hitbox.h * 0.5; - const dx = rectCX - thisCX; // x difference between centers - const dy = rectCY - thisCY; // y difference between centers - const aw = (hitbox2.w + hitbox.w) * 0.5; // average width - const ah = (hitbox2.h + hitbox.h) * 0.5; // average height + const dx = rectCX - thisCX; // x difference between centers + const dy = rectCY - thisCY; // y difference between centers + const aw = (hitbox2.w + hitbox.w) * 0.5; // average width + const ah = (hitbox2.h + hitbox.h) * 0.5; // average height - /* If either distance is greater than the average dimension there is no collision. */ - if (Math.abs(dx) > aw || Math.abs(dy) > ah) { - return 'none'; - } + /* If either distance is greater than the average dimension there is no collision. */ + if (Math.abs(dx) > aw || Math.abs(dy) > ah) { + return 'none'; + } - /* To determine which region of this rectangle the rect's center + /* To determine which region of this rectangle the rect's center point is in, we have to account for the scale of the this rectangle. To do that, we divide dx and dy by it's width and height respectively. */ - if (Math.abs(dx / hitbox.w) > Math.abs(dy / hitbox.h)) { - if (dx < 0) { - // left - hitbox.position.x = hitbox2.position.x + hitbox2.w; - - return 'left'; - } else { - // right - hitbox.position.x = hitbox2.position.x - hitbox.w; - - return 'right'; - } - } else { - if (dy < 0) { - // top - hitbox.position.y = hitbox2.position.y + hitbox2.h; - - return 'top'; - } else { - // bottom - hitbox.position.y = hitbox2.position.y - hitbox.h; - - return 'bottom'; - } - } + if (Math.abs(dx / hitbox.w) > Math.abs(dy / hitbox.h)) { + if (dx < 0) { + // left + hitbox.position.x = hitbox2.position.x + hitbox2.w; + + return 'left'; + } else { + // right + hitbox.position.x = hitbox2.position.x - hitbox.w; + + return 'right'; + } + } else { + if (dy < 0) { + // top + hitbox.position.y = hitbox2.position.y + hitbox2.h; + + return 'top'; + } else { + // bottom + hitbox.position.y = hitbox2.position.y - hitbox.h; + + return 'bottom'; + } + } } diff --git a/src/core/physics/utils/rectToRectIntersect.ts b/src/core/physics/utils/rectToRectIntersect.ts index 9e28fb8f..baa3113b 100644 --- a/src/core/physics/utils/rectToRectIntersect.ts +++ b/src/core/physics/utils/rectToRectIntersect.ts @@ -11,29 +11,29 @@ import Sprite from '../../gameobjects/sprite'; * @since 1.1.0-beta */ export default function rectToRectIntersect( - rect: - | Rect - | Sprite - | RoundRect - | { position: { x: number; y: number }; w: number; h: number }, - rect2: - | Rect - | Sprite - | RoundRect - | { position: { x: number; y: number }; w: number; h: number } + rect: + | Rect + | Sprite + | RoundRect + | { position: { x: number; y: number }; w: number; h: number }, + rect2: + | Rect + | Sprite + | RoundRect + | { position: { x: number; y: number }; w: number; h: number } ) { - const rectCX = rect2.position.x + rect2.w * 0.5; - const rectCY = rect2.position.y + rect2.h * 0.5; + const rectCX = rect2.position.x + rect2.w * 0.5; + const rectCY = rect2.position.y + rect2.h * 0.5; - const thisCX = rect.position.x + rect.w * 0.5; - const thisCY = rect.position.y + rect.h * 0.5; + const thisCX = rect.position.x + rect.w * 0.5; + const thisCY = rect.position.y + rect.h * 0.5; - const dx = rectCX - thisCX; // x difference between centers - const dy = rectCY - thisCY; // y difference between centers - const aw = (rect2.w + rect.w) * 0.5; // average width - const ah = (rect2.h + rect.h) * 0.5; // average height + const dx = rectCX - thisCX; // x difference between centers + const dy = rectCY - thisCY; // y difference between centers + const aw = (rect2.w + rect.w) * 0.5; // average width + const ah = (rect2.h + rect.h) * 0.5; // average height - /* If either distance is greater than the average dimension there is no collision. */ - if (Math.abs(dx) > aw || Math.abs(dy) > ah) return false; - else return true; + /* If either distance is greater than the average dimension there is no collision. */ + if (Math.abs(dx) > aw || Math.abs(dy) > ah) return false; + else return true; } diff --git a/src/core/renderer/baseRenderer.ts b/src/core/renderer/baseRenderer.ts index 5719a621..ceca2b43 100644 --- a/src/core/renderer/baseRenderer.ts +++ b/src/core/renderer/baseRenderer.ts @@ -1,70 +1,76 @@ import Game from '../game'; import TextureBase from '../texture/textureBase'; import { BlendModes } from './canvas/const/blendModes'; +import Color from './models/color'; export default abstract class BaseRenderer { - public game: Game; + public game: Game; - constructor(game: Game) { - this.game = game; - } + constructor(game: Game) { + this.game = game; + } - abstract clearFrame(): void; - abstract drawRect( - x: number, - y: number, - w: number, - h: number, - color: string - ): void; - abstract drawCircle(x: number, y: number, r: number, color: string): void; - abstract drawRoundRect( - x: number, - y: number, - w: number, - h: number, - r: number, - color: string - ): void; - abstract drawSprite( - x: number, - y: number, - w: number, - h: number, - texture: TextureBase<'image'>, - frameWidth?: number, - frameHeight?: number, - currentRow?: number, - currentCol?: number - ): void; - abstract save(): void; - abstract restore(): void; - abstract scale(x: number, y: number): void; - abstract translate(x: number, y: number): void; - abstract transform( - a: number, - b: number, - c: number, - d: number, - e: number, - f: number - ): void; - abstract setFont(font: string): void; - abstract measureText(font: string, text: string): void; - abstract drawText( - text: string, - x: number, - y: number, - maxWidth?: number - ): void; - abstract strokeText( - text: string, - x: number, - y: number, - maxWidth?: number - ): void; - abstract setFillColor(color: string): void; - abstract setStrokeColor(color: string): void; - abstract setLineWidth(width: number): void; - abstract setBlendMode(blendMode: keyof typeof BlendModes): void; + public abstract clearFrame(): void; + public abstract drawRect( + x: number, + y: number, + w: number, + h: number, + color: Color + ): void; + public abstract drawCircle( + x: number, + y: number, + r: number, + color: Color + ): void; + public abstract drawRoundRect( + x: number, + y: number, + w: number, + h: number, + r: number, + color: Color + ): void; + public abstract drawSprite( + x: number, + y: number, + w: number, + h: number, + texture: TextureBase<'image'>, + frameWidth?: number, + frameHeight?: number, + currentRow?: number, + currentCol?: number + ): void; + public abstract save(): void; + public abstract restore(): void; + public abstract scale(x: number, y: number): void; + public abstract translate(x: number, y: number): void; + public abstract transform( + a: number, + b: number, + c: number, + d: number, + e: number, + f: number + ): void; + public abstract setFont(font: string): void; + public abstract measureText(font: string, text: string): void; + public abstract drawText( + text: string, + x: number, + y: number, + maxWidth?: number + ): void; + public abstract strokeText( + text: string, + x: number, + y: number, + maxWidth?: number + ): void; + public abstract setFillColor(color: Color): void; + public abstract setStrokeColor(color: Color): void; + public abstract setLineWidth(width: number): void; + public abstract setBlendMode(blendMode: keyof typeof BlendModes): void; } diff --git a/src/core/renderer/canvas/canvasRenderer.ts b/src/core/renderer/canvas/canvasRenderer.ts index 5c8a790a..170b1a12 100644 --- a/src/core/renderer/canvas/canvasRenderer.ts +++ b/src/core/renderer/canvas/canvasRenderer.ts @@ -4,6 +4,7 @@ import Game from '../../game'; import TextureBase from '../../texture/textureBase'; import TextureSheet from '../../texture/textureSheet'; import BaseRenderer from '../baseRenderer'; +import Color from '../models/color'; import { BlendModes } from './const/blendModes'; import RendererPipeline from './pipeline/rendererPipeline'; @@ -14,344 +15,377 @@ import RendererPipeline from './pipeline/rendererPipeline'; * @since 2.1.0 */ export default class CanvasRenderer extends BaseRenderer { - /** - * @memberof CanvasRenderer - * @description The Canvas rendering context - * @type CanvasRenderingContext2D - * @since 2.1.0 - */ - public ctx: CanvasRenderingContext2D; - - /** - * @memberof CanvasRenderer - * @description The RenderingPipeline, handles and manages what needs to be drawn and updated - * @type RendererPipeline - * @since 2.1.0 - */ - public pipeline: RendererPipeline; - - /** - * @constructor CanvasRenderer - * @description Creates a CanvasRenderer instance - * @param {Game} game Game instance - * @param {number} [poolingInterval= 1000 / game.fps] How often the does the RendererPipeline pool visible scenes and renderables - * @since 2.1.0 - */ - constructor(game: Game, poolingInterval = 1000 / game.fps) { - super(game); - - this.ctx = this.game.canvas.getContext( - '2d' - ) as CanvasRenderingContext2D; - - this.pipeline = new RendererPipeline(this.game, poolingInterval); - } - - /** - * @memberof CanvasRenderer - * @description Gets the poolStack from the pipeline and ticks, updates, and renders the scene and renderables - * @param {number} deltaTime Time passed since last frame - * @since 2.1.0 - */ - public render(deltaTime: number) { - this.pipeline.poolStack.forEach((pool) => { - if (pool.scene.currentCamera) { - pool.scene.currentCamera.begin(); - } - - pool.scene.__tick(); - pool.scene.update(deltaTime); - - pool.renderables.forEach((r) => { - r._draw(); - }); - - if (pool.scene.currentCamera) { - pool.scene.currentCamera.end(); - } - }); - } - - /** - * @memberof CanvasRenderer - * @description Calls this.ctx.save - * @since 2.1.0 - */ - public save() { - this.ctx.save(); - } - - /** - * @memberof CanvasRenderer - * @description Calls this.ctx.restore - * @since 2.1.0 - */ - public restore() { - this.ctx.restore(); - } - - /** - * @memberof CanvasRenderer - * @description Calls this.ctx.translate - * @param {number} x X position - * @param {number} y Y position - * @since 2.1.0 - */ - public translate(x: number, y: number) { - this.ctx.translate(x, y); - } - - /** - * @memberof CanvasRenderer - * @description Transforms the canvas using this.ctx.transform - * @param {number} a - * @param {number} b - * @param {number} c - * @param {number} d - * @param {number} e - * @param {number} f - * @since 2.1.0 - */ - public transform( - a: number, - b: number, - c: number, - d: number, - e: number, - f: number - ) { - this.ctx.transform(a, b, c, d, e, f); - } - - /** - * @memberof CanvasRenderer - * @description Scales the canvas using this.ctx.scale - * @param {number} x X scale - * @param {number} y Y scale - * @since 2.1.0 - */ - public scale(x: number, y: number) { - this.ctx.scale(x, y); - } - - /** - * @memberof CanvasRenderer - * @description Sets the font using this.ctx.font = - * @param {string} font Font to set to - * @since 2.1.0 - */ - public setFont(font: string) { - this.ctx.font = font; - } - - /** - * @memberof CanvasRenderer - * @description Measures the text using the font - * @param {string} font Font to set to - * @param {string} text Text measure - * @returns {TextMetrics} - * @since 2.1.0 - */ - public measureText(font: string, text: string) { - this.setFont(font); - return this.ctx.measureText(text); - } - - /** - * @memberof CanvasRenderer - * @description Sets the fillStyle using this.ctx.fillStyle = - * @param {string} color Color to set to - * @since 2.1.0 - */ - public setFillColor(color: string) { - this.ctx.fillStyle = color; - } - - /** - * @memberof CanvasRenderer - * @description Sets the strokeStyle using this.ctx.fillStyle = - * @param {string} color Color to set to - * @since 2.1.0 - */ - public setStrokeColor(color: string) { - this.ctx.strokeStyle = color; - } - - /** - * @memberof CanvasRenderer - * @description Sets the lineWidth using this.ctx.lineWidth = - * @param {number} width Width to set as - * @since 2.1.0 - */ - public setLineWidth(width: number) { - this.ctx.lineWidth = width; - } - - /** - * @memberof CanvasRenderer - * @description Draws text to the screen, must set font with this.setFont first and color with this.setFillColor - * @param {string} text Text to draw - * @param {number} x X Position - * @param {number} y Y Position - * @param {number} [maxWidth] Max width of text, optional - * @since 2.1.0 - */ - public drawText(text: string, x: number, y: number, maxWidth?: number) { - this.ctx.fillText(text, x, y, maxWidth); - } - - /** - * @memberof CanvasRenderer - * @description Strokes text to the screen, must set font with this.setFont first and color with this.setStrokeColor - * @param {string} text Text to draw - * @param {number} x X Position - * @param {number} y Y Position - * @param {number} [maxWidth] Max width of text, optional - * @since 2.1.0 - */ - public strokeText(text: string, x: number, y: number, maxWidth?: number) { - this.ctx.strokeText(text, x, y, maxWidth); - } - - /** - * @memberof CanvasRenderer - * @description Clears the screen - * @since 2.1.0 - */ - public clearFrame() { - this.ctx.clearRect( - 0, - 0, - this.game.canvas.width, - this.game.canvas.height - ); - this.game.eventEmitter.emit(EVENTS.RENDERER.CLEAR_FRAME); - } - - /** - * @memberof CanvasRenderer - * @description Clears an area - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of area to clear - * @param {number} h Height of area to clear - * @since 2.1.0 - */ - public clearRect(x: number, y: number, w: number, h: number) { - this.ctx.clearRect(x, y, w, h); - } - - /** - * @memberof CanvasRenderer - * @description Fills a rectangle - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of rect - * @param {number} h Height of rect - * @param {string} color Color to fill rect with - * @since 2.1.0 - */ - public drawRect(x: number, y: number, w: number, h: number, color: string) { - this.setFillColor(color); - this.ctx.fillRect(x, y, w, h); - } - - /** - * @memberof CanvasRenderer - * @description Fills a circle - * @param {number} x X position - * @param {number} y Y position - * @param {number} r Radius of circle - * @param {string} color Color to fill circle with - * @since 2.1.0 - */ - public drawCircle(x: number, y: number, r: number, color: string) { - this.setFillColor(color); - this.ctx.beginPath(); - this.ctx.arc(x, y, r, 0, 2 * Math.PI, false); - this.ctx.fillStyle = color; - this.ctx.fill(); - } - - /** - * @memberof CanvasRenderer - * @description Fills a roundRect - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of roundRect - * @param {number} h Height of roundRect - * @param {number} r Radius of roundRect - * @param {string} color Color to fill roundRect with - * @since 2.1.0 - */ - public drawRoundRect( - x: number, - y: number, - w: number, - h: number, - r: number, - color: string - ) { - if (w < 2 * r) r = w / 2; - if (h < 2 * r) r = h / 2; - this.setFillColor(color); - this.ctx.beginPath(); - this.ctx.moveTo(x + r, y); - this.ctx.arcTo(x + w, y, x + w, y + h, r); - this.ctx.arcTo(x + w, y + h, x, y + h, r); - this.ctx.arcTo(x, y + h, x, y, r); - this.ctx.arcTo(x, y, x + w, y, r); - this.ctx.closePath(); - this.ctx.fill(); - } - - /** - * @memberof CanvasRenderer - * @description Draws a sprite - * @param {number} x X position - * @param {number} y Y position - * @param {number} w Width of roundRect - * @param {number} h Height of roundRect - * @param {TextureBase<'image'>} texture Texture to use for the Sprite - * @param {number} [currentRow] The default row to use for the texture, for spritesheets - * @param {number} [currentCol] The default column to use for the texture, for spritesheets - * @since 2.1.0 - */ - public drawSprite( - x: number, - y: number, - w: number, - h: number, - texture: TextureBase<'image'>, - currentRow?: number, - currentCol?: number - ) { - if (texture instanceof TextureSheet) { - // spritesheet - this.ctx.drawImage( - texture.texture, // image - (currentCol! - 1) * texture.frameWidth!, // source x - (currentRow! - 1) * texture.frameHeight!, // source y - texture.frameWidth!, // source width - texture.frameHeight!, // source height - x, // target x - y, // target y - texture.frameWidth!, // target width - texture.frameHeight! // target height - ); - } else { - // normal sprite - this.ctx.drawImage(texture.texture, x, y, w, h); - } - } - - /** - * @memberof CanvasRenderer - * @description Sets the blend mode / globalCompositionOperation - * @param {keyof typeof BlendModes} blendMode Blend Mode - * @since 2.1.0 - */ - public setBlendMode(blendMode: keyof typeof BlendModes) { - this.ctx.globalCompositeOperation = blendMode; - } + /** + * @memberof CanvasRenderer + * @description The Canvas rendering context + * @type CanvasRenderingContext2D + * @since 2.1.0 + */ + public ctx: CanvasRenderingContext2D; + + /** + * @memberof CanvasRenderer + * @description The RenderingPipeline, handles and manages what needs to be drawn and updated + * @type RendererPipeline + * @since 2.1.0 + */ + public pipeline: RendererPipeline; + + /** + * @constructor CanvasRenderer + * @description Creates a CanvasRenderer instance + * @param {Game} game Game instance + * @param {number} [poolingInterval= 1000 / game.fps] How often the does the RendererPipeline pool visible scenes and renderables + * @since 2.1.0 + */ + constructor(game: Game) { + super(game); + + this.ctx = this.game.canvas.getContext('2d') as CanvasRenderingContext2D; + + this.pipeline = new RendererPipeline(this.game); + } + + /** + * @memberof CanvasRenderer + * @description Gets the poolStack from the pipeline and ticks, updates, and renders the scene and renderables + * @param {number} deltaTime Time passed since last frame + * @since 2.1.0 + */ + public render(deltaTime: number) { + this.pipeline.poolStack.forEach((pool) => { + if (pool.scene.currentCamera) { + pool.scene.currentCamera.begin(); + } + + pool.scene.update(deltaTime); + pool.scene.__tick(); + + pool.renderables.forEach((r) => { + r._draw(); + }); + + if (pool.scene.currentCamera) { + pool.scene.currentCamera.end(); + } + }); + } + + /** + * @memberof CanvasRenderer + * @description Calls this.ctx.save + * @since 2.1.0 + */ + public save() { + this.ctx.save(); + } + + /** + * @memberof CanvasRenderer + * @description Calls this.ctx.restore + * @since 2.1.0 + */ + public restore() { + this.ctx.restore(); + } + + /** + * @memberof CanvasRenderer + * @description Calls this.ctx.translate + * @param {number} x X position + * @param {number} y Y position + * @since 2.1.0 + */ + public translate(x: number, y: number) { + this.ctx.translate(x, y); + } + + /** + * @memberof CanvasRenderer + * @description Transforms the canvas using this.ctx.transform + * @param {number} a + * @param {number} b + * @param {number} c + * @param {number} d + * @param {number} e + * @param {number} f + * @since 2.1.0 + */ + public transform( + a: number, + b: number, + c: number, + d: number, + e: number, + f: number + ) { + this.ctx.transform(a, b, c, d, e, f); + } + + /** + * @memberof CanvasRenderer + * @description Scales the canvas using this.ctx.scale + * @param {number} x X scale + * @param {number} y Y scale + * @since 2.1.0 + */ + public scale(x: number, y: number) { + this.ctx.scale(x, y); + } + + /** + * @memberof CanvasRenderer + * @description Sets the font using this.ctx.font = + * @param {string} font Font to set to + * @since 2.1.0 + */ + public setFont(font: string) { + this.ctx.font = font; + } + + /** + * @memberof CanvasRenderer + * @description Measures the text using the font + * @param {string} font Font to set to + * @param {string} text Text measure + * @returns {TextMetrics} + * @since 2.1.0 + */ + public measureText(font: string, text: string) { + this.setFont(font); + return this.ctx.measureText(text); + } + + /** + * @memberof CanvasRenderer + * @description Sets the fillStyle using this.ctx.fillStyle = + * @param {Color} color Color to set to + * @since 2.1.0 + */ + public setFillColor(color: Color) { + this.ctx.fillStyle = color.value; + } + + /** + * @memberof CanvasRenderer + * @description Sets the strokeStyle using this.ctx.fillStyle = + * @param {Color} color Color to set to + * @since 2.1.0 + */ + public setStrokeColor(color: Color) { + if (color.stroke) { + this.ctx.strokeStyle = color.stroke; + } + } + + /** + * @memberof CanvasRenderer + * @description Sets the lineWidth using this.ctx.lineWidth = + * @param {number} width Width to set as + * @since 2.1.0 + */ + public setLineWidth(width: number) { + this.ctx.lineWidth = width; + } + + /** + * @memberof CanvasRenderer + * @description Draws text to the screen, must set font with this.setFont first and color with this.setFillColor + * @param {string} text Text to draw + * @param {number} x X Position + * @param {number} y Y Position + * @param {number} [maxWidth] Max width of text, optional + * @since 2.1.0 + */ + public drawText(text: string, x: number, y: number, maxWidth?: number) { + this.ctx.fillText(text, x, y, maxWidth); + } + + /** + * @memberof CanvasRenderer + * @description Strokes text to the screen, must set font with this.setFont first and color with this.setStrokeColor + * @param {string} text Text to draw + * @param {number} x X Position + * @param {number} y Y Position + * @param {number} [maxWidth] Max width of text, optional + * @since 2.1.0 + */ + public strokeText(text: string, x: number, y: number, maxWidth?: number) { + this.ctx.strokeText(text, x, y, maxWidth); + } + + /** + * @memberof CanvasRenderer + * @description Clears the screen + * @since 2.1.0 + */ + public clearFrame() { + this.ctx.clearRect(0, 0, this.game.canvas.width, this.game.canvas.height); + this.game.eventEmitter.emit(EVENTS.RENDERER.CLEAR_FRAME); + } + + /** + * @memberof CanvasRenderer + * @description Clears an area + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of area to clear + * @param {number} h Height of area to clear + * @since 2.1.0 + */ + public clearRect(x: number, y: number, w: number, h: number) { + this.ctx.clearRect(x, y, w, h); + } + + /** + * @memberof CanvasRenderer + * @description Fills a rectangle + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of rect + * @param {number} h Height of rect + * @param {Color} color Color to fill rect with + * @since 2.1.0 + */ + public drawRect(x: number, y: number, w: number, h: number, color: Color) { + this.setFillColor(color); + if (color.stroke) { + this.setStrokeColor(color); + if (color.strokeWidth) { + this.setLineWidth(color.strokeWidth); + } + + this.ctx.strokeRect(x, y, w, h); + } + + this.ctx.fillRect(x, y, w, h); + } + + /** + * @memberof CanvasRenderer + * @description Fills a circle + * @param {number} x X position + * @param {number} y Y position + * @param {number} r Radius of circle + * @param {Color} color Color to fill circle with + * @since 2.1.0 + */ + public drawCircle(x: number, y: number, r: number, color: Color) { + this.setFillColor(color); + if (color.stroke) { + this.setStrokeColor(color); + if (color.strokeWidth) { + this.setLineWidth(color.strokeWidth); + } + } + + this.ctx.beginPath(); + this.ctx.arc(x, y, r, 0, 2 * Math.PI, false); + this.setFillColor(color); + + if (color.stroke) { + this.setStrokeColor(color); + if (color.strokeWidth) { + this.setLineWidth(color.strokeWidth); + } + + this.ctx.stroke(); + } + + this.ctx.fill(); + } + + /** + * @memberof CanvasRenderer + * @description Fills a roundRect + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of roundRect + * @param {number} h Height of roundRect + * @param {number} r Radius of roundRect + * @param {Color} color Color to fill roundRect with + * @since 2.1.0 + */ + public drawRoundRect( + x: number, + y: number, + w: number, + h: number, + r: number, + color: Color + ) { + if (w < 2 * r) r = w / 2; + if (h < 2 * r) r = h / 2; + + this.setFillColor(color); + + this.ctx.beginPath(); + this.ctx.moveTo(x + r, y); + this.ctx.arcTo(x + w, y, x + w, y + h, r); + this.ctx.arcTo(x + w, y + h, x, y + h, r); + this.ctx.arcTo(x, y + h, x, y, r); + this.ctx.arcTo(x, y, x + w, y, r); + this.ctx.closePath(); + + if (color.stroke) { + this.setStrokeColor(color); + if (color.strokeWidth) { + this.setLineWidth(color.strokeWidth); + } + + this.ctx.stroke(); + } + + this.ctx.fill(); + } + + /** + * @memberof CanvasRenderer + * @description Draws a sprite + * @param {number} x X position + * @param {number} y Y position + * @param {number} w Width of roundRect + * @param {number} h Height of roundRect + * @param {TextureBase<'image'>} texture Texture to use for the Sprite + * @param {number} [currentRow] The default row to use for the texture, for spritesheets + * @param {number} [currentCol] The default column to use for the texture, for spritesheets + * @since 2.1.0 + */ + public drawSprite( + x: number, + y: number, + w: number, + h: number, + texture: TextureBase<'image'>, + currentRow?: number, + currentCol?: number + ) { + if (texture instanceof TextureSheet) { + // spritesheet + this.ctx.drawImage( + texture.texture, // image + (currentCol! - 1) * texture.frameWidth!, // source x + (currentRow! - 1) * texture.frameHeight!, // source y + texture.frameWidth!, // source width + texture.frameHeight!, // source height + x, // target x + y, // target y + texture.frameWidth!, // target width + texture.frameHeight! // target height + ); + } else { + // normal sprite + this.ctx.drawImage(texture.texture, x, y, w, h); + } + } + + /** + * @memberof CanvasRenderer + * @description Sets the blend mode / globalCompositionOperation + * @param {keyof typeof BlendModes} blendMode Blend Mode + * @since 2.1.0 + */ + public setBlendMode(blendMode: keyof typeof BlendModes) { + this.ctx.globalCompositeOperation = blendMode; + } } diff --git a/src/core/renderer/canvas/const/blendModes.ts b/src/core/renderer/canvas/const/blendModes.ts index af1e81a0..4b5070f8 100644 --- a/src/core/renderer/canvas/const/blendModes.ts +++ b/src/core/renderer/canvas/const/blendModes.ts @@ -1,29 +1,29 @@ /* eslint-disable prettier/prettier */ export const BlendModes = { - 'source-over': 'source-over', - 'source-in': 'source-in', - 'source-out': 'source-out', - 'source-atop': 'source-atop', - 'destination-over': 'destination-over', - 'destination-in': 'destination-in', - 'destination-out': 'destination-out', - 'destination-atop': 'destination-atop', - lighter: 'lighter', - copy: 'copy', - xor: 'xor', - multiply: 'multiply', - screen: 'screen', - overlay: 'overlay', - darken: 'darken', - lighten: 'lighten', - 'color-dodge': 'color-dodge', - 'color-burn': 'color-burn', - 'hard-light': 'hard-light', - 'soft-light': 'soft-light', - difference: 'difference', - exclusion: 'exclusion', - hue: 'hue', - saturation: 'saturation', - color: 'color', - luminosity: 'luminosity', + 'source-over': 'source-over', + 'source-in': 'source-in', + 'source-out': 'source-out', + 'source-atop': 'source-atop', + 'destination-over': 'destination-over', + 'destination-in': 'destination-in', + 'destination-out': 'destination-out', + 'destination-atop': 'destination-atop', + lighter: 'lighter', + copy: 'copy', + xor: 'xor', + multiply: 'multiply', + screen: 'screen', + overlay: 'overlay', + darken: 'darken', + lighten: 'lighten', + 'color-dodge': 'color-dodge', + 'color-burn': 'color-burn', + 'hard-light': 'hard-light', + 'soft-light': 'soft-light', + difference: 'difference', + exclusion: 'exclusion', + hue: 'hue', + saturation: 'saturation', + color: 'color', + luminosity: 'luminosity', } as const; diff --git a/src/core/renderer/canvas/pipeline/rendererPipeline.ts b/src/core/renderer/canvas/pipeline/rendererPipeline.ts index 51dc1f80..4b3fcc86 100644 --- a/src/core/renderer/canvas/pipeline/rendererPipeline.ts +++ b/src/core/renderer/canvas/pipeline/rendererPipeline.ts @@ -9,103 +9,111 @@ import Game from '../../../game'; * @since 2.1.0 */ export default class RendererPipeline { - /** - * @memberof RendererPipeline - * @description Game instance - * @type Game - * @since 2.1.0 - */ - public game: Game; - - /** - * @memberof RendererPipeline - * @description The interval that calls RendererPipeline.pool, time: 1000 / this.game.fps - * @type unknown - * @since 2.1.0 - */ - public poolInterval: unknown; - - /** - * @memberof RendererPipeline - * @description The poolStack, contains objects that holds a scene and its renderables - * @type Duck.Types.RendererPipeline.PoolStackItem[] - * @since 2.1.0 - */ - public poolStack: Duck.Types.RendererPipeline.PoolStackItem[]; - - /** - * @memberof RendererPipeline - * @description The interval that calls RendererPipeline.updateTime, time: 1000, updates the time that the poolInterval is called for better results - * @type unknown - * @since 2.1.0 - */ - protected updateTimeInterval: unknown; - - /** - * @constructor RendererPipeline - * @description Creates a RendererPipeline instance - * @param {Game} game Game instance - * @param {number} [poolingInterval= 1000 / game.fps] How often RendererPipeline.pool is called - * @since 2.1.0 - */ - constructor(game: Game, poolingInterval = 1000 / game.fps) { - this.game = game; - - this.poolInterval = setInterval(() => { - this.pool(); - }, poolingInterval); - this.poolStack = []; - - this.updateTimeInterval = setInterval(() => { - this.updateTime(); - }, 1000); - } - - /** - * @memberof RendererPipeline - * @description Pools all visible scenes from the game stack and its renderables - * @since 2.1.0 - */ - public pool() { - this.poolStack = []; - - // get visible scenes - const visibleScenes = this.game.stack.scenes.filter( - (scene) => scene.visible === true - ); - - visibleScenes.forEach((scene) => { - // displayList - const depthSorted = scene.displayList.depthSort(); - const visibleObjects = depthSorted.filter( - (r) => r.visible && r.culled - ); - - this.poolStack.push({ - scene, - renderables: visibleObjects, - }); - }); - - this.game.eventEmitter.emit( - EVENTS.RENDERER.PIPELINE_POOL, - this.poolStack - ); - } - - /** - * @memberof RendererPipeline - * @description Clears the poolInterval and sets the interval again to a more recent time, time: 1000 / game.fps, - * gets called automatically every 1000 ms - * @since 2.1.0 - */ - public updateTime() { - const newInterval = 1000 / this.game.fps; - - clearInterval(this.poolInterval as number); - - this.poolInterval = setInterval(() => { - this.pool(); - }, newInterval); - } + /** + * @memberof RendererPipeline + * @description Game instance + * @type Game + * @since 2.1.0 + */ + public game: Game; + + /** + * @memberof RendererPipeline + * @description The interval that calls RendererPipeline.pool, time: 1000 / this.game.fps + * @type unknown + * @since 2.1.0 + */ + public poolInterval: unknown; + + /** + * @memberof RendererPipeline + * @description How often the poolInterval is called, 1000 / this.game.fps or a passed game.config.poolingInterval + * @type unknown + * @since 3.0.0 + */ + public poolingInterval: number; + + /** + * @memberof RendererPipeline + * @description The poolStack, contains objects that holds a scene and its renderables + * @type Duck.Types.RendererPipeline.PoolStackItem[] + * @since 2.1.0 + */ + public poolStack: Duck.Types.RendererPipeline.PoolStackItem[]; + + /** + * @memberof RendererPipeline + * @description The interval that calls RendererPipeline.updateTime, time: 1000, updates the time that the poolInterval is called for better results + * @type unknown + * @since 2.1.0 + */ + protected updateTimeInterval: unknown; + + /** + * @constructor RendererPipeline + * @description Creates a RendererPipeline instance + * @param {Game} game Game instance + * @param {number} [poolingInterval= 1000 / game.fps] How often RendererPipeline.pool is called + * @since 2.1.0 + */ + constructor(game: Game) { + this.game = game; + + this.poolingInterval = + this.game.config.poolingInterval || 1000 / this.game.fps; + + this.poolInterval = setInterval(() => { + this.pool(); + }, this.poolingInterval); + this.poolStack = []; + + this.updateTimeInterval = setInterval(() => { + if (!this.game.config.poolingInterval) { + this.updateTime(); + } + }, 1000); + } + + /** + * @memberof RendererPipeline + * @description Pools all visible scenes from the game stack and its renderables + * @since 2.1.0 + */ + public pool() { + this.poolStack = []; + + // get visible scenes + const visibleScenes = this.game.stack.scenes.filter( + (scene) => scene.visible === true + ); + + visibleScenes.forEach((scene) => { + // displayList + const depthSorted = scene.displayList.depthSort(); + const visibleObjects = depthSorted.filter((r) => r.visible && r.culled); + + this.poolStack.push({ + scene, + renderables: visibleObjects, + }); + }); + + this.game.eventEmitter.emit(EVENTS.RENDERER.PIPELINE_POOL, this.poolStack); + } + + /** + * @memberof RendererPipeline + * @description Clears the poolInterval and sets the interval again to a more recent time, time: 1000 / game.fps, + * gets called automatically every 1000 ms + * @since 2.1.0 + */ + public updateTime() { + this.poolingInterval = 1000 / this.game.fps; + + clearInterval(this.poolInterval as number); + + this.poolInterval = setInterval(() => { + this.pool(); + }, this.poolingInterval); + } } diff --git a/src/core/renderer/models/color.ts b/src/core/renderer/models/color.ts new file mode 100644 index 00000000..60bedabd --- /dev/null +++ b/src/core/renderer/models/color.ts @@ -0,0 +1,166 @@ +import hexNumberToString from '../../../utils/hexNumberToString'; + +/** + * @class Color + * @classdesc Creates a DuckEngine Color + * @description The Color Class. Hexadecimal or CanvasGradients are stored and managed here, as well as stroke info + * @since 3.0.0 + */ +export default class Color { + /** + * @memberof Color + * @description The color itself, string, CanvasGradient, or CanvasPattern. If passed as number, it is converted into a hex color string + * @type string | CanvasGradient + * @since 3.0.0 + */ + public value: string | CanvasGradient | CanvasPattern; + + /** + * @memberof Color + * @description Stroke color if passed, if originally a number hexadecimal color, it is converted to string, optional -> defaults: undefined + * @type string | undefined + * @default undefined + * @since 3.0.0 + */ + public stroke?: string; + + /** + * @memberof Color + * @description Stroke width if passed, optional -> defaults: undefined + * @type number | undefined + * @since 3.0.0 + */ + public strokeWidth?: number; + + /** + * @constructor Color + * @description Creates a Color instance + * @param {number | string | CanvasGradient | CanvasPattern} value Color value itself, number is converted to string later, hexadecimal, CanvasGradient, and CanvasPattern ONLY + * @since 3.0.0 + */ + constructor(value: number | string | CanvasGradient | CanvasPattern); + + /** + * @constructor Color + * @description Creates a Color instance + * @param {number | string | CanvasGradient | CanvasPattern} value Color value itself, number is converted to string later, hexadecimal, CanvasGradient, and CanvasPattern ONLY + * @param {number | string} stroke Stroke color, if originally a number hexadecimal color, it is converted to string, hexadecimal ONLY + * @param {number} strokeWidth Stroke width, must be a number + * @since 3.0.0 + */ + constructor( + value: number | string | CanvasGradient | CanvasPattern, + stroke: number | string, + strokeWidth: number + ); + + /** + * @constructor Color + * @description Creates a Color instance + * @param {number | string | CanvasGradient | CanvasPattern} value Color value itself, number is converted to string later, hexadecimal, CanvasGradient, and CanvasPattern ONLY + * @param {number | string | undefined} [stroke=undefined] Stroke color if passed, if originally a number hexadecimal color, it is converted to string, hexadecimal ONLY + * @param {number | undefined} [strokeWidth=undefined] Stroke width if passed, must be a number + * @since 3.0.0 + */ + constructor( + value: number | string | CanvasGradient | CanvasPattern, + stroke?: number | string, + strokeWidth?: number + ) { + // convert value so that the CanvasRenderer can skip this step + typeof value === 'number' ? (value = hexNumberToString(value)) : value; + typeof stroke === 'number' ? (stroke = hexNumberToString(stroke)) : stroke; + + this.value = value; + this.stroke = stroke; + this.strokeWidth = strokeWidth; + } + + public static get lightRed() { + return new Color('#df2c14'); + } + + public static get red() { + return new Color('#ff0000'); + } + + public static get darkRed() { + return new Color('#540100'); + } + + public static get lightOrange() { + return new Color('#ffa136'); + } + + public static get orange() { + return new Color('#ff8800'); + } + + public static get darkOrange() { + return new Color('#b86200'); + } + + public static get lightYellow() { + return new Color('#fcfc4e'); + } + + public static get yellow() { + return new Color('#ffff00'); + } + + public static get darkYellow() { + return new Color('#8f8f00'); + } + + public static get lightGreen() { + return new Color('#53f553'); + } + + public static get green() { + return new Color('#00ff00'); + } + + public static get darkGreen() { + return new Color('#027802'); + } + + public static get lightBlue() { + return new Color('#3131f7'); + } + + public static get blue() { + return new Color('#0000ff'); + } + + public static get darkBlue() { + return new Color('#000085'); + } + + public static get lightPurple() { + return new Color('#b349f5'); + } + + public static get purple() { + return new Color('#a020f0'); + } + + public static get darkPurple() { + return new Color('#661499'); + } + + public static get white() { + return new Color('#ffffff'); + } + + public static get gray() { + return new Color('#808080'); + } + + public static get black() { + return new Color('#000000'); + } + + public static get pink() { + return new Color('#ffb3b3'); + } +} diff --git a/src/core/scene.ts b/src/core/scene.ts index 0ef80b9a..a8dcd5a4 100644 --- a/src/core/scene.ts +++ b/src/core/scene.ts @@ -8,7 +8,6 @@ import Circle from './gameobjects/circle'; import RoundRect from './gameobjects/roundrect'; import Particle from './gameobjects/particles/particle'; import ParticleEmitter from './gameobjects/particles/particleEmitter'; -import SoundPlayer from './sound/soundPlayer'; import Input from './input/input'; import Camera from './camera/camera'; import StaticLight from './lights/staticLight'; @@ -52,6 +51,8 @@ import GameObject from './gameobjects/gameObject'; import Tileset from './map/tileset'; import TileLayer from './map/tilelayer'; import Timer from '../base/timer'; +import Color from './renderer/models/color'; +import Sound from './sound/sound'; /** * @class Scene @@ -60,946 +61,934 @@ import Timer from '../base/timer'; * @since 1.0.0-beta */ export default class Scene extends Render { - /** - * @memberof Scene - * @description The key of the Scene, used to identify the Scene - * @type string - * @since 1.0.0-beta - */ - public readonly key: string; - - /** - * @memberof Scene - * @description The state of the Scene being visible, determines if the Scene.displayList, physicsList, update, and __tick, is being called/used - * in the game loop - * @type boolean - * @since 1.0.0-beta - */ - public visible: boolean; - - /** - * @memberof Scene - * @description Determines if the Scene is visible by default - * @type boolean - * @since 1.0.0-beta - */ - public readonly default: boolean; - - /** - * @memberof Scene - * @description The game instance the scene is added to - * @type Game - * @since 1.0.0-beta - */ - protected game: Game; - - /** - * @memberof Scene - * @description The current camera being updated - * @type Camera | undefined - * @since 1.0.0-beta - */ - public currentCamera: Camera | undefined; - - /** - * @memberof Scene - * @description The main camera of the scene - * @type Camera | undefined - * @since 1.0.0-beta - */ - public mainCamera: Camera | undefined; - - /** - * @memberof Scene - * @description An array of cameras that the scene holds - * @type Camera[] - * @since 1.0.0-beta - */ - public cameras: Camera[]; - - /** - * @memberof Scene - * @description A DisplayList instance, holds and manages Renderables - * @type DisplayList - * @since 2.0.0 - */ - public displayList: DisplayList; - - /** - * @memberof Scene - * @description A PhysicsList instance, holds and manages PhysicsBodies - * @type PhysicsList - * @since 2.0.0 - */ - public physicsList: PhysicsList; - - /** - * @memberof Scene - * @description A Loader instance, used to load assets in Scene.preload method that you override - * @type Loader - * @since 2.0.0 - */ - public loader: Loader; - - /** - * @memberof Scene - * @description A PhysicsServer instance, manages and updates all the physics for the Scene.PhysicsList. It is set to undefined if - * Game.config.physics.customTick is truthy - * @type PhysicsServer | undefined - * @since 2.0.0 - */ - public physicsServer: PhysicsServer | undefined; - - /** - * @memberof Scene - * @description A property that is a function that gets called when the scene is switched to being visible - * @type () => void - * @since 2.1.0 - */ - public onSceneActive: () => void; - - /** - * @memberof Scene - * @description A property that is a function that gets called when the scene is switched to not being visible - * @type () => void - * @since 2.1.0 - */ - public onSceneInactive: () => void; - - // methods - - /** - * @memberof Scene - * @description Used to add GameObjects and more to the scene - * @since 1.0.0-beta - */ - public add: { - gameobject: { - misc: { - canvasModulate: ( - x: number, - y: number, - w: number, - h: number, - fillColor: string - ) => CanvasModulate; - }; - existing: ( - gameobject: GameObject - ) => GameObject; - sprite: ( - x: number, - y: number, - w: number, - h: number, - textureKey: string, - currentRow?: number, - currentCol?: number - ) => Sprite; - rect: ( - x: number, - y: number, - w: number, - h: number, - fillColor: string - ) => Rect; - circle: ( - x: number, - y: number, - r: number, - fillColor: string - ) => Circle; - roundRect: ( - x: number, - y: number, - w: number, - h: number, - r: number, - fillColor: string - ) => RoundRect; - }; - misc: { - area: ( - x: number, - y: number, - w: number, - h: number, - collisionFilter: PhysicsBody[] - ) => Area; - }; - ui: { - text: (text: string, config: Duck.Types.UI.Text.Config) => Text; - button: ( - shape: Duck.Types.UI.Button.Shape, - x: number, - y: number, - w: number, - h: number, - r: number, - fillColor: string, - text: Text - ) => Button; - }; - soundPlayer: ( - path: string, - options?: Duck.Types.Sound.Config - ) => SoundPlayer; - input: () => Input; - camera: () => Camera; - mainCamera: () => Camera; - light: { - staticLight: ( - x: number, - y: number, - r: number, - fillColor: string, - alpha: Duck.Types.Helper.AlphaRange - ) => StaticLight; - }; - group: (name: string, defaultValues?: t[]) => Group; - particle: ( - shape: Duck.Types.Collider.ShapeString, - w: number, - h: number, - r: number, - fillColor: string - ) => Particle; - particleEmitter: ( - particle: Particle, - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - amount: number, - autoCreate?: boolean - ) => ParticleEmitter; - cutscene: ( - config: Duck.Types.Cutscene.Config, - instructions: Duck.Types.Cutscene.Instructions - ) => Cutscene; - map: { - tilemap: ( - origin: Duck.Types.Math.Vector2Like, - tilelayers: TileLayer[] - ) => TileMap; - tileset: ( - textureKey: string, - tileW: number, - tileH: number, - rows: number, - cols: number - ) => Tileset; - tileLayer: ( - tileset: Tileset, - map: number[][], - zIndex?: number, - visible?: boolean - ) => TileLayer; - }; - effect: ( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - particleEmitter: ParticleEmitter - ) => Effect; - presetEffect: { - explosionEffect: ( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - particleAmount: number | undefined, - speedRange: [1, 1] | undefined, - maxAge: number | undefined, - color: string | undefined - ) => ExplosionEffect; - smokeEffect: ( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - particleAmount: number | undefined, - speedRangeX: [-0.1, 0.4] | undefined, - speedRangeY: [-0.1, 0.4] | undefined, - maxAge: number | undefined, - color: '#2e2e2e' | undefined, - interval: 50 | undefined - ) => SmokeEffect; - }; - }; - - /** - * @memberof Scene - * @description Misc tools, contains color, physics, and math related tools - * @since 1.0.0-beta - */ - public tools: { - loader: typeof Loader; - color: { - random: () => string; - randomWithAlpha: (alpha?: Duck.Types.Helper.AlphaRange) => string; - is: { - hex: (str: string) => boolean; - hsl: (str: string) => boolean; - rgb: (str: string) => boolean; - }; - convert: { - rgb: { - toHsl: (r: number, g: number, b: number) => string; - toRgba: ( - color: string, - alpha: Duck.Types.Helper.AlphaRange - ) => string; - }; - rgba: { - toHsla: ( - r: string | number, - g: string | number, - b: string | number, - a: Duck.Types.Helper.AlphaRange - ) => string; - toRgb: (rgba: string) => string; - }; - hex: { - toRgba: ( - hex: string, - alpha: Duck.Types.Helper.AlphaRange - ) => string; - toRgb: (hex: string) => string | null; - toHsl: (hex: string) => string; - }; - }; - }; - physics: { - rectToRectIntersect: ( - rect: Rect | Sprite, - rect2: Rect | Sprite - ) => boolean; - circleToRectIntersect: ( - circle: - | Circle - | { - position: { x: number; y: number }; - w: number; - h: number; - r: number; - }, - rect: - | Rect - | Sprite - | { - position: { x: number; y: number }; - w: number; - h: number; - } - ) => boolean; - }; - math: { - createVector: (x?: number, y?: number) => Vector2; - vector: typeof Vector2; - clamp: (x: number, min: number, max: number) => number; - lerp: (start: number, end: number, amount: number) => number; - randomInt: (min: number, max: number) => number; - randomFloat: (min: number, max: number, fixed?: number) => number; - }; - }; - - /** - * @constructor Scene - * @description Creates a Scene instance - * @param {string} key Key/Identifier or name of scene - * @param {Game} game Game instance - * @param {boolean} [visible=false] Is the scene visible, defaults to false - * @since 1.0.0-beta - */ - constructor(key: string, game: Game, visible?: boolean) { - super(); - - this.key = key; - this.game = game; - this.visible = visible || false; - this.default = false; - - // set visible if key is same as defaultScene key - - if (this.game.stack.defaultScene === this.key) { - this.default = true; - this.visible = true; - } - - // main camera - this.currentCamera; - - this.mainCamera; - this.cameras = []; - - this.displayList = new DisplayList(this.game); - this.physicsList = new PhysicsList(); - - this.loader = new Loader(this.game, this); - - if (this.game.config.physics?.enabled) { - this.physicsServer = new PhysicsServer(this.game, this); - } - - this.onSceneActive = () => { - // On scene change to visible - }; - - this.onSceneInactive = () => { - // On scene change to not visible - }; - - // methods - - this.add = { - gameobject: { - misc: { - canvasModulate: ( - x: number, - y: number, - w: number, - h: number, - fillColor: string - ) => { - const myCanvasModulate = new CanvasModulate( - x, - y, - w, - h, - fillColor, - this.game, - this - ); - this.displayList.add(myCanvasModulate); - this.physicsList.add(myCanvasModulate); - return myCanvasModulate; - }, - }, - existing: ( - gameobject: GameObject - ) => { - this.displayList.add(gameobject); - this.physicsList.add(gameobject); - return gameobject; - }, - sprite: ( - x: number, - y: number, - w: number, - h: number, - textureKey: string, - currentRow?: number, - currentCol?: number - ) => { - const sprite = new Sprite( - x, - y, - w, - h, - textureKey, - this.game, - this, - currentRow, - currentCol - ); - this.displayList.add(sprite); - this.physicsList.add(sprite); - return sprite; - }, - rect: ( - x: number, - y: number, - w: number, - h: number, - fillColor: string - ) => { - const rect = new Rect( - x, - y, - w, - h, - fillColor, - this.game, - this - ); - this.displayList.add(rect); - this.physicsList.add(rect); - return rect; - }, - circle: ( - x: number, - y: number, - r: number, - fillColor: string - ) => { - const circle = new Circle( - x, - y, - r, - fillColor, - this.game, - this - ); - this.displayList.add(circle); - this.physicsList.add(circle); - return circle; - }, - roundRect: ( - x: number, - y: number, - w: number, - h: number, - r: number, - fillColor: string - ) => { - const roundRect = new RoundRect( - x, - y, - w, - h, - r, - fillColor, - this.game, - this - ); - this.displayList.add(roundRect); - this.physicsList.add(roundRect); - return roundRect; - }, - }, - misc: { - area: ( - x: number, - y: number, - w: number, - h: number, - collisionFilter: PhysicsBody[] - ) => { - const myArea = new Area( - x, - y, - w, - h, - collisionFilter, - this.game, - this - ); - this.physicsList.add(myArea); - return myArea; - }, - }, - ui: { - text: (text: string, config: Duck.Types.UI.Text.Config) => { - const myText = new Text(text, config, this.game, this); - this.displayList.add(myText); - this.physicsList.add(myText); - return myText; - }, - button: ( - shape: Duck.Types.UI.Button.Shape, - x: number, - y: number, - w: number, - h: number, - r: number, - fillColor: string, - text: Text - ) => { - const myButton = new Button( - shape, - x, - y, - w, - h, - r, - fillColor, - text, - this.game, - this - ); - this.displayList.add(myButton); - this.physicsList.add(myButton); - return myButton; - }, - }, - soundPlayer: (path: string, options?: Duck.Types.Sound.Config) => { - return new SoundPlayer(path, options); - }, - input: () => { - return new Input(this.game, this); - }, - camera: () => { - const c = new Camera(this.game, this); - this.cameras.push(c); - return c; - }, - mainCamera: () => { - const c = new Camera(this.game, this); - this.cameras.push(c); - this.mainCamera = c; - this.currentCamera = c; - return c; - }, - light: { - staticLight: ( - x: number, - y: number, - r: number, - fillColor: string, - alpha: Duck.Types.Helper.AlphaRange - ) => { - const myStaticLight = new StaticLight( - x, - y, - r, - fillColor, - alpha, - this.game, - this - ); - this.displayList.add(myStaticLight); - this.physicsList.add(myStaticLight); - return myStaticLight; - }, - }, - group: (name: string, defaultValues?: t[]) => { - return new Group(name, this.game, defaultValues); - }, - particle: ( - shape: Duck.Types.Collider.ShapeString, - w: number, - h: number, - r: number, - fillColor: string - ) => { - const myParticle = new Particle( - shape, - w, - h, - r, - fillColor, - this.game, - this - ); - return myParticle; - }, - particleEmitter: ( - particle: Particle, - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - amount: number, - autoCreate = true - ) => { - return new ParticleEmitter( - particle, - rangeX, - rangeY, - amount, - this.game, - this, - autoCreate - ); - }, - cutscene: ( - config: Duck.Types.Cutscene.Config, - instructions: Duck.Types.Cutscene.Instructions - ) => { - return new Cutscene(config, instructions, this.game); - }, - map: { - tilemap: ( - origin: Duck.Types.Math.Vector2Like, - tilelayers: TileLayer[] - ) => { - const myTileMap = new TileMap( - origin, - tilelayers, - this.game, - this - ); - this.displayList.add(myTileMap); - return myTileMap; - }, - tileset: ( - textureKey: string, - tileW: number, - tileH: number, - rows: number, - cols: number - ) => { - return new Tileset( - textureKey, - tileW, - tileH, - rows, - cols, - this.game, - this - ); - }, - tileLayer: ( - tileset: Tileset, - map: number[][], - zIndex = 2, - visible = true - ) => { - return new TileLayer( - tileset, - map, - this.game, - this, - zIndex, - visible - ); - }, - }, - effect: ( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - particleEmitter: ParticleEmitter - ) => { - const myEffect = new Effect( - rangeX, - rangeY, - particleEmitter, - this.game - ); - this.displayList.add(myEffect); - return myEffect; - }, - presetEffect: { - explosionEffect: ( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - particleAmount = 50, - speedRange = [1, 1], - maxAge = 3, - color = '#FFA500' - ) => { - const myExplosionEffect = new ExplosionEffect( - rangeX, - rangeY, - this.game, - particleAmount, - speedRange, - maxAge, - color, - this - ); - this.displayList.add(myExplosionEffect); - return myExplosionEffect; - }, - smokeEffect: ( - rangeX: Duck.Types.ParticleEmitter.Range, - rangeY: Duck.Types.ParticleEmitter.Range, - particleAmount = 50, - speedRangeX = [-0.1, 0.4], - speedRangeY = [-0.1, 0.4], - maxAge = 20, - color = '#2e2e2e', - interval = 50 - ) => { - const mySmokeEffect = new SmokeEffect( - rangeX, - rangeY, - this.game, - particleAmount, - speedRangeX, - speedRangeY, - maxAge, - color, - interval, - this - ); - this.displayList.add(mySmokeEffect); - return mySmokeEffect; - }, - }, - }; - - this.tools = { - loader: Loader, - color: { - random: randomColor, - randomWithAlpha: (alpha?: Duck.Types.Helper.AlphaRange) => - randomColorWithAlpha(alpha), - is: { - hex: isHex, - hsl: isHSL, - rgb: isRGB, - }, - convert: { - rgb: { - toHsl: rgbToHSL, - toRgba: rgbToRGBA, - }, - rgba: { - toHsla: rgbaToHSLA, - toRgb: rgbaToRGB, - }, - hex: { - toRgba: hexToRGBA, - toRgb: hexToRGB, - toHsl: hexToHSL, - }, - }, - }, - physics: { - rectToRectIntersect: ( - rect: Rect | Sprite, - rect2: Rect | Sprite - ) => { - return rectToRectIntersect(rect, rect2); - }, - circleToRectIntersect: ( - circle: - | Circle - | { - position: { x: number; y: number }; - w: number; - h: number; - r: number; - }, - rect: - | Rect - | Sprite - | { - position: { x: number; y: number }; - w: number; - h: number; - } - ) => { - return circleToRectIntersect(circle, rect); - }, - }, - math: { - createVector: (x?: number, y?: number) => { - return Vector2.CREATE(x, y); - }, - vector: Vector2, - clamp: clamp, - lerp: lerp, - randomInt: randomInt, - randomFloat: randomFloat, - }, - }; - } - - /** - * @memberof Scene - * @description Calls physics server __tick method if game.config.physics.enabled is true - * and game.config.physics.customTick is false - * *Do not call manually, this is called in GAME LOOP* - * - * @since 2.0.0 - */ - public __tick() { - if (!this.game.config.physics?.customTick) { - this.physicsServer?.__tick(); - } - } - - /** - * @memberof Scene - * @description Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility - * - * **Note: this calls Game.renderer.pipeline.pool to immediately update the visibility** - * - * @param {boolean} visible What to set the visible property to - * @since 2.1.0 - */ - public setVisible(visible: boolean) { - this.visible = visible; - this.game.renderer.pipeline.pool(); - } - - /** - * @memberof Scene - * @description Switches the active camera to a passed camera - * @param {Camera} camera Camera to switch to - * @memberof 1.0.0-beta - */ - public switchCamera(camera: Camera) { - const foundCamera = this.cameras.find((_camera) => _camera === camera); - if (foundCamera) { - this.currentCamera = foundCamera; - if (this.game.config.debug) { - new Debug.Log('Switched cameras.'); - } - } else { - new Debug.Error( - 'Cannot switch camera. Camera not found in the current scene.' - ); - } - } - - /** - * @memberof Scene - * @description Switches the active camera to the main camera - * @since 1.0.0-beta - */ - public switchToMainCamera() { - this.currentCamera = this.mainCamera; - if (this.game.config.debug) { - new Debug.Log('Switched to main camera.'); - } - } - - /** - * @memberof Scene - * @description Sets a camera as the main camera - * @param {Camera} camera Camera to set the main camera as - * @since 1.0.0-beta - */ - public setMainCamera(camera: Camera) { - this.mainCamera = camera; - if (this.game.config.debug) { - new Debug.Log(`Set main camera to ${camera}.`); - } - } - - /** - * @memberof Scene - * @description Runs a function once no matter if it is in a loop or not - * @param {(...args: unknown[]) => unknown} func Function to run - * @param {boolean} [run] Determines if function is ran right when it is initialized - * @returns {Once} - * @since 1.0.0 - */ - public once(func: (...args: unknown[]) => unknown, run?: boolean) { - const one = new Once(func, run); - return one; - } - - /** - * @memberof Scene - * @description Allows a function to only be ran a max amount of times - * @param {(currentCount:number) => void} func Function to call - * @param {number} maxAmount Max amount of times to allow the function to be called - * @param {boolean} [run] Determines if function is ran right when it is initialized - * @returns {Amount} - * @since 1.1.0 - */ - public runAmount( - func: (currentCount: number) => void, - maxAmount: number, - run?: boolean - ) { - const amount = new Amount(func, maxAmount, this.game, run); - return amount; - } - - /** - * @memberof Scene - * @description Creates and returns a Timer instance - * @param {number} ms Milliseconds, converted to seconds which is used to check if the target time is reached in Timer.count - * @param {(...args:unknown[])=>unknown} cb Callback to call every time the timer reaches its target - * @param {unknown[]} args Arguments to pass to the callback - * @param {number} repeat Amount of times to repeat, set to infinity to repeat forever - * @returns {Timer} - * @since 2.1.0 - */ - public createTimer( - ms: number, - cb: (...args: unknown[]) => unknown, - args: unknown[], - repeat: number - ) { - const timer = new Timer(ms, cb, args, repeat); - return timer; - } + /** + * @memberof Scene + * @description The key of the Scene, used to identify the Scene + * @type string + * @since 1.0.0-beta + */ + public readonly key: string; + + /** + * @memberof Scene + * @description The state of the Scene being visible, determines if the Scene.displayList, physicsList, update, and __tick, is being called/used + * in the game loop + * @type boolean + * @since 1.0.0-beta + */ + public visible: boolean; + + /** + * @memberof Scene + * @description Determines if the Scene is visible by default + * @type boolean + * @since 1.0.0-beta + */ + public readonly default: boolean; + + /** + * @memberof Scene + * @description The game instance the scene is added to + * @type Game + * @since 1.0.0-beta + */ + protected game: Game; + + /** + * @memberof Scene + * @description The current camera being updated + * @type Camera | undefined + * @since 1.0.0-beta + */ + public currentCamera: Camera | undefined; + + /** + * @memberof Scene + * @description The main camera of the scene + * @type Camera | undefined + * @since 1.0.0-beta + */ + public mainCamera: Camera | undefined; + + /** + * @memberof Scene + * @description An array of cameras that the scene holds + * @type Camera[] + * @since 1.0.0-beta + */ + public cameras: Camera[]; + + /** + * @memberof Scene + * @description A DisplayList instance, holds and manages Renderables + * @type DisplayList + * @since 2.0.0 + */ + public displayList: DisplayList; + + /** + * @memberof Scene + * @description A PhysicsList instance, holds and manages PhysicsBodies + * @type PhysicsList + * @since 2.0.0 + */ + public physicsList: PhysicsList; + + /** + * @memberof Scene + * @description A Loader instance, used to load assets in Scene.preload method that you override + * @type Loader + * @since 2.0.0 + */ + public loader: Loader; + + /** + * @memberof Scene + * @description A PhysicsServer instance, manages and updates all the physics for the Scene.PhysicsList. It is set to undefined if + * Game.config.physics.customTick is truthy + * @type PhysicsServer | undefined + * @since 2.0.0 + */ + public physicsServer: PhysicsServer | undefined; + + /** + * @memberof Scene + * @description A property that is a function that gets called when the scene is switched to being visible + * @type () => void + * @since 2.1.0 + */ + public onActive: () => void; + + /** + * @memberof Scene + * @description A property that is a function that gets called when the scene is switched to not being visible + * @type () => void + * @since 2.1.0 + */ + public onInactive: () => void; + + // methods + + /** + * @memberof Scene + * @description Used to add GameObjects and more to the scene + * @since 1.0.0-beta + */ + public add: { + color: ( + value: number | string | CanvasGradient | CanvasPattern, + stroke?: number | string, + strokeWidth?: number + ) => Color; + gameobject: { + misc: { + canvasModulate: ( + x: number, + y: number, + w: number, + h: number, + color: Color + ) => CanvasModulate; + }; + existing: ( + gameobject: GameObject + ) => GameObject; + sprite: ( + x: number, + y: number, + w: number, + h: number, + textureKey: string, + currentRow?: number, + currentCol?: number + ) => Sprite; + rect: (x: number, y: number, w: number, h: number, color: Color) => Rect; + circle: (x: number, y: number, r: number, color: Color) => Circle; + roundRect: ( + x: number, + y: number, + w: number, + h: number, + r: number, + color: Color + ) => RoundRect; + }; + misc: { + area: ( + x: number, + y: number, + w: number, + h: number, + collisionFilter: PhysicsBody[] + ) => Area; + }; + ui: { + text: (text: string, config: Duck.Types.UI.Text.Config) => Text; + button: ( + shape: Duck.Types.UI.Button.Shape, + x: number, + y: number, + w: number, + h: number, + r: number, + color: Color, + text: Text + ) => Button; + }; + sound: ( + path: string, + soundPlayer?: Duck.Types.Sound.SoundPlayerType, + soundConfig?: Duck.Types.Sound.SoundConfig + ) => Sound; + input: () => Input; + camera: () => Camera; + mainCamera: () => Camera; + light: { + staticLight: ( + x: number, + y: number, + r: number, + color: Color, + alpha: number + ) => StaticLight; + }; + group: (name: string, defaultValues?: t[]) => Group; + particle: ( + shape: Duck.Types.Collider.ShapeString, + w: number, + h: number, + r: number, + fillColor: string + ) => Particle; + particleEmitter: ( + particle: Particle, + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + amount: number, + autoCreate?: boolean + ) => ParticleEmitter; + cutscene: ( + config: Duck.Types.Cutscene.Config, + instructions: Duck.Types.Cutscene.Instructions + ) => Cutscene; + map: { + tilemap: ( + origin: Duck.Types.Math.Vector2Like, + tilelayers: TileLayer[] + ) => TileMap; + tileset: ( + textureKey: string, + tileW: number, + tileH: number, + rows: number, + cols: number + ) => Tileset; + tileLayer: ( + tileset: Tileset, + map: number[][], + zIndex?: number, + visible?: boolean + ) => TileLayer; + }; + effect: ( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + particleEmitter: ParticleEmitter + ) => Effect; + presetEffect: { + explosionEffect: ( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + particleAmount: number | undefined, + speedRange: Duck.Types.ParticleEmitter.Range | undefined, + maxAge: number | undefined, + color: string | undefined + ) => ExplosionEffect; + smokeEffect: ( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + particleAmount: number | undefined, + speedRangeX: Duck.Types.ParticleEmitter.Range | undefined, + speedRangeY: Duck.Types.ParticleEmitter.Range | undefined, + maxAge: number | undefined, + color: '#2e2e2e' | undefined, + interval: 50 | undefined + ) => SmokeEffect; + }; + }; + + /** + * @memberof Scene + * @description Misc tools, contains color, physics, and math related tools + * @since 1.0.0-beta + */ + public tools: { + loader: typeof Loader; + staticColor: typeof Color; + color: { + random: ( + stroke?: string | number | boolean, + strokeWidth?: number + ) => Color; + randomWithAlpha: (alpha?: number) => string; + is: { + hex: (str: string) => boolean; + hsl: (str: string) => boolean; + rgb: (str: string) => boolean; + }; + convert: { + rgb: { + toHsl: (r: number, g: number, b: number) => string; + toRgba: (color: string, alpha: number) => string; + }; + rgba: { + toHsla: ( + r: string | number, + g: string | number, + b: string | number, + a: number + ) => string; + toRgb: (rgba: string) => string; + }; + hex: { + toRgba: (hex: string, alpha: number) => string; + toRgb: (hex: string) => string | null; + toHsl: (hex: string) => string; + }; + }; + }; + physics: { + rectToRectIntersect: ( + rect: Rect | Sprite, + rect2: Rect | Sprite + ) => boolean; + circleToRectIntersect: ( + circle: + | Circle + | { + position: { x: number; y: number }; + w: number; + h: number; + r: number; + }, + rect: + | Rect + | Sprite + | { + position: { x: number; y: number }; + w: number; + h: number; + } + ) => boolean; + }; + math: { + createVector: (x?: number, y?: number) => Vector2; + vector: typeof Vector2; + clamp: (x: number, min: number, max: number) => number; + lerp: (start: number, end: number, amount: number) => number; + randomInt: (min: number, max: number) => number; + randomFloat: (min: number, max: number, fixed?: number) => number; + }; + }; + + /** + * @constructor Scene + * @description Creates a Scene instance + * @param {string} key Key/Identifier or name of scene + * @param {Game} game Game instance + * @param {boolean} [visible=false] Is the scene visible, defaults to false + * @since 1.0.0-beta + */ + constructor(key: string, game: Game, visible?: boolean) { + super(); + + this.key = key; + this.game = game; + this.visible = visible || false; + this.default = false; + + // set visible if key is same as defaultScene key + + if (this.game.stack.defaultScene === this.key) { + this.default = true; + this.visible = true; + } + + // main camera + this.currentCamera; + + this.mainCamera; + this.cameras = []; + + this.displayList = new DisplayList(this.game); + this.physicsList = new PhysicsList(); + + this.loader = new Loader(this.game, this); + + if (this.game.config.physics?.enabled) { + this.physicsServer = new PhysicsServer(this.game, this); + } + + this.onActive = () => { + // On scene change to visible + }; + + this.onInactive = () => { + // On scene change to not visible + }; + + // methods + + this.add = { + color: ( + value: number | string | CanvasGradient | CanvasPattern, + stroke?: number | string, + strokeWidth?: number + ) => { + if (stroke) { + return new Color(value, stroke, strokeWidth || 1); + } + + return new Color(value); + }, + gameobject: { + misc: { + canvasModulate: ( + x: number, + y: number, + w: number, + h: number, + color: Color + ) => { + const myCanvasModulate = new CanvasModulate( + x, + y, + w, + h, + color, + this.game, + this + ); + this.displayList.add(myCanvasModulate); + this.physicsList.add(myCanvasModulate); + return myCanvasModulate; + }, + }, + existing: ( + gameobject: GameObject + ) => { + this.displayList.add(gameobject); + this.physicsList.add(gameobject); + return gameobject; + }, + sprite: ( + x: number, + y: number, + w: number, + h: number, + textureKey: string, + currentRow?: number, + currentCol?: number + ) => { + const sprite = new Sprite( + x, + y, + w, + h, + textureKey, + this.game, + this, + currentRow, + currentCol + ); + this.displayList.add(sprite); + this.physicsList.add(sprite); + return sprite; + }, + rect: (x: number, y: number, w: number, h: number, color: Color) => { + const rect = new Rect(x, y, w, h, color, this.game, this); + this.displayList.add(rect); + this.physicsList.add(rect); + return rect; + }, + circle: (x: number, y: number, r: number, color: Color) => { + const circle = new Circle(x, y, r, color, this.game, this); + this.displayList.add(circle); + this.physicsList.add(circle); + return circle; + }, + roundRect: ( + x: number, + y: number, + w: number, + h: number, + r: number, + color: Color + ) => { + const roundRect = new RoundRect( + x, + y, + w, + h, + r, + color, + this.game, + this + ); + this.displayList.add(roundRect); + this.physicsList.add(roundRect); + return roundRect; + }, + }, + ui: { + text: (text: string, config: Duck.Types.UI.Text.Config) => { + const myText = new Text(text, config, this.game, this); + this.displayList.add(myText); + this.physicsList.add(myText); + return myText; + }, + button: ( + shape: Duck.Types.UI.Button.Shape, + x: number, + y: number, + w: number, + h: number, + r: number, + color: Color, + text: Text + ) => { + const myButton = new Button( + shape, + x, + y, + w, + h, + r, + color, + text, + this.game, + this + ); + this.displayList.add(myButton); + this.physicsList.add(myButton); + return myButton; + }, + }, + misc: { + area: ( + x: number, + y: number, + w: number, + h: number, + collisionFilter: PhysicsBody[] + ) => { + const myArea = new Area(x, y, w, h, collisionFilter, this.game, this); + this.physicsList.add(myArea); + return myArea; + }, + }, + sound: ( + path: string, + soundPlayer?: Duck.Types.Sound.SoundPlayerType, + soundConfig?: Duck.Types.Sound.SoundConfig + ) => { + return new Sound(path, this.game, this, soundPlayer, soundConfig); + }, + input: () => { + return new Input(this.game, this); + }, + camera: () => { + const c = new Camera(this.game, this); + this.cameras.push(c); + return c; + }, + mainCamera: () => { + const c = new Camera(this.game, this); + this.cameras.push(c); + this.mainCamera = c; + this.currentCamera = c; + return c; + }, + light: { + staticLight: ( + x: number, + y: number, + r: number, + color: Color, + alpha: number + ) => { + const myStaticLight = new StaticLight( + x, + y, + r, + color, + alpha, + this.game, + this + ); + this.displayList.add(myStaticLight); + this.physicsList.add(myStaticLight); + return myStaticLight; + }, + }, + group: (name: string, defaultValues?: t[]) => { + return new Group(name, this.game, defaultValues); + }, + particle: ( + shape: Duck.Types.Collider.ShapeString, + w: number, + h: number, + r: number, + fillColor: string + ) => { + const myParticle = new Particle( + shape, + w, + h, + r, + fillColor, + this.game, + this + ); + return myParticle; + }, + particleEmitter: ( + particle: Particle, + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + amount: number, + autoCreate = true + ) => { + return new ParticleEmitter( + particle, + rangeX, + rangeY, + amount, + this.game, + this, + autoCreate + ); + }, + cutscene: ( + config: Duck.Types.Cutscene.Config, + instructions: Duck.Types.Cutscene.Instructions + ) => { + return new Cutscene(config, instructions, this.game); + }, + map: { + tilemap: ( + origin: Duck.Types.Math.Vector2Like, + tilelayers: TileLayer[] + ) => { + const myTileMap = new TileMap(origin, tilelayers, this.game, this); + this.displayList.add(myTileMap); + return myTileMap; + }, + tileset: ( + textureKey: string, + tileW: number, + tileH: number, + rows: number, + cols: number + ) => { + return new Tileset( + textureKey, + tileW, + tileH, + rows, + cols, + this.game, + this + ); + }, + tileLayer: ( + tileset: Tileset, + map: number[][], + zIndex = 2, + visible = true + ) => { + return new TileLayer(tileset, map, this.game, this, zIndex, visible); + }, + }, + effect: ( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + particleEmitter: ParticleEmitter + ) => { + const myEffect = new Effect(rangeX, rangeY, particleEmitter, this.game); + this.displayList.add(myEffect); + return myEffect; + }, + presetEffect: { + explosionEffect: ( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + particleAmount = 50, + speedRange = [1, 1], + maxAge = 3, + color = '#FFA500' + ) => { + const myExplosionEffect = new ExplosionEffect( + rangeX, + rangeY, + this.game, + particleAmount, + speedRange, + maxAge, + color, + this + ); + this.displayList.add(myExplosionEffect); + return myExplosionEffect; + }, + smokeEffect: ( + rangeX: Duck.Types.ParticleEmitter.Range, + rangeY: Duck.Types.ParticleEmitter.Range, + particleAmount = 50, + speedRangeX = [-0.1, 0.4], + speedRangeY = [-0.1, 0.4], + maxAge = 20, + color = '#2e2e2e', + interval = 50 + ) => { + const mySmokeEffect = new SmokeEffect( + rangeX, + rangeY, + this.game, + particleAmount, + speedRangeX, + speedRangeY, + maxAge, + color, + interval, + this + ); + this.displayList.add(mySmokeEffect); + return mySmokeEffect; + }, + }, + }; + + this.tools = { + loader: Loader, + staticColor: Color, + color: { + random: (stroke?: string | number | boolean, strokeWidth?: number) => { + if (typeof stroke === 'boolean') { + return new Color(randomColor(), randomColor(), strokeWidth || 1); + } else { + if (stroke) { + return new Color(randomColor(), stroke, strokeWidth || 1); + } + } + + return new Color(randomColor()); + }, + randomWithAlpha: (alpha?: number) => randomColorWithAlpha(alpha), + is: { + hex: isHex, + hsl: isHSL, + rgb: isRGB, + }, + convert: { + rgb: { + toHsl: rgbToHSL, + toRgba: rgbToRGBA, + }, + rgba: { + toHsla: rgbaToHSLA, + toRgb: rgbaToRGB, + }, + hex: { + toRgba: hexToRGBA, + toRgb: hexToRGB, + toHsl: hexToHSL, + }, + }, + }, + physics: { + rectToRectIntersect: (rect: Rect | Sprite, rect2: Rect | Sprite) => { + return rectToRectIntersect(rect, rect2); + }, + circleToRectIntersect: ( + circle: + | Circle + | { + position: { x: number; y: number }; + w: number; + h: number; + r: number; + }, + rect: + | Rect + | Sprite + | { + position: { x: number; y: number }; + w: number; + h: number; + } + ) => { + return circleToRectIntersect(circle, rect); + }, + }, + math: { + createVector: (x?: number, y?: number) => { + return Vector2.CREATE(x, y); + }, + vector: Vector2, + clamp: clamp, + lerp: lerp, + randomInt: randomInt, + randomFloat: randomFloat, + }, + }; + } + + /** + * @memberof Scene + * @description Calls physics server __tick method if game.config.physics.enabled is true + * and game.config.physics.customTick is false + * *Do not call manually, this is called in GAME LOOP* + * + * @since 2.0.0 + */ + public __tick() { + if ( + !this.game.config.physics?.customTick && + this.game.config.physics?.enabled + ) { + this.physicsServer?.__tick(); + } + } + + /** + * @memberof Scene + * @description Sets the visible property and calls the game.renderer.pipeline.pool method to immediately update the visibility + * + * **Note: this calls Game.renderer.pipeline.pool to immediately update the visibility** + * + * @param {boolean} visible What to set the visible property to + * @since 2.1.0 + */ + public setVisible(visible: boolean) { + this.visible = visible; + this.game.renderer.pipeline.pool(); + } + + /** + * @memberof Scene + * @description Switches the active camera to a passed camera + * @param {Camera} camera Camera to switch to + * @memberof 1.0.0-beta + */ + public switchCamera(camera: Camera) { + const foundCamera = this.cameras.find((_camera) => _camera === camera); + if (foundCamera) { + this.currentCamera = foundCamera; + + // call smart scale + if (this.game.config.smartScale) { + // call on load too + this.game.displayManager.smallCorrectionScale(); + } + + if (this.game.config.debug) { + new Debug.Log('Switched cameras.'); + } + } else { + new Debug.Error( + 'Cannot switch camera. Camera not found in the current scene.' + ); + } + } + + /** + * @memberof Scene + * @description Switches the active camera to the main camera + * @since 1.0.0-beta + */ + public switchToMainCamera() { + this.currentCamera = this.mainCamera; + + // call smart scale + if (this.game.config.smartScale) { + // call on load too + this.game.displayManager.smallCorrectionScale(); + } + + if (this.game.config.debug) { + new Debug.Log('Switched to main camera.'); + } + } + + /** + * @memberof Scene + * @description Sets a camera as the main camera + * @param {Camera} camera Camera to set the main camera as + * @since 1.0.0-beta + */ + public setMainCamera(camera: Camera) { + this.mainCamera = camera; + + // call smart scale + if (this.game.config.smartScale) { + // call on load too + this.game.displayManager.smallCorrectionScale(); + } + + if (this.game.config.debug) { + new Debug.Log(`Set main camera to ${camera}.`); + } + } + + /** + * @memberof Scene + * @description Runs a function once no matter if it is in a loop or not + * @param {(...args: unknown[]) => unknown} func Function to run + * @param {boolean} [run] Determines if function is ran right when it is initialized + * @returns {Once} + * @since 1.0.0 + */ + public once(func: (...args: unknown[]) => unknown, run?: boolean) { + const one = new Once(func, run); + return one; + } + + /** + * @memberof Scene + * @description Allows a function to only be ran a max amount of times + * @param {(currentCount:number) => void} func Function to call + * @param {number} maxAmount Max amount of times to allow the function to be called + * @param {boolean} [run] Determines if function is ran right when it is initialized + * @returns {Amount} + * @since 1.1.0 + */ + public runAmount( + func: (currentCount: number) => void, + maxAmount: number, + run?: boolean + ) { + const amount = new Amount(func, maxAmount, this.game, run); + return amount; + } + + /** + * @memberof Scene + * @description Creates and returns a Timer instance + * @param {number} ms Milliseconds, converted to seconds which is used to check if the target time is reached in Timer.count + * @param {(...args:unknown[])=>unknown} cb Callback to call every time the timer reaches its target + * @param {unknown[]} args Arguments to pass to the callback + * @param {number} repeat Amount of times to repeat, set to infinity to repeat forever + * @returns {Timer} + * @since 2.1.0 + */ + public createTimer( + ms: number, + cb: (...args: unknown[]) => unknown, + args: unknown[], + repeat: number + ) { + const timer = new Timer(ms, cb, args, repeat); + return timer; + } } diff --git a/src/core/sound/models/baseSoundPlayer.ts b/src/core/sound/models/baseSoundPlayer.ts new file mode 100644 index 00000000..227eee88 --- /dev/null +++ b/src/core/sound/models/baseSoundPlayer.ts @@ -0,0 +1,281 @@ +import Game from '../../game'; +import SoundSprite from './misc/soundSprite'; + +/** + * @class BaseSoundPlayer + * @classdesc Abstract BaseSoundPlayer class. + * @description The BaseSoundPlayer Class. WebSoundPlayer and HTMLSoundPlayer classes extend this abstract class + * @abstract + * @since 3.0.0 + */ +export default abstract class BaseSoundPlayer { + /** + * @memberof BaseSoundPlayer + * @description Path to sound file + * @type string + * @since 3.0.0 + */ + public path: string; + + /** + * @memberof BaseSoundPlayer + * @description Game instance + * @type Game + * @since 3.0.0 + */ + public game: Game; + + /** + * @memberof BaseSoundPlayer + * @description Audio Sprites + * @type SoundSprite[] + * @since 3.0.0 + */ + protected soundSprites: SoundSprite[]; + + constructor(path: string, game: Game) { + this.path = path; + this.game = game; + this.soundSprites = []; + } + + /** + * @memberof BaseSoundPlayer + * @description Plays the audio + * @param {number} [offset] Where to start play the audio, in milliseconds, optional -> default: undefined + * @param {number} [duration] Where to start play the audio, in milliseconds, optional -> default: undefined + * @abstract + * @since 3.0.0 + */ + public abstract play(offset?: number, duration?: number): void; + + /** + * @memberof BaseSoundPlayer + * @description Pauses the audio + * @abstract + * @since 3.0.0 + */ + public abstract pause(): void; + + /** + * @memberof BaseSoundPlayer + * @description Stops the audio, disconnects nodes for WebSoundPlayer, **not an alias to BaseSoundPlayer.pause** + * @abstract + * @since 3.0.0 + */ + public abstract stop(): void; + + /** + * @memberof BaseSoundPlayer + * @description Mutes the audio + * @abstract + * @since 3.0.0 + */ + public abstract mute(): void; + + /** + * @memberof BaseSoundPlayer + * @description Unmutes the audio + * @abstract + * @since 3.0.0 + */ + public abstract unmute(): void; + + /** + * @memberof BaseSoundPlayer + * @description Sets a boolean if the audio should loop or not + * @param {boolean} loop Boolean to loop the audio or not + * @abstract + * @since 3.0.0 + */ + public abstract loop(loop: boolean): void; + + /** + * @memberof BaseSoundPlayer + * @description Seeks and plays the audio + * @param {number} timeInMilliseconds The time in milliseconds to seek to + * @param {boolean} [play] Determines to play right after seeking, optional, defaults -> false + * @abstract + * @since 3.0.0 + */ + public abstract seek(timeInMilliseconds: number, play?: boolean): void; + + /** + * @memberof BaseSoundPlayer + * @description Restarts the audio + * @param {boolean} [play] Determines to play right after restarting, optional, defaults -> false + * @abstract + * @since 3.0.0 + */ + public abstract restart(play?: boolean): void; + + /** + * @memberof BaseSoundPlayer + * @description Sets the volume of the audio + * @param {number} volume The volume to set the audio to, a decimal value (0.1 - 1) + * @abstract + * @since 3.0.0 + */ + public abstract setVolume(volume: number): void; + + /** + * @memberof BaseSoundPlayer + * @description Fades the volume of the audio in or out automatically and linearly + * @param {number} targetVolume The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1) + * @param {number} amount The amount applied to the volume, (must be positive) + * @param {number} ms How often the amount is applied to the volume + * @param {() => void} [cb] Callback to be called when target volume has been reached, optional -> default: undefined + * @abstract + * @since 3.0.0 + */ + public abstract fadeVolume( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ): void; + + /** + * @memberof BaseSoundPlayer + * @description Fades the volume of the audio in or out automatically and linearly, and plays the audio + * @param {number} targetVolume The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1) + * @param {number} amount The amount applied to the volume, (must be positive) + * @param {number} ms How often the amount is applied to the volume + * @param {() => void} [cb] Callback to be called when target volume has been reached, optional -> default: undefined + * @param {number} [offset] Where to start play the audio, in milliseconds, optional -> default: undefined + * @param {number} [duration] Where to start play the audio, in milliseconds, optional -> default: undefined + * @abstract + * @since 3.0.0 + */ + public abstract fadeVolumeAndPlay( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void, + offset?: number, + duration?: number + ): void; + + /** + * @memberof BaseSoundPlayer + * @description Fades the volume of the audio in or out automatically and linearly, and pauses the audio + * @param {number} targetVolume The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1) + * @param {number} amount The amount applied to the volume, (must be positive) + * @param {number} ms How often the amount is applied to the volume + * @param {() => void} [cb] Callback to be called when target volume has been reached, optional -> default: undefined + * @abstract + * @since 3.0.0 + */ + public abstract fadeVolumeAndPause( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ): void; + + /** + * @memberof BaseSoundPlayer + * @description Fades the volume of the audio in or out automatically and linearly, and stops the audio + * @param {number} targetVolume The targetVolume to smoothly set the audio to, a decimal value (0.1 - 1) + * @param {number} amount The amount applied to the volume, (must be positive) + * @param {number} ms How often the amount is applied to the volume + * @param {() => void} [cb] Callback to be called when target volume has been reached, optional -> default: undefined + * @abstract + * @since 3.0.0 + */ + public abstract fadeVolumeAndStop( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ): void; + + /** + * @memberof BaseSoundPlayer + * @description Plays a SoundSprite based of passed key + * @param {string} key The key of the SoundSprite to find and play + * @abstract + * @since 3.0.0 + */ + public abstract playSoundSprite(key: string): void; + + /** + * @memberof BaseSoundPlayer + * @description Creates a SoundSprite + * @param {string} key The key of the SoundSprite + * @param {number} startInMilliseconds The starting time in milliseconds of when the SoundSprite starts + * @param {number} endInMilliseconds The ending time in milliseconds of when the SoundSprite ends + * @abstract + * @since 3.0.0 + */ + public abstract createSoundSprite( + key: string, + startInMilliseconds: number, + endInMilliseconds: number + ): void; + + /** + * @memberof BaseSoundPlayer + * @description Removes a SoundSprite from the soundSprites array + * @param {string} key The key of the SoundSprite to find and remove + * @abstract + * @since 3.0.0 + */ + public abstract removeSoundSprite(key: string): void; + + /** + * @memberof BaseSoundPlayer + * @description Gets the duration of the sound + * @abstract + * @since 3.0.0 + */ + public abstract get duration(): number; + + /** + * @memberof BaseSoundPlayer + * @description Gets the playing state of the sound + * @abstract + * @since 3.0.0 + */ + public abstract get isPlaying(): boolean; + + /** + * @memberof BaseSoundPlayer + * @description Gets the paused state of the sound + * @abstract + * @since 3.0.0 + */ + public abstract get isPaused(): boolean; + + /** + * @memberof BaseSoundPlayer + * @description Gets the current volume of the sound + * @abstract + * @since 3.0.0 + */ + public abstract get currentVolume(): number; + + /** + * @memberof BaseSoundPlayer + * @description Gets the mute state of the sound + * @abstract + * @since 3.0.0 + */ + public abstract get isMuted(): boolean; + + /** + * @memberof BaseSoundPlayer + * @description Gets the loop state of the sound + * @abstract + * @since 3.0.0 + */ + public abstract get isLooping(): boolean; + + /** + * @memberof BaseSoundPlayer + * @description Gets the current time of the sound playing in milliseconds + * @abstract + * @since 3.0.0 + */ + public abstract get currentTime(): number; +} diff --git a/src/core/sound/models/htmlSoundPlayer.ts b/src/core/sound/models/htmlSoundPlayer.ts new file mode 100644 index 00000000..768192fe --- /dev/null +++ b/src/core/sound/models/htmlSoundPlayer.ts @@ -0,0 +1,288 @@ +import { Duck } from '../../..'; +import Debug from '../../debug/debug'; +import Game from '../../game'; +import BaseSoundPlayer from './baseSoundPlayer'; +import SoundSprite from './misc/soundSprite'; + +/** + * @class HTMLSoundPlayer + * @classdesc Creates a HTMLSoundPlayer class. + * @description The HTMLSoundPlayer Class. Uses HTMLAudio to play sound + * @extends BaseSoundPlayer + * @since 3.0.0 + */ +export default class HTMLSoundPlayer extends BaseSoundPlayer { + /** + * @memberof HTMLSoundPlayer + * @description HTMLAudioElement that is playing audio + * @type HTMLAudioElement + * @since 3.0.0 + */ + public element: HTMLAudioElement; + + /** + * @constructor HTMLSoundPlayer + * @description Creates a HTMLSoundPlayer instance + * @param {string} path Path to sound file + * @param {Game} game Game instance + * @param {Duck.Types.Sound.SoundConfig} [soundConfig] SoundConfig, optional, defaults => undefined + * @since 3.0.0 + */ + constructor( + path: string, + game: Game, + soundConfig?: Duck.Types.Sound.SoundConfig + ) { + super(path, game); + + this.element = document.createElement('audio'); + + this.element.className = 'duckengine-audio-sound'; + this.element.style.display = 'none'; + this.element.controls = false; + this.element.src = this.path; + this.element.volume = soundConfig?.volume || 1; + this.element.autoplay = soundConfig?.autoplay || false; + this.element.loop = soundConfig?.loop || false; + + if (soundConfig?.volume === 0) { + this.mute(); + } + + this.soundSprites = []; + + // populate SoundSprites + if (soundConfig?.spriteStructs) { + for (const struct of soundConfig.spriteStructs) { + this.soundSprites.push( + new SoundSprite( + struct.key, + struct.startInMilliSeconds, + struct.endInMilliSeconds, + this, + this.game + ) + ); + } + } + + document.body.appendChild(this.element); + } + + public play(offset?: number, duration?: number) { + if (offset) { + this.seek(this.currentTime + offset); + } + + if (duration) { + const timeout = setTimeout(() => { + this.pause(); + clearTimeout(timeout); + }, duration); + } + + this.element.play(); + } + + public pause() { + this.element.pause(); + } + + public mute() { + this.element.muted = true; + } + + public unmute() { + this.element.muted = false; + } + + public stop() { + this.pause(); + } + + public loop(loop = true) { + this.element.loop = loop; + } + + public seek(timeInMilliseconds: number, play?: boolean) { + this.element.currentTime = timeInMilliseconds / 1000; + if (play) { + this.play(); + } + } + + public restart(play?: boolean) { + this.seek(0); + + if (play) { + this.play; + } + } + + public playSoundSprite(key: string) { + const foundSprite = this.soundSprites.find( + (_sprite) => _sprite.key === key + ); + + if (foundSprite) { + foundSprite.play(); + } else { + new Debug.Error(`Cannot find sound sprite with key: "${key}".`); + } + } + + public createSoundSprite( + key: string, + startInMilliseconds: number, + endInMilliseconds: number + ) { + this.soundSprites.push( + new SoundSprite( + key, + startInMilliseconds, + endInMilliseconds, + this, + this.game + ) + ); + } + + public removeSoundSprite(key: string) { + const foundSprite = this.soundSprites.find( + (_sprite) => _sprite.key === key + ); + + if (foundSprite) { + const index = this.soundSprites.indexOf(foundSprite); + this.soundSprites.splice(index, 1); + } + } + + public setVolume(volume: number) { + this.element.volume = volume; + } + + public fadeVolume( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ) { + // make sure it is positive + amount = Math.abs(amount); + + const direction = targetVolume < this.currentVolume ? -1 : +1; // determines fade in or fade out + const interval = setInterval(() => { + // check if currentVolume reached or surpassed targetVolume + const fixedVolume = Number(this.currentVolume.toFixed(2)); + if (direction === 1) { + if (fixedVolume >= targetVolume) { + this.setVolume(targetVolume); + + if (cb) { + cb(); + } + + clearInterval(interval); + return; + } + } else { + if (fixedVolume <= targetVolume) { + this.setVolume(targetVolume); + + if (cb) { + cb(); + } + + clearInterval(interval); + return; + } + } + + if (direction === 1) { + const newVolume = this.currentVolume + amount; + this.setVolume(newVolume); // set volume + } else { + const newVolume = this.currentVolume - amount; + this.setVolume(newVolume); // set volume + } + }, ms); + } + + public fadeVolumeAndPlay( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void, + offset?: number, + duration?: number + ) { + const direction = amount < 0 ? -1 : +1; + if (direction === 1) { + // set volume to 0 + this.setVolume(0); + } + if (direction === -1) { + // set volume to 1 + this.setVolume(1); + } + this.fadeVolume(targetVolume, amount, ms, cb); + this.play(offset, duration); + } + + public fadeVolumeAndPause( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ) { + this.fadeVolume(targetVolume, amount, ms, () => { + this.pause(); + if (cb) { + cb(); + } + }); + } + + public fadeVolumeAndStop( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ) { + this.fadeVolume(targetVolume, amount, ms, () => { + this.stop(); + if (cb) { + cb(); + } + }); + } + + public get duration() { + return this.element.duration; + } + + public get isPlaying() { + return !this.element.paused; + } + + public get isPaused() { + return this.element.paused; + } + + public get currentVolume() { + return this.element.volume; + } + + public get isMuted() { + return this.element.muted; + } + + public get isLooping() { + return this.element.loop; + } + + public get currentTime() { + return this.element.currentTime * 1000; + } +} diff --git a/src/core/sound/models/misc/soundSprite.ts b/src/core/sound/models/misc/soundSprite.ts new file mode 100644 index 00000000..b1f39846 --- /dev/null +++ b/src/core/sound/models/misc/soundSprite.ts @@ -0,0 +1,87 @@ +import Game from '../../../game'; +import BaseSoundPlayer from '../baseSoundPlayer'; + +/** + * @class SoundSprite + * @classdesc Creates a SoundSprite class. + * @description The SoundSprite Class. Holds information about a clip of audio + * @since 3.0.0 + */ +export default class SoundSprite { + /** + * @memberof SoundSprite + * @description Key of SoundSprite + * @type string + * @readonly + * @since 3.0.0 + */ + public readonly key: string; + + /** + * @memberof SoundSprite + * @description The starting time in milliseconds of when the SoundSprite starts + * @type number + * @since 3.0.0 + */ + public start: number; + + /** + * @memberof SoundSprite + * @description The ending time in milliseconds of when the SoundSprite ends + * @type number + * @since 3.0.0 + */ + public end: number; + + /** + * @memberof SoundSprite + * @description The sound player, either HTMLSoundPlayer or WebSoundPlayer + * @type BaseSoundPlayer + * @since 3.0.0 + */ + public soundPlayer: BaseSoundPlayer; + + /** + * @memberof SoundSprite + * @description Game instance + * @type game + * @since 3.0.0 + */ + public game: Game; + + /** + * @constructor SoundSprite + * @description Creates a SoundSprite instance + * @param {string} path Path to sound file + * @param {Game} game Game instance + * @since 3.0.0 + */ + constructor( + key: string, + startInMilliseconds: number, + endInMilliseconds: number, + soundPlayer: BaseSoundPlayer, + game: Game + ) { + this.key = key; + + this.start = startInMilliseconds; + this.end = endInMilliseconds; + + this.soundPlayer = soundPlayer; + this.game = game; + } + + public play() { + this.soundPlayer.seek(this.start, true); + + // check time if is past end + const interval = setInterval(() => { + if (this.soundPlayer.currentTime >= this.end) { + this.soundPlayer.stop(); + this.soundPlayer.restart(false); + clearInterval(interval); + } + }, 1); + } +} diff --git a/src/core/sound/models/webSoundPlayer.ts b/src/core/sound/models/webSoundPlayer.ts new file mode 100644 index 00000000..486f9267 --- /dev/null +++ b/src/core/sound/models/webSoundPlayer.ts @@ -0,0 +1,395 @@ +/* eslint-disable @typescript-eslint/no-non-null-assertion */ +import { Duck } from '../../..'; +import Debug from '../../debug/debug'; +import Game from '../../game'; +import Scene from '../../scene'; +import BaseSoundPlayer from './baseSoundPlayer'; +import SoundSprite from './misc/soundSprite'; + +/** + * @class WebSoundPlayer + * @classdesc Creates a WebSoundPlayer class. + * @description The WebSoundPlayer Class. Uses WebAudio API to play sound + * @extends BaseSoundPlayer + * @since 3.0.0 + */ +export default class WebSoundPlayer extends BaseSoundPlayer { + /** + * @memberof WebSoundPlayer + * @description The AudioContext + * @type AudioContext + * @since 3.0.0 + */ + public context: AudioContext; + + /** + * @memberof WebSoundPlayer + * @description The AudioBufferSourceNode + * @type AudioBufferSourceNode + * @since 3.0.0 + */ + public sourceNode: AudioBufferSourceNode; + + /** + * @memberof WebSoundPlayer + * @description The AudioBuffer + * @type AudioBuffer + * @since 3.0.0 + */ + public audioBuffer: AudioBuffer; + + /** + * @memberof WebSoundPlayer + * @description The GainNode + * @type GainNode + * @since 3.0.0 + */ + public gainNode: GainNode; + + protected seekTo: number | undefined; + + protected paused: boolean; + protected muted: boolean; + protected volume: number; + protected looping: boolean; + + /** + * @constructor WebSoundPlayer + * @description Creates a Sound instance + * @param {string} key Key of preloaded audio buffer + * @param {Duck.Types.Sound.SoundConfig} soundConfig SoundConfig, optional, defaults => undefined + * @param {Game} game Game instance + * @param {Scene} scene Scene instance + * @since 3.0.0 + */ + constructor( + key: string, + game: Game, + scene: Scene, + soundConfig?: Duck.Types.Sound.SoundConfig + ) { + super(key, game); + + // find preloaded audio buffer + this.audioBuffer = scene.loader.audioBufferStack.find( + (a) => a.key === key + )!.value; + + if (!this.audioBuffer) { + new Debug.Error( + `Cannot find AudioBuffer from loader.audioBufferStack with key "${key}"` + ); + } + + this.context = new AudioContext(); + this.sourceNode = this.context.createBufferSource(); + this.gainNode = this.context.createGain(); + + this.gainNode.connect(this.context.destination); + this.sourceNode.connect(this.gainNode); + this.sourceNode.buffer = this.audioBuffer; + + this.seekTo = undefined; + + this.paused = true; + this.muted = false; + this.volume = 1; + this.looping = false; + + this.gainNode.gain.value = this.volume; // 1 + + this.soundSprites = []; + + // populate SoundSprites + if (soundConfig?.spriteStructs) { + for (const struct of soundConfig.spriteStructs) { + this.soundSprites.push( + new SoundSprite( + struct.key, + struct.startInMilliSeconds, + struct.endInMilliSeconds, + this, + this.game + ) + ); + } + } + + // use passed soundConfig + if (soundConfig?.volume) { + this.setVolume(soundConfig.volume); + } + + if (soundConfig?.loop) { + this.loop(soundConfig.loop); + } + + if (soundConfig?.autoplay) { + this.play(); + } + } + + /** + * @memberof WebSoundPlayer + * @description Resets context, sourceNode, gainNode. Reconnects gainNode and sourceNode. Resets sourceNode buffer + * @abstract + * @since 3.0.0 + */ + public recreateNodes() { + this.context = new AudioContext(); + this.sourceNode = this.context.createBufferSource(); + this.gainNode = this.context.createGain(); + + this.gainNode.connect(this.context.destination); + this.sourceNode.connect(this.gainNode); + this.sourceNode.buffer = this.audioBuffer; + + // reset states + this.setVolume(this.volume); + if (this.muted) { + this.mute(); + } else { + this.unmute(); + } + this.loop(this.looping); + } + + public play(offset?: number, duration?: number) { + this.paused = false; + + if (this.context.state === 'suspended') { + this.context.resume(); + } else { + this.sourceNode.start(0, this.seekTo || offset, duration); + + this.seekTo = undefined; + } + } + + public pause() { + if (this.context.state === 'running') { + this.context.suspend(); + this.paused = true; + } + } + + public stop() { + this.sourceNode.disconnect(); + this.gainNode.disconnect(); + } + + public mute() { + this.muted = true; + + // preserve original volume + this.volume = this.gainNode.gain.value; + + // set to 0 + this.gainNode.gain.value = 0; + } + + public unmute() { + this.muted = false; + + // use preserved original volume + this.gainNode.gain.value = this.volume; + } + + public loop(loop: boolean) { + this.sourceNode.loop = loop; + this.looping = loop; + } + + public seek(timeInMilliseconds: number, play?: boolean) { + this.pause(); + this.stop(); + + this.recreateNodes(); + + if (play) { + this.seekTo = undefined; + this.play(timeInMilliseconds / 1000); + } else { + this.seekTo = timeInMilliseconds / 1000; + } + } + + public restart(play?: boolean) { + this.pause(); + this.stop(); + + this.recreateNodes(); + + if (play) { + this.play(); + } + } + + public setVolume(volume: number) { + this.volume = volume; + this.gainNode.gain.value = this.volume; + } + + public fadeVolume( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ) { + // make sure it is positive + amount = Math.abs(amount); + + const direction = targetVolume < this.currentVolume ? -1 : +1; // determines fade in or fade out + const interval = setInterval(() => { + // check if currentVolume reached or surpassed targetVolume + const fixedVolume = Number(this.currentVolume.toFixed(2)); + if (direction === 1) { + if (fixedVolume >= targetVolume) { + this.setVolume(targetVolume); + + if (cb) { + cb(); + } + + clearInterval(interval); + return; + } + } else { + if (fixedVolume <= targetVolume) { + this.setVolume(targetVolume); + + if (cb) { + cb(); + } + + clearInterval(interval); + return; + } + } + + if (direction === 1) { + const newVolume = this.currentVolume + amount; + this.setVolume(newVolume); // set volume + } else { + const newVolume = this.currentVolume - amount; + this.setVolume(newVolume); // set volume + } + }, ms); + } + + public fadeVolumeAndPlay( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void, + offset?: number, + duration?: number + ) { + const direction = amount < 0 ? -1 : +1; + if (direction === 1) { + // set volume to 0 + this.setVolume(0); + } + if (direction === -1) { + // set volume to 1 + this.setVolume(1); + } + this.fadeVolume(targetVolume, amount, ms, cb); + this.play(offset, duration); + } + + public fadeVolumeAndPause( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ) { + this.fadeVolume(targetVolume, amount, ms, () => { + this.pause(); + if (cb) { + cb(); + } + }); + } + + public fadeVolumeAndStop( + targetVolume: number, + amount: number, + ms: number, + cb?: () => void + ) { + this.fadeVolume(targetVolume, amount, ms, () => { + this.stop(); + if (cb) { + cb(); + } + }); + } + + public playSoundSprite(key: string) { + const foundSprite = this.soundSprites.find( + (_sprite) => _sprite.key === key + ); + + if (foundSprite) { + foundSprite.play(); + } else { + new Debug.Error(`Cannot find sound sprite with key: "${key}".`); + } + } + + public createSoundSprite( + key: string, + startInMilliseconds: number, + endInMilliseconds: number + ) { + this.soundSprites.push( + new SoundSprite( + key, + startInMilliseconds, + endInMilliseconds, + this, + this.game + ) + ); + } + + public removeSoundSprite(key: string) { + const foundSprite = this.soundSprites.find( + (_sprite) => _sprite.key === key + ); + + if (foundSprite) { + const index = this.soundSprites.indexOf(foundSprite); + this.soundSprites.splice(index, 1); + } + } + + public get duration() { + return this.audioBuffer.duration; + } + + public get isPlaying() { + return !this.paused; + } + + public get isPaused() { + return this.paused; + } + + public get currentVolume() { + return this.gainNode.gain.value; + } + + public get isMuted() { + return this.muted; + } + + public get isLooping() { + return this.looping; + } + + public get currentTime() { + return this.context.currentTime * 1000; + } +} diff --git a/src/core/sound/sound.ts b/src/core/sound/sound.ts new file mode 100644 index 00000000..8fe7b595 --- /dev/null +++ b/src/core/sound/sound.ts @@ -0,0 +1,95 @@ +import { Duck } from '../..'; +import Game from '../game'; +import Scene from '../scene'; +import BaseSoundPlayer from './models/baseSoundPlayer'; +import HTMLSoundPlayer from './models/htmlSoundPlayer'; +import WebSoundPlayer from './models/webSoundPlayer'; + +/** + * @class Sound + * @classdesc Creates a Sound class. + * @description The Sound Class. Uses either the DuckEngine WebAudio or HTMLAudio sound player classes to play audio + * @since 3.0.0 + */ +export default class Sound { + /** + * @memberof Sound + * @description Path to sound file for HTMLSoundPlayer OR the key of a preloaded AudioBuffer for WebSoundPlayer + * @type string + * @since 3.0.0 + */ + public pathOrKey: string; + + /** + * @memberof Sound + * @description Game instance + * @type Game + * @since 3.0.0 + */ + public game: Game; + + /** + * @memberof Sound + * @description Scene instance + * @type Scene + * @since 3.0.0 + */ + public scene: Scene; + + /** + * @memberof Sound + * @description The DuckEngine sound player being used + * @type BaseSoundPlayer + * @since 3.0.0 + */ + public soundPlayer: BaseSoundPlayer; + + /** + * @constructor Sound + * @description Creates a Sound instance + * @param {string} path Path to sound file + * @param {Game} game Game instance + * @param {Duck.Types.Sound.SoundPlayerType} [soundPlayerType] Specify preference for WebAudio use or HTMLAudio use, optional, default => AUTO + * @param {Duck.Types.Sound.SoundConfig} [soundConfig] SoundConfig, for use in both WebAudio and HtmlAudio sound players, option, default => undefined + * @since 3.0.0 + */ + constructor( + pathOrKey: string, + game: Game, + scene: Scene, + soundPlayerType?: Duck.Types.Sound.SoundPlayerType, + soundConfig?: Duck.Types.Sound.SoundConfig + ) { + this.pathOrKey = pathOrKey; + this.game = game; + this.scene = scene; + + if (soundPlayerType === 'WebAudio') { + this.soundPlayer = new WebSoundPlayer( + this.pathOrKey, + this.game, + this.scene, + soundConfig + ); + } else if (soundPlayerType === 'HTMLAudio') { + this.soundPlayer = new HTMLSoundPlayer( + this.pathOrKey, + this.game, + soundConfig + ); + } else if (window.AudioContext) { + this.soundPlayer = new WebSoundPlayer( + this.pathOrKey, + this.game, + this.scene, + soundConfig + ); + } else { + this.soundPlayer = new HTMLSoundPlayer( + this.pathOrKey, + this.game, + soundConfig + ); + } + } +} diff --git a/src/core/sound/soundPlayer.ts b/src/core/sound/soundPlayer.ts deleted file mode 100644 index 7218a00d..00000000 --- a/src/core/sound/soundPlayer.ts +++ /dev/null @@ -1,201 +0,0 @@ -import { Duck } from '../../index'; -import Debug from '../debug/debug'; - -/** - * @class SoundPlayer - * @classdesc Creates a SoundPlayer class. - * @description The SoundPlayer Class. Plays audio - * @since 1.0.0-beta - */ -export default class SoundPlayer { - public path: string; - public element: HTMLAudioElement; - protected sprites: Duck.Types.Sound.Sprite[]; - - /** - * @constructor SoundPlayer - * @description Creates a SoundPlayer instance - * @param {string} path Path to sound file - * @param {Duck.Types.Sound.Config} [options] Sound Configuration - * @since 1.0.0-beta - */ - constructor(path: string, options?: Duck.Types.Sound.Config) { - this.path = path; - this.element = document.createElement('audio'); - - this.element.className = 'duckengine-audio-sound'; - this.element.style.display = 'none'; - this.element.controls = false; - this.element.src = this.path; - this.element.volume = options?.volume || 1; - this.element.autoplay = options?.autoplay || false; - this.element.loop = options?.loop || false; - - if (options?.volume === 0) { - this.mute(); - } - - this.sprites = options?.sprites || []; - - document.body.appendChild(this.element); - } - - /** - * @memberof Sound - * @description Plays the audio - * @since 1.0.0-beta - */ - public play() { - this.element.play(); - } - - /** - * @memberof Sound - * @description Pauses the audio - * @since 1.0.0-beta - */ - public pause() { - this.element.pause(); - } - - /** - * @memberof Sound - * @description Mutes the audio - * @since 1.1.0 - */ - public mute() { - this.element.muted = true; - } - - /** - * @memberof Sound - * @description Unmutes the audio - * @since 1.1.0 - */ - public unmute() { - this.element.muted = false; - } - - /** - * @memberof Sound - * @description Pauses the audio, alias to SoundPlayer.pause - * @since 2.1.0 - */ - public stop() { - this.pause(); - } - - /** - * @memberof Sound - * @description Sets the loop of the audio - * @since 2.1.0 - */ - public loop(loop = true) { - this.element.loop = loop; - } - - /** - * @memberof Sound - * @description Seeks the audio - * @param {number} timeInSeconds Time in seconds to seek to - * @since 1.0.0-beta - */ - public seek(timeInSeconds: number) { - this.element.currentTime = timeInSeconds; - } - - /** - * @memberof Sound - * @description Restarts the audio - * @since 1.0.0-beta - */ - public restart() { - this.seek(0); - } - - /** - * @memberof Sound - * @description Sets the volume of the audio - * @since 1.0.0-beta - */ - public setVolume(volume: number) { - this.element.volume = volume; - } - - /** - * @memberof Sound - * @description Gets the duration of the sound - * @since 1.0.0-beta - */ - public get duration() { - return this.element.duration; - } - - /** - * @memberof Sound - * @description Gets the playing state of the sound - * @since 1.0.0-beta - */ - public get isPlaying() { - return !this.element.paused; - } - - /** - * @memberof Sound - * @description Gets the volume of the sound - * @since 1.0.0-beta - */ - public get volume() { - return this.element.volume; - } - - /** - * @memberof Sound - * @description Gets the mute state of the sound - * @since 1.0.0-beta - */ - public get isMuted() { - return this.element.muted; - } - - /** - * @memberof Sound - * @description Plays a sound sprite based on the key - * @param {string} key Key of the sound sprite - * @since 1.0.0-beta - */ - public playSprite(key: string) { - const foundSprite = this.sprites.find((_sprite) => _sprite.key === key); - - if (foundSprite) { - this.seek(foundSprite.startSeconds); - - if (!this.isPlaying) { - this.play(); - } - - const int = setInterval(() => { - if (foundSprite) { - if (this.element.currentTime >= foundSprite.endSeconds) { - clearInterval(int); - this.pause(); - this.restart(); - } - } - }, 1000); - } else { - new Debug.Error(`Cannot find sound sprite with key: "${key}".`); - } - } - - /** - * @memberof Sound - * @description Sets the audio src/path - * @param {string} path Audio src/path - * @since 1.0.0-beta - */ - public setPath(path: string) { - this.path = path; - this.element.src = this.path; - } -} diff --git a/src/core/storage/cacheManager.ts b/src/core/storage/cacheManager.ts index db77fd7f..e1f72071 100644 --- a/src/core/storage/cacheManager.ts +++ b/src/core/storage/cacheManager.ts @@ -8,133 +8,133 @@ import Debug from '../debug/debug'; * @since 2.0.0 */ export default class CacheManager { - protected cache: { - [key: string]: string; - }; + protected cache: { + [key: string]: string; + }; - /** - * @memberof CacheManager - * @description Added start of every key that is stored in the localStorage, defaults to "DuckEngine_CacheManager_${key}" - * @type string - * @since 2.0.0 - */ - public storageIdentifier: string; + /** + * @memberof CacheManager + * @description Added start of every key that is stored in the localStorage, defaults to "DuckEngine_CacheManager_${key}" + * @type string + * @since 2.0.0 + */ + public storageIdentifier: string; - /** - * @constructor CacheManager - * @description Creates a CacheManager instance - * @since 2.0.0 - */ - constructor() { - this.cache = {}; - this.storageIdentifier = 'DuckEngine_CacheManager_'; + /** + * @constructor CacheManager + * @description Creates a CacheManager instance + * @since 2.0.0 + */ + constructor() { + this.cache = {}; + this.storageIdentifier = 'DuckEngine_CacheManager_'; - this.sync(); - } + this.sync(); + } - public sync() { - this.cache = { ...localStorage }; - } + public sync() { + this.cache = { ...localStorage }; + } - /** - * @memberof CacheManager - * @description Sets a Key-Value pair in the memory-cache and storage - * @param {string} name Name/Key to save the value to - * @param {string} value Value to save to the Name/Key - * @since 2.0.0 - */ - public set(name: string, value: string) { - this.cache[name] = value; - localStorage.setItem(`${this.storageIdentifier}${name}`, value); - } + /** + * @memberof CacheManager + * @description Sets a Key-Value pair in the memory-cache and storage + * @param {string} name Name/Key to save the value to + * @param {string} value Value to save to the Name/Key + * @since 2.0.0 + */ + public set(name: string, value: string) { + this.cache[name] = value; + localStorage.setItem(`${this.storageIdentifier}${name}`, value); + } - /** - * @memberof CacheManager - * @description Gets a value from a Name/Key from the storage or memory-cache - * @param {string} name Name/Key to get the value from - * @returns {string} - * @since 2.0.0 - */ - public get(name: string): string | undefined | null { - return ( - localStorage.getItem(`${this.storageIdentifier}${name}`) || - this.cache[name] - ); - } + /** + * @memberof CacheManager + * @description Gets a value from a Name/Key from the storage or memory-cache + * @param {string} name Name/Key to get the value from + * @returns {string} + * @since 2.0.0 + */ + public get(name: string): string | undefined | null { + return ( + localStorage.getItem(`${this.storageIdentifier}${name}`) || + this.cache[name] + ); + } - /** - * @memberof CacheManager - * @description Deletes a Key-Value pair from the memory-cache and storage - * @param {string} name Name/Key to use to delete the pair - * @since 2.0.0 - */ - public delete(name: string) { - if (this.has(name)) { - delete this.cache[name]; - localStorage.removeItem(`${this.storageIdentifier}${name}`); - } else { - new Debug.Error( - `CacheManager: Cannot delete from values with name "${name}". "${name}" does not exist as an entry.` - ); - } - } + /** + * @memberof CacheManager + * @description Deletes a Key-Value pair from the memory-cache and storage + * @param {string} name Name/Key to use to delete the pair + * @since 2.0.0 + */ + public delete(name: string) { + if (this.has(name)) { + delete this.cache[name]; + localStorage.removeItem(`${this.storageIdentifier}${name}`); + } else { + new Debug.Error( + `CacheManager: Cannot delete from values with name "${name}". "${name}" does not exist as an entry.` + ); + } + } - /** - * @memberof CacheManager - * @description Gets a Key-Value pair from the storage or memory-cache and returns based on if it exists or not - * @param {string} name Name/Key to save the value to - * @since 2.0.0 - */ - public has(name: string): boolean { - const e = - localStorage.getItem(`${this.storageIdentifier}${name}`) || - this.cache[name]; + /** + * @memberof CacheManager + * @description Gets a Key-Value pair from the storage or memory-cache and returns based on if it exists or not + * @param {string} name Name/Key to save the value to + * @since 2.0.0 + */ + public has(name: string): boolean { + const e = + localStorage.getItem(`${this.storageIdentifier}${name}`) || + this.cache[name]; - return e ? true : false; - } + return e ? true : false; + } - /** - * @memberof CacheManager - * @description Returns the keys from the memory-cache - * @returns {string[]} - * @since 2.0.0 - */ - public keys() { - return Object.keys(this.cache); - } + /** + * @memberof CacheManager + * @description Returns the keys from the memory-cache + * @returns {string[]} + * @since 2.0.0 + */ + public keys() { + return Object.keys(this.cache); + } - /** - * @memberof CacheManager - * @description Returns the values from the memory-cache - * @returns {string[]} - * @since 2.0.0 - */ - public values() { - return Object.values(this.cache); - } + /** + * @memberof CacheManager + * @description Returns the values from the memory-cache + * @returns {string[]} + * @since 2.0.0 + */ + public values() { + return Object.values(this.cache); + } - /** - * @memberof CacheManager - * @description Loops through each entry in the memory-cache - * @param { (key:string,value:string) => any } cb Callback function - * @since 2.0.0 - */ - public each(cb: (key: string, value: string) => any) { - for (const key in this.cache) { - if (Object.prototype.hasOwnProperty.call(this.cache, key)) { - cb(key, this.cache[key]); - } - } - } + /** + * @memberof CacheManager + * @description Loops through each entry in the memory-cache + * @param { (key:string,value:string) => any } cb Callback function + * @since 2.0.0 + */ + public each(cb: (key: string, value: string) => any) { + for (const key in this.cache) { + if (Object.prototype.hasOwnProperty.call(this.cache, key)) { + cb(key, this.cache[key]); + } + } + } - /** - * @memberof CacheManager - * @description Returns the memory-cache entries as an object, calls CacheManager.sync - * @returns {{[key: string]: string}} - * @since 2.0.0 - */ - public get entries() { - this.sync(); - return this.cache; - } + /** + * @memberof CacheManager + * @description Returns the memory-cache entries as an object, calls CacheManager.sync + * @returns {{[key: string]: string}} + * @since 2.0.0 + */ + public get entries() { + this.sync(); + return this.cache; + } } diff --git a/src/core/texture/texture.ts b/src/core/texture/texture.ts index 330928c6..0348a10e 100644 --- a/src/core/texture/texture.ts +++ b/src/core/texture/texture.ts @@ -1,5 +1,6 @@ import { Duck } from '../..'; import TextureBase from './textureBase'; +import Color from '../renderer/models/color'; /** * @class Texture @@ -10,33 +11,33 @@ import TextureBase from './textureBase'; * @since 2.0.0 */ export default class Texture< - type extends Duck.Types.Texture.Type + type extends Duck.Types.Texture.Type > extends TextureBase { - /** - * @constructor Texture - * @description Creates a texture - * @param {Duck.Types.Texture.Type} type Texture type - * @param {HTMLImageElement:string} texture Texture source - * @param {number} w Width of texture - * @param {number} h Height of texture - * @since 2.0.0 - */ - constructor( - type: Duck.Types.Texture.Type, - texture: type extends 'image' - ? HTMLImageElement - : type extends 'either' - ? string | HTMLImageElement - : string, - w: number, - h: number - ) { - if (type === 'image') { - super('image', 'base', texture as HTMLImageElement, w, h); - } else if (type === 'color') { - super('color', 'base', texture as string, w, h); - } else { - super('either', 'base', texture, w, h); - } - } + /** + * @constructor Texture + * @description Creates a texture + * @param {Duck.Types.Texture.Type} type Texture type + * @param {HTMLImageElement | Color} texture Texture source + * @param {number} w Width of texture + * @param {number} h Height of texture + * @since 2.0.0 + */ + constructor( + type: Duck.Types.Texture.Type, + texture: type extends 'image' + ? HTMLImageElement + : type extends 'either' + ? Color | HTMLImageElement + : Color, + w: number, + h: number + ) { + if (type === 'image') { + super('image', 'base', texture as HTMLImageElement, w, h); + } else if (type === 'color') { + super('color', 'base', texture as Color, w, h); + } else { + super('either', 'base', texture, w, h); + } + } } diff --git a/src/core/texture/textureAtlas.ts b/src/core/texture/textureAtlas.ts index 077a3715..7e2f3907 100644 --- a/src/core/texture/textureAtlas.ts +++ b/src/core/texture/textureAtlas.ts @@ -8,102 +8,97 @@ import Texture from './texture'; import TextureBase from './textureBase'; export default class TextureAtlas extends TextureBase<'image'> { - public game: Game; - public scene: Scene; + public game: Game; + public scene: Scene; - public json: Duck.Types.TextureAtlas.JSONSchema; + public json: Duck.Types.TextureAtlas.JSONSchema; - constructor( - textureKey: string, - jsonKey: string, - w: number, - h: number, - game: Game, - scene: Scene - ) { - super( - 'image', - 'atlas', - scene.loader.textureStack.find((image) => image.key === textureKey)! - .value.texture, - w, - h - ); - this.game = game; - this.scene = scene; + constructor( + textureKey: string, + jsonKey: string, + w: number, + h: number, + game: Game, + scene: Scene + ) { + super( + 'image', + 'atlas', + scene.loader.textureStack.find((image) => image.key === textureKey)!.value + .texture, + w, + h + ); + this.game = game; + this.scene = scene; - this.json = scene.loader.jsonStack.find((json) => json.key === jsonKey)! - .value as unknown as Duck.Types.TextureAtlas.JSONSchema; + this.json = scene.loader.jsonStack.find((json) => json.key === jsonKey)! + .value as unknown as Duck.Types.TextureAtlas.JSONSchema; - this.validateJSON(); - } + this.validateJSON(); + } - protected validateJSON() { - if (this.json) { - if ('name' in this.json && 'data' in this.json) { - if (typeof this.json.name !== 'string') { - new Debug.Error( - 'Invalid TextureAtlas JSON. "name" must be a string' - ); - return; - } - if (!Array.isArray(this.json.data)) { - new Debug.Error( - 'Invalid TextureAtlas JSON. "data" must be an array' - ); - return; - } - } else { - new Debug.Error( - 'Invalid TextureAtlas JSON. "name" or "data" may be missing' - ); - return; - } + protected validateJSON() { + if (this.json) { + if ('name' in this.json && 'data' in this.json) { + if (typeof this.json.name !== 'string') { + new Debug.Error('Invalid TextureAtlas JSON. "name" must be a string'); + return; + } + if (!Array.isArray(this.json.data)) { + new Debug.Error('Invalid TextureAtlas JSON. "data" must be an array'); + return; + } + } else { + new Debug.Error( + 'Invalid TextureAtlas JSON. "name" or "data" may be missing' + ); + return; + } - this.parseJSON(); - } else { - new Debug.Error( - 'Cannot find JSON using the passed key. Make sure you preloaded the json before using the key' - ); - return; - } - } + this.parseJSON(); + } else { + new Debug.Error( + 'Cannot find JSON using the passed key. Make sure you preloaded the json before using the key' + ); + return; + } + } - protected parseJSON() { - this.json.data.forEach((frameData) => { - clipImage( - this.texture, - frameData.x, - frameData.y, - frameData.w, - frameData.h, - (image) => { - const texture = new Texture<'image'>( - 'image', - image, - frameData.w, - frameData.h - ); + protected parseJSON() { + this.json.data.forEach((frameData) => { + clipImage( + this.texture, + frameData.x, + frameData.y, + frameData.w, + frameData.h, + (image) => { + const texture = new Texture<'image'>( + 'image', + image, + frameData.w, + frameData.h + ); - this.scene.loader.textureStack.push({ - type: 'texture', - value: texture, - key: frameData.key, - dataType: 'base', - }); - }, - () => { - new Debug.Error( - 'Failed to clip and create image frame from texture atlas whilst parsing json. Unknown error occurred, report this bug' - ); - } - ); - }); - } + this.scene.loader.textureStack.push({ + type: 'texture', + value: texture, + key: frameData.key, + dataType: 'base', + }); + }, + () => { + new Debug.Error( + 'Failed to clip and create image frame from texture atlas whilst parsing json. Unknown error occurred, report this bug' + ); + } + ); + }); + } - public get(key: string): Texture<'image'> | undefined { - return this.scene.loader.textureStack.find( - (texture) => texture.key === key - )?.value; - } + public get(key: string): Texture<'image'> | undefined { + return this.scene.loader.textureStack.find((texture) => texture.key === key) + ?.value; + } } diff --git a/src/core/texture/textureBase.ts b/src/core/texture/textureBase.ts index bf10380f..aab3143b 100644 --- a/src/core/texture/textureBase.ts +++ b/src/core/texture/textureBase.ts @@ -1,225 +1,236 @@ import { Duck } from '../..'; +import hexNumberToString from '../../utils/hexNumberToString'; import uniqueID from '../../utils/uniqueID'; import Vector2 from '../math/vector2'; +import Color from '../renderer/models/color'; export default class TextureBase { - /** - * @memberof TextureBase - * @description The unique identifier for the texture - * @type string - * @since 2.1.0 - */ - public readonly id: string; - - /** - * @memberof TextureBase - * @description The type of texture source, 'image' | 'color' | 'either' - * @type Duck.Types.Texture.Type - * @since 2.1.0 - */ - public readonly type: Duck.Types.Texture.Type; - - /** - * @memberof TextureBase - * @description The data type of texture, 'sheet' | 'base' | 'atlas' | 'list' - * @type Duck.Types.Texture.DataType - * @since 2.1.0 - */ - public readonly dataType: Duck.Types.Texture.DataType; - - /** - * @memberof TextureBase - * @description The texture itself, can be an image or color - * @type HTMLImageElement | string - * @since 2.1.0 - */ - public texture: type extends 'image' - ? HTMLImageElement - : type extends 'either' - ? string | HTMLImageElement - : string; - - /** - * @memberof Texture - * @description The scale of the texture - * @type Vector2 - * @since 2.1.0 - */ - public scale: Vector2; - - /** - * @constructor Texture - * @description Creates an image texture - * @param {'image'} type Texture type - * @param {HTMLImageElement} texture Texture source - * @param {number} w Width of texture - * @param {number} h Height of texture - * @since 2.1.0 - */ - constructor( - type: 'image', - dataType: Duck.Types.Texture.DataType, - texture: HTMLImageElement, - w: number, - h: number - ); - - /** - * @constructor Texture - * @description Creates a color texture - * @param {'color'} type Texture type - * @param {string} texture Texture source - * @param {number} w Width of texture - * @param {number} h Height of texture - * @since 2.1.0 - */ - constructor( - type: 'color', - dataType: Duck.Types.Texture.DataType, - texture: string, - w: number, - h: number - ); - - /** - * @constructor Texture - * @description Creates a color or image texture - * @param {'either'} type Texture type - * @param {HTMLImageElement | string} texture Texture source - * @param {number} w Width of texture - * @param {number} h Height of texture - * @since 2.1.0 - */ - constructor( - type: 'either', - dataType: Duck.Types.Texture.DataType, - texture: HTMLImageElement | string, - w: number, - h: number - ); - - /** - * @constructor Texture - * @description Creates a texture - * @param {Duck.Types.Texture.Type} type Texture type - * @param {HTMLImageElement:string} texture Texture source - * @param {number} w Width of texture - * @param {number} h Height of texture - * @since 2.1.0 - */ - constructor( - type: Duck.Types.Texture.Type, - dataType: Duck.Types.Texture.DataType, - texture: type extends 'image' - ? HTMLImageElement - : type extends 'either' - ? string | HTMLImageElement - : string, - w: number, - h: number - ) { - this.id = uniqueID(); - this.type = type; - this.dataType = dataType; - - this.texture = texture; - this.scale = new Vector2(w, h); - - if (this.type === 'image') { - (this.texture as HTMLImageElement).width = this.scale.x; - (this.texture as HTMLImageElement).height = this.scale.y; - } - } - - /** - * @memberof Texture - * @description Sets the Texture Scale - * @param {Duck.Types.Misc.Scale} scale New scale of the texture - * @since 2.1.0 - */ - public setScale(scale: Duck.Types.Misc.Scale) { - this.scale = new Vector2(scale.width, scale.height); - - if (this.type === 'image') { - (this.texture as HTMLImageElement).width = this.scale.x; - (this.texture as HTMLImageElement).height = this.scale.y; - } - - return this.scale; - } - - /** - * @memberof Texture - * @description Sets the Texture Image Path if the type is image - * @param {string} imagePath New imagePath of the texture - * @since 2.1.0 - */ - public setImagePath(imagePath: string) { - if (this.type === 'image') { - (this.texture as HTMLImageElement).src = imagePath; - } - } - - /** - * @memberof Texture - * @description Sets the Texture color if the type is color - * @param {string} color New color of the texture - * @since 2.1.0 - */ - public setFillColor(color: string | number) { - if (this.type === 'color') { - (this.texture as string | number) = color; - } - } - - /** - * @memberof TextureBase - * @description Creates a new TextureBase instance from a color - * @param {string} color Color - * @param {number} w Width - * @param {number} h Height - * @static - * @returns {TextureBase<'color'>} - * @since 2.1.0 - */ - public static fromColor(color: string, w: number, h: number) { - return new TextureBase<'color'>('color', 'base', color, w, h); - } - - /** - * @memberof TextureBase - * @description Creates a new TextureBase instance from an image path - * @param {string} imgpath Image path - * @param {number} w Width - * @param {number} h Height - * @static - * @returns {TextureBase<'image'>} - * @since 2.1.0 - */ - public static fromTexture(imgpath: string, w: number, h: number) { - const img = new Image(w, h); - img.src = imgpath; - - return new TextureBase<'image'>('image', 'base', img, w, h); - } - - /** - * @memberof TextureBase - * @description Creates a new TextureBase instance from a color or an image path - * @param {string} fillColorOrIMGPath Color or Image path - * @param {number} w Width - * @param {number} h Height - * @static - * @returns {TextureBase<'either'>} - * @since 2.1.0 - */ - public static fromEither(fillColorOrIMGPath: string, w: number, h: number) { - return new TextureBase<'either'>( - 'either', - 'base', - fillColorOrIMGPath, - w, - h - ); - } + /** + * @memberof TextureBase + * @description The unique identifier for the texture + * @type string + * @since 2.1.0 + */ + public readonly id: string; + + /** + * @memberof TextureBase + * @description The type of texture source, 'image' | 'color' | 'either' + * @type Duck.Types.Texture.Type + * @since 2.1.0 + */ + public readonly type: Duck.Types.Texture.Type; + + /** + * @memberof TextureBase + * @description The data type of texture, 'sheet' | 'base' | 'atlas' | 'list' + * @type Duck.Types.Texture.DataType + * @since 2.1.0 + */ + public readonly dataType: Duck.Types.Texture.DataType; + + /** + * @memberof TextureBase + * @description The texture itself, can be an image or color + * @type HTMLImageElement | Color + * @since 2.1.0 + */ + public texture: type extends 'image' + ? HTMLImageElement + : type extends 'either' + ? Color | HTMLImageElement + : Color; + + /** + * @memberof Texture + * @description The scale of the texture + * @type Vector2 + * @since 2.1.0 + */ + public scale: Vector2; + + /** + * @constructor Texture + * @description Creates an image texture + * @param {'image'} type Texture type + * @param {Duck.Types.Texture.DataType} dataType Texture DataType, ex: sheet, base, atlas + * @param {HTMLImageElement} texture Texture source + * @param {number} w Width of texture + * @param {number} h Height of texture + * @since 2.1.0 + */ + constructor( + type: 'image', + dataType: Duck.Types.Texture.DataType, + texture: HTMLImageElement, + w: number, + h: number + ); + + /** + * @constructor Texture + * @description Creates a color texture + * @param {'color'} type Texture type + * @param {Duck.Types.Texture.DataType} dataType Texture DataType, ex: sheet, base, atlas + * @param {Color} texture Texture source + * @param {number} w Width of texture + * @param {number} h Height of texture + * @since 2.1.0 + */ + constructor( + type: 'color', + dataType: Duck.Types.Texture.DataType, + texture: Color, + w: number, + h: number + ); + + /** + * @constructor Texture + * @description Creates a color or image texture + * @param {'either'} type Texture type + * @param {Duck.Types.Texture.DataType} dataType Texture DataType, ex: sheet, base, atlas + * @param {HTMLImageElement | Color | string} texture Texture source + * @param {number} w Width of texture + * @param {number} h Height of texture + * @since 2.1.0 + */ + constructor( + type: 'either', + dataType: Duck.Types.Texture.DataType, + texture: HTMLImageElement | Color | string, + w: number, + h: number + ); + + /** + * @constructor Texture + * @description Creates a texture + * @param {Duck.Types.Texture.Type} type Texture type + * @param {Duck.Types.Texture.DataType} dataType Texture DataType, ex: sheet, base, atlas + * @param {HTMLImageElement | Color} texture Texture source + * @param {number} w Width of texture + * @param {number} h Height of texture + * @since 2.1.0 + */ + constructor( + type: Duck.Types.Texture.Type, + dataType: Duck.Types.Texture.DataType, + texture: type extends 'image' + ? HTMLImageElement + : type extends 'either' + ? Color | HTMLImageElement + : Color, + w: number, + h: number + ) { + this.id = uniqueID(); + this.type = type; + this.dataType = dataType; + + this.texture = texture; + this.scale = new Vector2(w, h); + + if (this.type === 'image') { + (this.texture as HTMLImageElement).width = this.scale.x; + (this.texture as HTMLImageElement).height = this.scale.y; + } + } + + /** + * @memberof Texture + * @description Sets the Texture Scale + * @param {Duck.Types.Misc.Scale} scale New scale of the texture + * @since 2.1.0 + */ + public setScale(scale: Duck.Types.Misc.Scale) { + this.scale = new Vector2(scale.width, scale.height); + + if (this.type === 'image') { + (this.texture as HTMLImageElement).width = this.scale.x; + (this.texture as HTMLImageElement).height = this.scale.y; + } + + return this.scale; + } + + /** + * @memberof Texture + * @description Sets the Texture Image Path if the type is image + * @param {string} imagePath New imagePath of the texture + * @since 2.1.0 + */ + public setImagePath(imagePath: string) { + if (this.type === 'image') { + (this.texture as HTMLImageElement).src = imagePath; + } + } + + /** + * @memberof Texture + * @description Sets the Texture color if the type is color + * @param {string} color New color of the texture + * @since 2.1.0 + */ + public setFillColor(color: string | number) { + if (this.type === 'color') { + typeof color === 'number' ? (color = hexNumberToString(color)) : color; + (this.texture as Color).value = color; + } + } + + /** + * @memberof TextureBase + * @description Creates a new TextureBase instance from a color + * @param {Color} color Color + * @param {number} w Width + * @param {number} h Height + * @static + * @returns {TextureBase<'color'>} + * @since 2.1.0 + */ + public static fromColor(color: Color, w: number, h: number) { + return new TextureBase<'color'>('color', 'base', color, w, h); + } + + /** + * @memberof TextureBase + * @description Creates a new TextureBase instance from an image path + * @param {string} imgpath Image path + * @param {number} w Width + * @param {number} h Height + * @static + * @returns {TextureBase<'image'>} + * @since 2.1.0 + */ + public static fromTexture(imgpath: string, w: number, h: number) { + const img = new Image(w, h); + img.src = imgpath; + + return new TextureBase<'image'>('image', 'base', img, w, h); + } + + /** + * @memberof TextureBase + * @description Creates a new TextureBase instance from a color or an image path + * @param {string | Color} fillColorOrIMGPath Color or Image path + * @param {number} w Width + * @param {number} h Height + * @static + * @returns {TextureBase<'either'>} + * @since 2.1.0 + */ + public static fromEither( + fillColorOrIMGPath: string | Color, + w: number, + h: number + ) { + return new TextureBase<'either'>( + 'either', + 'base', + fillColorOrIMGPath, + w, + h + ); + } } diff --git a/src/core/texture/textureSheet.ts b/src/core/texture/textureSheet.ts index ea992b80..809ab5b6 100644 --- a/src/core/texture/textureSheet.ts +++ b/src/core/texture/textureSheet.ts @@ -1,24 +1,24 @@ import TextureBase from './textureBase'; export default class TextureSheet extends TextureBase<'image'> { - public readonly frameWidth: number | undefined; - public readonly frameHeight: number | undefined; + public readonly frameWidth: number | undefined; + public readonly frameHeight: number | undefined; - public readonly rows: number | undefined; - public readonly cols: number | undefined; + public readonly rows: number | undefined; + public readonly cols: number | undefined; - constructor( - texture: HTMLImageElement, - frameWidth: number, - frameHeight: number, - rows: number, - cols: number - ) { - super('image', 'sheet', texture, frameWidth, frameHeight); + constructor( + texture: HTMLImageElement, + frameWidth: number, + frameHeight: number, + rows: number, + cols: number + ) { + super('image', 'sheet', texture, frameWidth, frameHeight); - this.frameWidth = frameWidth; - this.frameHeight = frameHeight; - this.rows = rows; - this.cols = cols; - } + this.frameWidth = frameWidth; + this.frameHeight = frameHeight; + this.rows = rows; + this.cols = cols; + } } diff --git a/src/helper/color/convertColorToRGBA.ts b/src/helper/color/convertColorToRGBA.ts index 3ccceb21..8fddc2b8 100644 --- a/src/helper/color/convertColorToRGBA.ts +++ b/src/helper/color/convertColorToRGBA.ts @@ -7,25 +7,22 @@ import isHSL from './isHSL'; import isRGB from './isRGB'; import rgbToRGBA from './rgbToRGBA'; -export default function convertColorToRGBA( - color: string, - alpha: Duck.Types.Helper.AlphaRange -) { - let res = ''; +export default function convertColorToRGBA(color: string, alpha: number) { + let res = ''; - if (isHex(color)) { - res = hexToRGBA(color, alpha); - } + if (isHex(color)) { + res = hexToRGBA(color, alpha); + } - if (isRGB(color)) { - res = rgbToRGBA(color, alpha); - } + if (isRGB(color)) { + res = rgbToRGBA(color, alpha); + } - if (isHSL(color)) { - const values = getValuesHSL(color); - const a = hslToRGB(values[0], values[1], values[2]); - res = rgbToRGBA(a, alpha); - } + if (isHSL(color)) { + const values = getValuesHSL(color); + const a = hslToRGB(values[0], values[1], values[2]); + res = rgbToRGBA(a, alpha); + } - return res; + return res; } diff --git a/src/helper/color/getValuesHSL.ts b/src/helper/color/getValuesHSL.ts index 88b48ced..8d6d7706 100644 --- a/src/helper/color/getValuesHSL.ts +++ b/src/helper/color/getValuesHSL.ts @@ -1,9 +1,9 @@ export default function getValuesHSL(hsl: string): string[] { - let res = hsl - .substring(4, hsl.length - 1) - .replace(/ /g, '') - .replace(/%/g, '') - .split(','); + let res = hsl + .substring(4, hsl.length - 1) + .replace(/ /g, '') + .replace(/%/g, '') + .split(','); - return res; + return res; } diff --git a/src/helper/color/getValuesRGB.ts b/src/helper/color/getValuesRGB.ts index 8380a875..0ae80990 100644 --- a/src/helper/color/getValuesRGB.ts +++ b/src/helper/color/getValuesRGB.ts @@ -1,8 +1,8 @@ export default function getValuesRGB(rgb: string | any): number[] { - rgb = rgb - .substring(4, rgb.length - 1) - .replace(/ /g, '') - .split(','); + rgb = rgb + .substring(4, rgb.length - 1) + .replace(/ /g, '') + .split(','); - return (rgb as string[]).map((str: string) => parseInt(str)); + return (rgb as string[]).map((str: string) => parseInt(str)); } diff --git a/src/helper/color/hexToHSL.ts b/src/helper/color/hexToHSL.ts index dc47a046..91515b62 100644 --- a/src/helper/color/hexToHSL.ts +++ b/src/helper/color/hexToHSL.ts @@ -1,41 +1,41 @@ export default function hexToHSL(hex: string) { - // Convert hex to RGB first - let r: any = 0, - g: any = 0, - b: any = 0; - if (hex.length === 4) { - r = '0x' + hex[1] + hex[1]; - g = '0x' + hex[2] + hex[2]; - b = '0x' + hex[3] + hex[3]; - } else if (hex.length === 7) { - r = '0x' + hex[1] + hex[2]; - g = '0x' + hex[3] + hex[4]; - b = '0x' + hex[5] + hex[6]; - } - // Then to HSL - r /= 255; - g /= 255; - b /= 255; - let cmin = Math.min(r, g, b), - cmax = Math.max(r, g, b), - delta = cmax - cmin, - h = 0, - s = 0, - l = 0; + // Convert hex to RGB first + let r: any = 0, + g: any = 0, + b: any = 0; + if (hex.length === 4) { + r = '0x' + hex[1] + hex[1]; + g = '0x' + hex[2] + hex[2]; + b = '0x' + hex[3] + hex[3]; + } else if (hex.length === 7) { + r = '0x' + hex[1] + hex[2]; + g = '0x' + hex[3] + hex[4]; + b = '0x' + hex[5] + hex[6]; + } + // Then to HSL + r /= 255; + g /= 255; + b /= 255; + let cmin = Math.min(r, g, b), + cmax = Math.max(r, g, b), + delta = cmax - cmin, + h = 0, + s = 0, + l = 0; - if (delta === 0) h = 0; - else if (cmax === r) h = ((g - b) / delta) % 6; - else if (cmax === g) h = (b - r) / delta + 2; - else h = (r - g) / delta + 4; + if (delta === 0) h = 0; + else if (cmax === r) h = ((g - b) / delta) % 6; + else if (cmax === g) h = (b - r) / delta + 2; + else h = (r - g) / delta + 4; - h = Math.round(h * 60); + h = Math.round(h * 60); - if (h < 0) h += 360; + if (h < 0) h += 360; - l = (cmax + cmin) / 2; - s = delta === 0 ? 0 : delta / (1 - Math.abs(2 * l - 1)); - s = +(s * 100).toFixed(1); - l = +(l * 100).toFixed(1); + l = (cmax + cmin) / 2; + s = delta === 0 ? 0 : delta / (1 - Math.abs(2 * l - 1)); + s = +(s * 100).toFixed(1); + l = +(l * 100).toFixed(1); - return 'hsl(' + h + ',' + s + '%,' + l + '%)'; + return 'hsl(' + h + ',' + s + '%,' + l + '%)'; } diff --git a/src/helper/color/hexToRGB.ts b/src/helper/color/hexToRGB.ts index 58dd23aa..0fd85f0d 100644 --- a/src/helper/color/hexToRGB.ts +++ b/src/helper/color/hexToRGB.ts @@ -1,15 +1,15 @@ export default function hexToRGB(hex: string) { - var shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; - hex = hex.replace(shorthandRegex, function (m, r, g, b) { - return r + r + g + g + b + b; - }); + var shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; + hex = hex.replace(shorthandRegex, function (m, r, g, b) { + return r + r + g + g + b + b; + }); - var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); + var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); - return result - ? `rgb(${parseInt(result[1], 16)},${parseInt(result[2], 16)},${parseInt( - result[3], - 16 - )})` - : null; + return result + ? `rgb(${parseInt(result[1], 16)},${parseInt(result[2], 16)},${parseInt( + result[3], + 16 + )})` + : null; } diff --git a/src/helper/color/hexToRGBA.ts b/src/helper/color/hexToRGBA.ts index cff7259d..d5e03f51 100644 --- a/src/helper/color/hexToRGBA.ts +++ b/src/helper/color/hexToRGBA.ts @@ -2,19 +2,16 @@ import { Duck } from '../../index'; import Debug from '../../core/debug/debug'; import isHex from './isHex'; -export default function hexToRGBA( - hex: string, - alpha: Duck.Types.Helper.AlphaRange -) { - if (isHex(hex)) { - hex = hex.replace('#', ''); - if (hex.length === 3) { - hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2]; - } - const [r, g, b] = hex.match(/\w\w/g)!.map((x) => parseInt(x, 16)); - return `rgba(${r},${g},${b},${alpha})`; - } else { - new Debug.Error('Cannot convert hex to RGBA. Invalid hex.'); - return 'rgba(0, 0, 0, 1)'; - } +export default function hexToRGBA(hex: string, alpha: number) { + if (isHex(hex)) { + hex = hex.replace('#', ''); + if (hex.length === 3) { + hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2]; + } + const [r, g, b] = hex.match(/\w\w/g)!.map((x) => parseInt(x, 16)); + return `rgba(${r},${g},${b},${alpha})`; + } else { + new Debug.Error('Cannot convert hex to RGBA. Invalid hex.'); + return 'rgba(0, 0, 0, 1)'; + } } diff --git a/src/helper/color/hslToRGB.ts b/src/helper/color/hslToRGB.ts index 0de61975..048a42b1 100644 --- a/src/helper/color/hslToRGB.ts +++ b/src/helper/color/hslToRGB.ts @@ -1,34 +1,34 @@ export default function hslToRGB( - h: number | string, - s: number | string, - l: number | string + h: number | string, + s: number | string, + l: number | string ) { - let r, g, b; + let r, g, b; - h = parseInt(h as string); - s = parseInt(s as string); - l = parseInt(l as string); + h = parseInt(h as string); + s = parseInt(s as string); + l = parseInt(l as string); - if (s === 0) { - r = g = b = l; // achromatic - } else { - const hue2rgb = function hue2rgb(p: number, q: number, t: number) { - if (t < 0) t += 1; - if (t > 1) t -= 1; - if (t < 1 / 6) return p + (q - p) * 6 * t; - if (t < 1 / 2) return q; - if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6; - return p; - }; + if (s === 0) { + r = g = b = l; // achromatic + } else { + const hue2rgb = function hue2rgb(p: number, q: number, t: number) { + if (t < 0) t += 1; + if (t > 1) t -= 1; + if (t < 1 / 6) return p + (q - p) * 6 * t; + if (t < 1 / 2) return q; + if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6; + return p; + }; - const q = l < 0.5 ? l * (1 + s) : l + s - l * s; - const p = 2 * l - q; - r = hue2rgb(p, q, h + 1 / 3); - g = hue2rgb(p, q, h); - b = hue2rgb(p, q, h - 1 / 3); - } + const q = l < 0.5 ? l * (1 + s) : l + s - l * s; + const p = 2 * l - q; + r = hue2rgb(p, q, h + 1 / 3); + g = hue2rgb(p, q, h); + b = hue2rgb(p, q, h - 1 / 3); + } - return `rgb(${Math.round(r * 255)}, ${Math.round(g * 255)}, ${Math.round( - b * 255 - )})`; + return `rgb(${Math.round(r * 255)}, ${Math.round(g * 255)}, ${Math.round( + b * 255 + )})`; } diff --git a/src/helper/color/hslaToRGBA.ts b/src/helper/color/hslaToRGBA.ts index d797e36a..9c2d4f1a 100644 --- a/src/helper/color/hslaToRGBA.ts +++ b/src/helper/color/hslaToRGBA.ts @@ -2,18 +2,17 @@ import { Duck } from '../../index'; import hslToRGB from './hslToRGB'; export default function hslaToRGBA( - h: number | string, - s: number | string, - l: number | string, - alpha: Duck.Types.Helper.AlphaRange + h: number | string, + s: number | string, + l: number | string, + alpha: number ) { - h = parseInt(h as string); - l = parseInt(l as string); - s = parseInt(s as string); + h = parseInt(h as string); + l = parseInt(l as string); + s = parseInt(s as string); - const rgb = hslToRGB(h / 360, s / 100, l / 100), - rgba = - 'rgba(' + rgb[0] + ',' + rgb[1] + ',' + rgb[2] + ',' + alpha + ')'; + const rgb = hslToRGB(h / 360, s / 100, l / 100), + rgba = 'rgba(' + rgb[0] + ',' + rgb[1] + ',' + rgb[2] + ',' + alpha + ')'; - return rgba; + return rgba; } diff --git a/src/helper/color/isHSL.ts b/src/helper/color/isHSL.ts index 92eb9812..22dba25c 100644 --- a/src/helper/color/isHSL.ts +++ b/src/helper/color/isHSL.ts @@ -1,5 +1,5 @@ export default function isHSL(str: string): boolean { - return /hsl[(]\s*0*(?:[12]?\d{1,2}|3(?:[0-5]\d|60))\s*(?:\s*,\s*0*(?:\d\d?(?:\.\d+)?\s*%|\.\d+\s*%|100(?:\.0*)?\s*%)){2}\s*[)]$/.test( - str - ); + return /hsl[(]\s*0*(?:[12]?\d{1,2}|3(?:[0-5]\d|60))\s*(?:\s*,\s*0*(?:\d\d?(?:\.\d+)?\s*%|\.\d+\s*%|100(?:\.0*)?\s*%)){2}\s*[)]$/.test( + str + ); } diff --git a/src/helper/color/isHex.ts b/src/helper/color/isHex.ts index aa4a114a..b42a6d17 100644 --- a/src/helper/color/isHex.ts +++ b/src/helper/color/isHex.ts @@ -1,3 +1,3 @@ export default function isHex(str: string): boolean { - return /^#[0-9A-F]{6}|#[0-9A-F]{3}$/i.test(str); + return /^#[0-9A-F]{6}|#[0-9A-F]{3}$/i.test(str); } diff --git a/src/helper/color/isRGB.ts b/src/helper/color/isRGB.ts index b03534a8..cf50e643 100644 --- a/src/helper/color/isRGB.ts +++ b/src/helper/color/isRGB.ts @@ -1,5 +1,5 @@ export default function isRGB(str: string): boolean { - return /^rgb[(](?:\s*0*(?:\d\d?(?:\.\d+)?(?:\s*%)?|\.\d+\s*%|100(?:\.0*)?\s*%|(?:1\d\d|2[0-4]\d|25[0-5])(?:\.\d+)?)\s*(?:,(?![)])|(?=[)]))){3}[)]$/.test( - str - ); + return /^rgb[(](?:\s*0*(?:\d\d?(?:\.\d+)?(?:\s*%)?|\.\d+\s*%|100(?:\.0*)?\s*%|(?:1\d\d|2[0-4]\d|25[0-5])(?:\.\d+)?)\s*(?:,(?![)])|(?=[)]))){3}[)]$/.test( + str + ); } diff --git a/src/helper/color/randomAlphaColor.ts b/src/helper/color/randomAlphaColor.ts index af52175f..d3c9c4f6 100644 --- a/src/helper/color/randomAlphaColor.ts +++ b/src/helper/color/randomAlphaColor.ts @@ -3,11 +3,6 @@ import randomFloat from '../../core/math/randomFloat'; import convertColorToRGBA from './convertColorToRGBA'; import randomColor from './randomColor'; -export default function randomColorWithAlpha( - alpha?: Duck.Types.Helper.AlphaRange -) { - return convertColorToRGBA( - randomColor(), - alpha || (randomFloat(0.1, 0.9) as Duck.Types.Helper.AlphaRange) - ); +export default function randomColorWithAlpha(alpha?: number) { + return convertColorToRGBA(randomColor(), alpha || randomFloat(0.1, 0.9)); } diff --git a/src/helper/color/randomColor.ts b/src/helper/color/randomColor.ts index 3afa09ef..75cf4eb5 100644 --- a/src/helper/color/randomColor.ts +++ b/src/helper/color/randomColor.ts @@ -1,4 +1,3 @@ export default function randomColor() { - let a = '#'; - return (a += Math.floor(Math.random() * 16777215).toString(16)); + return '#' + ((Math.random() * 0xffffff) << 0).toString(16).padStart(6, '0'); } diff --git a/src/helper/color/rgbToHSL.ts b/src/helper/color/rgbToHSL.ts index dee38de1..e82cd546 100644 --- a/src/helper/color/rgbToHSL.ts +++ b/src/helper/color/rgbToHSL.ts @@ -1,33 +1,33 @@ export default function rgbToHsl(r: number, g: number, b: number) { - (r /= 255), (g /= 255), (b /= 255); + (r /= 255), (g /= 255), (b /= 255); - const max = Math.max(r, g, b), - min = Math.min(r, g, b); - let h, - s, - l = (max + min) / 2; + const max = Math.max(r, g, b), + min = Math.min(r, g, b); + let h, + s, + l = (max + min) / 2; - if (max === min) { - h = s = 0; // achromatic - } else { - const d = max - min; - s = l > 0.5 ? d / (2 - max - min) : d / (max + min); + if (max === min) { + h = s = 0; // achromatic + } else { + const d = max - min; + s = l > 0.5 ? d / (2 - max - min) : d / (max + min); - switch (max) { - case r: - h = (g - b) / d + (g < b ? 6 : 0); - break; - case g: - h = (b - r) / d + 2; - break; - case b: - h = (r - g) / d + 4; - break; - } + switch (max) { + case r: + h = (g - b) / d + (g < b ? 6 : 0); + break; + case g: + h = (b - r) / d + 2; + break; + case b: + h = (r - g) / d + 4; + break; + } - //@ts-ignore - h /= 6; - } + //@ts-ignore + h /= 6; + } - return `hsl(${h},${s},${l})`; + return `hsl(${h},${s},${l})`; } diff --git a/src/helper/color/rgbToRGBA.ts b/src/helper/color/rgbToRGBA.ts index f3d67755..a5dd67aa 100644 --- a/src/helper/color/rgbToRGBA.ts +++ b/src/helper/color/rgbToRGBA.ts @@ -1,11 +1,8 @@ import { Duck } from '../../index'; -export default function rgbToRGBA( - color: string, - alpha: Duck.Types.Helper.AlphaRange -) { - let new_col = ''; - new_col = color.replace(/rgb/i, 'rgba'); - new_col = new_col.replace(/\)/i, `,${alpha})`); - return new_col; +export default function rgbToRGBA(color: string, alpha: number) { + let new_col = ''; + new_col = color.replace(/rgb/i, 'rgba'); + new_col = new_col.replace(/\)/i, `,${alpha})`); + return new_col; } diff --git a/src/helper/color/rgbaToHSLA.ts b/src/helper/color/rgbaToHSLA.ts index 72c396a9..abfbc7c8 100644 --- a/src/helper/color/rgbaToHSLA.ts +++ b/src/helper/color/rgbaToHSLA.ts @@ -1,42 +1,42 @@ export default function rgbaToHSLA( - r: number | string, - g: number | string, - b: number | string, - a: number + r: number | string, + g: number | string, + b: number | string, + a: number ) { - r = parseInt(r as string); - g = parseInt(g as string); - b = parseInt(b as string); + r = parseInt(r as string); + g = parseInt(g as string); + b = parseInt(b as string); - (r /= 255), (g /= 255), (b /= 255); + (r /= 255), (g /= 255), (b /= 255); - const max = Math.max(r, g, b), - min = Math.min(r, g, b); - let h, - s, - l = (max + min) / 2; + const max = Math.max(r, g, b), + min = Math.min(r, g, b); + let h, + s, + l = (max + min) / 2; - if (max === min) { - h = s = 0; // achromatic - } else { - const d = max - min; - s = l > 0.5 ? d / (2 - max - min) : d / (max + min); + if (max === min) { + h = s = 0; // achromatic + } else { + const d = max - min; + s = l > 0.5 ? d / (2 - max - min) : d / (max + min); - switch (max) { - case r: - h = (g - b) / d + (g < b ? 6 : 0); - break; - case g: - h = (b - r) / d + 2; - break; - case b: - h = (r - g) / d + 4; - break; - } + switch (max) { + case r: + h = (g - b) / d + (g < b ? 6 : 0); + break; + case g: + h = (b - r) / d + 2; + break; + case b: + h = (r - g) / d + 4; + break; + } - //@ts-ignore - h /= 6; - } + //@ts-ignore + h /= 6; + } - return `hsla(${h},${s},${l},${a})`; + return `hsla(${h},${s},${l},${a})`; } diff --git a/src/helper/color/rgbaToRGB.ts b/src/helper/color/rgbaToRGB.ts index 024487a6..d2a1bb19 100644 --- a/src/helper/color/rgbaToRGB.ts +++ b/src/helper/color/rgbaToRGB.ts @@ -1,10 +1,10 @@ export default function rgbaToRGB(rgba: string) { - let res: any = rgba - .replace('rgba', 'rgb') - .replace(/[+-]?([.])[0-9]+/, '') - .split(','); - res.pop(); - res.join(','); - res += ')'; - return res; + let res: any = rgba + .replace('rgba', 'rgb') + .replace(/[+-]?([.])[0-9]+/, '') + .split(','); + res.pop(); + res.join(','); + res += ')'; + return res; } diff --git a/src/helper/dprScale.ts b/src/helper/dprScale.ts index 1c44cead..601e5396 100644 --- a/src/helper/dprScale.ts +++ b/src/helper/dprScale.ts @@ -1,42 +1,42 @@ // https://gist.github.com/callumlocke/cc258a193839691f60dd export default function dprScale( - canvas: HTMLCanvasElement, - context: CanvasRenderingContext2D | any, - width: number, - height: number + canvas: HTMLCanvasElement, + context: CanvasRenderingContext2D | any, + width: number, + height: number ) { - // assume the device pixel ratio is 1 if the browser doesn't specify it - const devicePixelRatio = window.devicePixelRatio || 1; + // assume the device pixel ratio is 1 if the browser doesn't specify it + const devicePixelRatio = window.devicePixelRatio || 1; - // determine the 'backing store ratio' of the canvas context - const backingStoreRatio = - context.webkitBackingStorePixelRatio || - context.mozBackingStorePixelRatio || - context.msBackingStorePixelRatio || - context.oBackingStorePixelRatio || - context.backingStorePixelRatio || - 1; + // determine the 'backing store ratio' of the canvas context + const backingStoreRatio = + context.webkitBackingStorePixelRatio || + context.mozBackingStorePixelRatio || + context.msBackingStorePixelRatio || + context.oBackingStorePixelRatio || + context.backingStorePixelRatio || + 1; - // determine the actual ratio we want to draw at - const ratio = devicePixelRatio / backingStoreRatio; + // determine the actual ratio we want to draw at + const ratio = devicePixelRatio / backingStoreRatio; - if (devicePixelRatio !== backingStoreRatio) { - // set the 'real' canvas size to the higher width/height - canvas.width = width * ratio; - canvas.height = height * ratio; + if (devicePixelRatio !== backingStoreRatio) { + // set the 'real' canvas size to the higher width/height + canvas.width = width * ratio; + canvas.height = height * ratio; - // ...then scale it back down with CSS - canvas.style.width = width + 'px'; - canvas.style.height = height + 'px'; - } else { - // this is a normal 1:1 device; just scale it simply - canvas.width = width; - canvas.height = height; - canvas.style.width = ''; - canvas.style.height = ''; - } + // ...then scale it back down with CSS + canvas.style.width = width + 'px'; + canvas.style.height = height + 'px'; + } else { + // this is a normal 1:1 device; just scale it simply + canvas.width = width; + canvas.height = height; + canvas.style.width = ''; + canvas.style.height = ''; + } - // scale the drawing context so everything will work at the higher ratio - context.scale(ratio, ratio); + // scale the drawing context so everything will work at the higher ratio + context.scale(ratio, ratio); } diff --git a/src/helper/startup.ts b/src/helper/startup.ts index 12811625..1705fa16 100644 --- a/src/helper/startup.ts +++ b/src/helper/startup.ts @@ -1,11 +1,13 @@ -import version from './version'; +import versionInfo from './versionInfo'; export default ` -đŸĻ† DuckEngine - ${version} đŸĻ† +đŸĻ† DuckEngine đŸĻ† + +${versionInfo.version}.${versionInfo.date} https://github.com/ksplatdev/DuckEngine MIT License -Copyright (c) 2021 Bleart Emini +Copyright (c) 2022-2023 Bleart Emini `; diff --git a/src/helper/version.ts b/src/helper/version.ts deleted file mode 100644 index 6bbb04c1..00000000 --- a/src/helper/version.ts +++ /dev/null @@ -1 +0,0 @@ -export default '2.1.0'; diff --git a/src/helper/versionInfo.ts b/src/helper/versionInfo.ts new file mode 100644 index 00000000..02fc7842 --- /dev/null +++ b/src/helper/versionInfo.ts @@ -0,0 +1,4 @@ +export default { + version: '3.0.0-dev', + date: '20230530', +}; diff --git a/src/index.ts b/src/index.ts index a9a13918..76d00e0b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -19,7 +19,6 @@ import LoaderClass from './core/loader/loader'; import TileMapClass from './core/map/tilemap'; import ParticleClass from './core/gameobjects/particles/particle'; import ParticleEmitterClass from './core/gameobjects/particles/particleEmitter'; -import SoundPlayerClass from './core/sound/soundPlayer'; import OnceClass from './base/once'; import RenderClass from './base/render'; import ButtonClass from './core/gameobjects/ui/button'; @@ -48,6 +47,11 @@ import AnimationFrameClass from './core/animation/animationFrame'; import AnimationManagerClass from './core/animation/animationManager'; import AnimationStateClass from './core/animation/animationState'; import StateMachineClass from './core/animation/stateMachine'; +import ColorClass from './core/renderer/models/color'; +import SoundClass from './core/sound/sound'; +import WebSoundPlayerClass from './core/sound/models/webSoundPlayer'; +import HTMLSoundPlayerClass from './core/sound/models/htmlSoundPlayer'; +import SoundSpriteClass from './core/sound/models/misc/soundSprite'; // main @@ -58,1094 +62,1000 @@ import StateMachineClass from './core/animation/stateMachine'; * @since 1.0.0-beta */ export namespace Duck { - /** - * @memberof Duck - * @description Returns a HTMLCanvasElement and CanvasRenderingContext2D, finds a canvas, if none exist, - * it creates and appends one - * @returns {{canvas: HTMLCanvasElement, ctx: CanvasRenderingContext2D}} - */ - export const AutoCanvas = () => { - let canvas: HTMLCanvasElement = document.querySelector( - 'canvas' - ) as HTMLCanvasElement; - - let ctx: CanvasRenderingContext2D = canvas.getContext( - '2d' - ) as CanvasRenderingContext2D; - - // check if canvas exists on document - if (document.querySelector('canvas')) { - canvas = document.querySelector('canvas') as HTMLCanvasElement; - ctx = canvas.getContext('2d') as CanvasRenderingContext2D; - } else { - canvas = document.createElement('canvas') as HTMLCanvasElement; - document.body.appendChild(canvas); - ctx = canvas.getContext('2d') as CanvasRenderingContext2D; - } - - return { - canvas, - ctx, - }; - }; - - /** - * @namespace Duck.Classes - * @memberof Duck - * @description All classes are stored here so that it can be extended. - * @since 2.0.0 - */ - export namespace Classes { - export const Game = GameClass; - export const Scene = SceneClass; - - export namespace GameObjects { - export const GameObject = GameObjectClass; - export const Circle = CircleClass; - export const Rect = RectClass; - export const RoundRect = RoundRectClass; - export const Sprite = SpriteClass; - - export namespace Particles { - export const Particle = ParticleClass; - export const ParticleEmitter = ParticleEmitterClass; - } - export namespace UI { - export const Button = ButtonClass; - export const Text = TextClass; - } - - export namespace Misc { - export const CanvasModulate = CanvasModulateClass; - } - } - - export namespace Effects { - export const Effect = EffectClass; - - export namespace Presets { - export const ExplosionEffect = ExplosionEffectClass; - export const SmokeEffect = SmokeEffectClass; - } - } - - export namespace Misc { - export const Loader = LoaderClass; - export const Group = GroupClass; - export const Cutscene = CutsceneClass; - export const CacheManager = CacheManagerClass; - export const PluginManager = PluginManagerClass; - } - - export namespace Base { - export const Amount = AmountClass; - export const Once = OnceClass; - export const Render = RenderClass; - } - - export namespace Sound { - export const SoundPlayer = SoundPlayerClass; - } - - export namespace Cameras { - export const Camera = CameraClass; - } - - export namespace Physics { - export const Collider = ColliderClass; - export const PhysicsServer = PhysicsServerClass; - export const PhysicsBody = PhysicsBodyClass; - export namespace Models { - export const Hitbox = HitboxClass; - export const Area = AreaClass; - } - } - - export namespace Models { - export const DisplayList = DisplayListClass; - export const PhysicsList = PhysicsListClass; - export const Texture = TextureClass; - } - - export namespace Map { - export const Map = MapClass; - export const TileMap = TileMapClass; - } - - export namespace Math { - export const Vector2 = Vector2Class; - } - - export namespace Lights { - export const StaticLight = StaticLightClass; - } - - export namespace Input { - export const Input = InputClass; - export const KeyboardInput = KeyboardInputClass; - export const MouseInput = MouseInputClass; - export namespace Models { - export const Key = KeyClass; - export const Mouse = MouseClass; - } - } - - export namespace Animation { - export const Animation = AnimationClass; - export const AnimationFrame = AnimationFrameClass; - export const AnimationManager = AnimationManagerClass; - export const AnimationState = AnimationStateClass; - export const StateMachine = StateMachineClass; - } - } - - /** - * @namespace Duck.TypeClasses - * @memberof Duck - * @description All type classes are stored here so that it can be referenced. - * @since 2.0.0 - */ - export namespace TypeClasses { - export type Game = GameClass; - export type Scene = SceneClass; - - export namespace GameObjects { - export type GameObject = - GameObjectClass; - export type Circle = CircleClass; - export type Rect = RectClass; - export type RoundRect = RoundRectClass; - export type Sprite = SpriteClass; - - export namespace Particles { - export type Particle = ParticleClass; - export type ParticleEmitter = ParticleEmitterClass; - } - export namespace UI { - export type Button = ButtonClass; - export type Text = TextClass; - } - - export namespace Misc { - export type CanvasModulate = CanvasModulateClass; - } - } - - export namespace Effects { - export type Effect = EffectClass; - - export namespace Presets { - export type ExplosionEffect = ExplosionEffectClass; - export type SmokeEffect = SmokeEffectClass; - } - } - - export namespace Misc { - export type Loader = LoaderClass; - export type Group = GroupClass; - export type Cutscene = CutsceneClass; - export type CacheManager = CacheManagerClass; - export type PluginManager = PluginManagerClass; - } - - export namespace Base { - export type Amount = AmountClass; - export type Once = OnceClass; - export type Render = RenderClass; - } - - export namespace Sound { - export type SoundPlayer = SoundPlayerClass; - } - - export namespace Cameras { - export type Camera = CameraClass; - } - - export namespace Physics { - export type Collider = ColliderClass; - export type PhysicsServer = PhysicsServerClass; - export type PhysicsBody = - PhysicsBodyClass; - export namespace Models { - export type Hitbox = HitboxClass; - export type Area = AreaClass; - } - } - - export namespace Models { - export type DisplayList = DisplayListClass; - export type PhysicsList = PhysicsListClass; - export type Texture = - TextureClass; - } - - export namespace Map { - export type Map = MapClass; - export type TileMap = TileMapClass; - } - - export namespace Math { - export type Vector2 = Vector2Class; - } - - export namespace Lights { - export type StaticLight = StaticLightClass; - } - - export namespace Input { - export type Input = InputClass; - export type KeyboardInput = KeyboardInputClass; - export type MouseInput = MouseInputClass; - export namespace Models { - export type Key = KeyClass; - export type Mouse = MouseClass; - } - } - - export namespace Animation { - export type Animation = AnimationClass; - export type AnimationFrame = AnimationFrameClass; - export type AnimationManager = AnimationManagerClass; - export type AnimationState = AnimationStateClass; - export type StateMachine = StateMachineClass; - } - } - - /** - * @namespace Duck.Layers - * @memberof Duck - * @description All rendering zIndexes are stored here. - * @since 2.0.0 - */ - export namespace Layers { - export namespace Rendering { - export const zIndex = { - canvasModulate: 1, - gameobject: 2, - particle: 3, - button: 4, - text: 5, - graphicDebug: 6, - fades: 7, - }; - } - } - - /** - * @namespace Duck.Types - * @memberof Duck - * @description All Class configs and types for that class are stored here. All types are here. - * @since 2.0.0 - */ - export namespace Types { - export type GameObject = - GameObjectClass; - - export type PhysicsProcessMember = - PhysicsBodyClass; - - export interface Renderable { - readonly id: string; - zIndex: number; - visible: boolean; - game: GameClass; - _draw(): void; - culled: boolean; - } - - export namespace Game { - export interface Config { - /** - * @memberof Duck.Types.Game.Config - * @description Canvas element to render to or return value from Duck.AutoCanvas() - * @type HTMLCanvasElement | { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D; } - * @since 1.0.0-beta - */ - canvas: - | HTMLCanvasElement - | { - canvas: HTMLCanvasElement; - ctx: CanvasRenderingContext2D; - }; - - /** - * @memberof Duck.Types.Game.Config - * @description Key of scene that is defaulted to be visible - * @type string - * @since 1.0.0-beta - */ - defaultScene: string; - - /** - * @memberof Duck.Types.Game.Config - * @description Rounds pixels from floats to integers, affects gameobjects (excluding particles) - * @type boolean - * @default false - * @since 2.0.0 - */ - roundPixels?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description Determines if window.focus is called on load or not - * @type boolean - * @default false - * @since 2.0.0 - */ - focus?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description Determines if window.blur is called on load or not - * @type boolean - * @default false - * @since 2.0.0 - */ - blur?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description Determines if rendering renderable objects is paused if tab is not focused, uses window.onblur and window.onfocus - * @type boolean - * @default false - * @since 2.0.0 - */ - pauseRenderingOnBlur?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description Physics Options - * @since 2.0.0 - */ - physics?: { - enabled: boolean; - gravity?: Duck.Types.Math.Vector2Like; - customTick?: boolean; - debug?: boolean; - }; - - /** - * @memberof Duck.Types.Game.Config - * @description Function to call when rendering is paused, rendering pauses when this.stop is called or - * if pauseRenderingOnBlur is true and the window.blur event was fired - * @type (reason: 'windowBlur' | 'gameStop' | 'gameConfigBlur') => void - * @since 2.0.0 - */ - onPauseRendering?: ( - reason: 'windowBlur' | 'gameStop' | 'gameConfigBlur' - ) => void; - - /** - * @memberof Duck.Types.Game.Config - * @description Function to call when rendering is resumed/started, rendering resumes/starts when this.start is called or - * if the window.focus event was fired - * @type (reason: 'windowFocus' | 'gameStart' | 'gameConfigFocus') => void - * @since 2.0.0 - */ - onResumeRendering?: ( - reason: 'windowFocus' | 'gameStart' | 'gameConfigFocus' - ) => void; - - /** - * @memberof Duck.Types.Game.Config - * @description Scale of the canvas, the size of the canvas - * @type Duck.Types.Math.Vector2Like - * @since 2.1.0 - */ - scale?: Duck.Types.Math.Vector2Like; - - /** - * @memberof Duck.Types.Game.Config - * @description Determines if DuckEngine logs out events that are occurring - * @type boolean - * @default false - * @since 1.0.0-beta - */ - debug?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description Determines if DuckEngine silences/prevents pauseRenderingOnBlur, onPauseRendering, and onResumeRendering configurations - * @default false - * @type boolean - * @since 2.0.0 - */ - debugRendering?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description Custom splash screen options, shows while the game is starting/loading, default img: https://i.ibb.co/bdN4CCN/Logo-Splash.png - * default extraDuration: 500 - * @type { img: string | 'default'; extraDuration?: number; } - * @since 2.0.0 - */ - splashScreen?: { - img?: string | 'default'; - extraDuration?: number; - }; - - /** - * @memberof Duck.Types.Game.Config - * @description CSS background color of the canvas (hint: to fill a scene with a background color, use scene.add.misc.canvasModulate) - * @type string - * @default undefined - * @since 1.0.0-beta - */ - background?: string; - - /** - * @memberof Duck.Types.Game.Config - * @description Determines if the canvas is scaled down to the window size if the window size is smaller than the canvas - * @type boolean - * @default false - * @since 1.0.0 - */ - smartScale?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description Uses the device pixel ratio to scale the canvas accordingly - * @default false - * @type boolean - * @since 1.0.0 - */ - dprScale?: boolean; - - /** - * @memberof Duck.Types.Game.Config - * @description How often, in milliseconds, the RendererPipeline calls its pool method, affects how long it takes for a scene - * or renderable to change its visibility as both are controlled and updated by the RendererPipeline - * @default 1000 - * @type number - * @since 2.1.0 - */ - poolingInterval?: number; - } - - export interface Stack { - scenes: SceneClass[]; - defaultScene: string; - } - - export interface Plugin { - func: (...args: unknown[]) => unknown; - args: unknown[]; - name: string; - } - } - - export namespace RendererPipeline { - export interface PoolStackItem { - scene: SceneClass; - /** - * @memberof Duck.Types.Game.PoolStackItem - * @description An array of renderables that are visible and depth sorted - * @type Duck.Types.Renderable[] - * @since 2.1.0 - */ - renderables: Duck.Types.Renderable[]; - } - } - - export namespace Misc { - export interface Scale { - width?: number; - height?: number; - } - } - - export namespace Collider { - export type ShapeString = - | 'rect' - | 'circle' - | 'roundrect' - | 'sprite'; - - export type CollisionResponseType = - | 'none' - | 'top' - | 'left' - | 'right' - | 'bottom'; - } - - export namespace Sound { - export interface Sprite { - startSeconds: number; - endSeconds: number; - key: string; - } - - export interface Config { - autoplay?: boolean; - volume?: number; - sprites?: Sprite[]; - loop?: boolean; - } - } - export namespace GamepadInput { - export type MappingType = 'Xbox' | 'Playstation'; - export type Mapping = - | typeof XboxMapping - | typeof PlaystationMapping; - - export enum XboxMapping { - A = 0, - B = 1, - X = 2, - Y = 3, - LB = 4, - RB = 5, - LT = 6, - RT = 7, - SHOW_ADDRESS_BAR = 8, - SHOW_MENU = 9, - LEFT_STICK_PRESS = 10, - RIGHT_STICK_PRESS = 11, - D_PAD_UP = 12, - D_PAD_DOWN = 13, - D_PAD_LEFT = 14, - D_PAD_RIGHT = 15, - LOGO = 16, - } - - export enum PlaystationMapping { - X = 0, - CIRCLE = 1, - SQUARE = 2, - TRIANGLE = 3, - L1 = 4, - R1 = 5, - L2 = 6, - R2 = 7, - SHARE = 8, - OPTIONS = 9, - LEFT_STICK_PRESS = 10, - RIGHT_STICK_PRESS = 11, - D_PAD_UP = 12, - D_PAD_DOWN = 13, - D_PAD_LEFT = 14, - D_PAD_RIGHT = 15, - LOGO = 16, - } - } - - export namespace UI { - export namespace Text { - export interface Config { - x: number; - y: number; - method: 'draw' | 'stroke' | 'draw-stroke'; - styles: { - fontCSS: string; - strokeWidth?: number; - strokeColor?: string; - fillColor?: string; - maxWidth?: number; - }; - } - } - - export namespace Button { - export type Shape = 'rect' | 'roundrect' | 'sprite'; - - export type ListenerType = 'CLICK' | 'HOVER' | 'NOTHOVER'; - - export interface ListenerReturn { - x: number; - y: number; - type: ListenerType; - } - - export type ListenerFunc = (e: ListenerReturn) => void; - - export interface Listener { - type: ListenerType; - func: ListenerFunc; - } - } - } - - export namespace Group { - export type Filter = - | 'gameobject' - | 'lights' - | 'ui' - | 'physics' - | 'cameras'; - - export type ListenerType = 'ADD' | 'REMOVE'; - - export interface Listener { - func: (item: unknown) => unknown; - type: ListenerType; - } - } - - export namespace ParticleEmitter { - export type Range = Helper.FixedLengthArray<[number, number]>; - export interface Offloaders { - maxAmount: () => void; - maxAge: () => void; - maxBounds: () => void; - } - } - - export namespace Cutscene { - export type OnListenerType = 'END' | 'START' | 'NEXT'; - - export interface OnListener { - type: OnListenerType; - func: Function; - } - - export type StepType = - | 'MOVE' - | 'DRAW' - | 'FUNC' - | 'CAMERA_ZOOM' - | 'CAMERA_FOV' - | 'CAMERA_MOVE' - | 'CAMERA_SHAKE' - | 'CAMERA_START_FOLLOW' - | 'CAMERA_STOP_FOLLOW'; - - export interface Step { - type: StepType; - affect?: GameObject | CameraClass; - moveTo?: { - x?: number; - y?: number; - }; - func?: Function; - cameraValue?: number; - cameraIntervalMS?: number; - cameraTimeMS?: number; - sleepValue?: number; - cameraFollow?: GameObject; - cameraFollowLerpX?: number; - cameraFollowLerpY?: number; - } - export interface Instructions { - init: { - mainObjectPos: { - x: number; - y: number; - }; - otherObjectPos: { - x: number; - y: number; - }[]; - cameraSettings?: { - FOV: number; - follow?: GameObject; - zoom: number; - pos?: { - x: number; - y: number; - }; - followLerpX: number; - followLerpY: number; - }; - otherCameraSettings?: { - FOV: number; - follow?: GameObject; - zoom: number; - pos?: { - x: number; - y: number; - }; - followLerpX: number; - followLerpY: number; - }[]; - }; - steps: Step[]; - } - - export interface Config { - mainCamera: CameraClass; - otherCameras?: CameraClass[]; - otherObjects?: GameObject[]; - mainObject: GameObject; - } - } - - export namespace Tilemap { - export type Map = number[][]; - export interface Atlas { - [key: number]: HTMLImageElement | string; - } - } - - export namespace ParticleContainer { - export interface Bounds { - position: { - x: number; - y: number; - }; - w: number; - h: number; - } - - export interface Physics { - bounciness: number; - } - } - - export namespace Loader { - export type StackItemType = - | 'texture' - | 'json' - | 'font' - | 'html' - | 'xml' - | 'audio'; - - export interface StackItem { - type: StackItemType; - value: t; - key: string; - } - - export interface TextureStackItem extends StackItem { - dataType: Duck.Types.Texture.DataType; - } - } - - export namespace Texture { - export type Type = 'image' | 'color' | 'either'; - - export type DataType = 'sheet' | 'base' | 'atlas'; - } - - export namespace PhysicsBody { - export type Type = RigidBody | StaticBody | KinematicBody; - - export interface Config { - type: Type; - } - - export interface AttachedBody { - body: PhysicsBodyClass; - offset: Vector2Class; - } - - /** - * @memberof Duck.Types.PhysicsBody.KinematicBody - * @description A type of PhysicsBody that can be moved and can be effected by gravity and friction. - * @since 2.0.0 - */ - export type KinematicBody = 'KinematicBody'; - - /** - * @memberof Duck.Types.PhysicsBody.KinematicBody - * @description A type of PhysicsBody that cannot be moved but can be effected by gravity and friction. - * @since 2.0.0 - */ - export type RigidBody = 'RigidBody'; - - /** - * @memberof Duck.Types.PhysicsBody.KinematicBody - * @description A type of PhysicsBody that cannot be moved and cannot be effected by gravity and friction. - * @since 2.0.0 - */ - export type StaticBody = 'StaticBody'; - } - - export namespace Animation { - export interface Config { - /** - * @memberof Duck.Types.Animation.Config - * @description Key / Name of Animation - * @type string - * @since 2.0.0 - */ - key: string; - - /** - * @memberof Duck.Types.Animation.Config - * @description Frames of the Animation, objects that are later converted to AnimationFrame - * @type Duck.Types.Animation.FrameBase[] - * @since 2.0.0 - */ - frames: FrameBase[]; - - /** - * @memberof Duck.Types.Animation.Config - * @description The frame rate of the animation - * @type number - * @since 2.0.0 - */ - frameRate: number; - - /** - * @memberof Duck.Types.Animation.Config - * @description Determines the amount of times the Animation loops, optional -> defaults: 1 - * @type number - * @since 2.0.0 - */ - repeat?: number; - - /** - * @memberof Duck.Types.Animation.Config - * @description Determines if the animation plays in the opposite direction of its current direction and switches on end, like a yoyo - * optional -> defaults: false - * @type boolean - * @since 2.0.0 - */ - yoyo?: boolean; - - /** - * @memberof Duck.Types.Animation.Config - * @description The amount of milliseconds that is waited for before playing the animation, optional -> defaults: 0 - * @type number - * @since 2.0.0 - */ - delay?: number; - - /** - * @memberof Duck.Types.Animation.Config - * @description Determines if the Animation timers count by the Game.deltaTime, set to true if used in the Scene.update method, and false - * otherwise, optional -> defaults: false - * @type boolean - * @since 2.0.0 - */ - useDelta?: boolean; - } - - export interface FrameBase { - col: number; - row: number; - } - } - - export namespace StateMachine { - export interface ConnectionBase { - from: ConnectionBaseValue; - to: ConnectionBaseValue; - connType: 'one' | 'loop'; - } - - export interface ConnectionBaseValue { - key: string; - vector: Vector2Class; - autoAdvance?: boolean; - } - - export interface Config { - defaultState: string; - connections: ConnectionBase[]; - } - } - - export namespace KeyboardInput { - export interface KeyBase { - keyCode: number; - descriptor: string; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - keyDown?: (e: KeyboardEvent) => any; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - keyUp?: (e: KeyboardEvent) => any; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - keyJustPressed?: (e: KeyboardEvent) => any; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - keyState?: (e: KeyboardEvent, state: boolean) => any; - } - } - - export namespace MouseInput { - export interface MouseBase { - button: 0 | 1 | 2 | 3 | 4; - descriptor: string; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - mouseDown?: (e: MouseEvent) => any; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - mouseUp?: (e: MouseEvent) => any; - // eslint-disable-next-line @typescript-eslint/no-explicit-any - mouseMove?: (e: MouseEvent) => any; - } - } - - export namespace Camera { - export interface CullingOptions { - /** - * @memberof Duck.Types.Camera.CullingOptions - * @description Determines if the visibility of the renderable is preserved, renderable's culled property will only be modified instead - * of the visibility property, this keeps hidden renderables hidden and visible renderables based on the culled property - * @default true - * @type boolean - * @since 2.1.0 - */ - preserveVisibility?: boolean; - - /** - * @memberof Duck.Types.Camera.CullingOptions - * @description Determines if the enabled property of PhysicsBodies will be modified base on if the renderable is culled - * @default true - * @type boolean - * @since 2.1.0 - */ - modifyPhysicsEnable?: boolean; - } - } - - export namespace TextureAtlas { - export interface FrameData { - key: string; - x: number; - y: number; - w: number; - h: number; - } - - export interface JSONSchema { - name: string; - data: FrameData[]; - } - } - - export namespace Math { - export interface Vector2Like { - x: number; - y: number; - } - - export interface Vector2LikeOptional { - x?: number; - y?: number; - } - - export interface BoundsLike extends Vector2Like { - w: number; - h: number; - } - } - - export namespace Helper { - type ArrayLengthMutationKeys = - | 'splice' - | 'push' - | 'pop' - | 'shift' - | 'unshift' - | number; - type ArrayItems> = T extends Array< - infer TItems - > - ? TItems - : never; - export type FixedLengthArray = Pick< - T, - Exclude - > & { [Symbol.iterator]: () => IterableIterator> }; - - //#region Long Type - export type AlphaRange = - | 0 - | 0.01 - | 0.02 - | 0.03 - | 0.04 - | 0.05 - | 0.06 - | 0.07 - | 0.08 - | 0.09 - | 0.1 - | 0.11 - | 0.12 - | 0.13 - | 0.14 - | 0.15 - | 0.16 - | 0.17 - | 0.18 - | 0.19 - | 0.2 - | 0.21 - | 0.22 - | 0.23 - | 0.24 - | 0.25 - | 0.26 - | 0.27 - | 0.28 - | 0.29 - | 0.3 - | 0.31 - | 0.32 - | 0.33 - | 0.34 - | 0.35 - | 0.36 - | 0.37 - | 0.38 - | 0.39 - | 0.4 - | 0.41 - | 0.42 - | 0.43 - | 0.44 - | 0.45 - | 0.46 - | 0.47 - | 0.48 - | 0.49 - | 0.5 - | 0.51 - | 0.52 - | 0.53 - | 0.54 - | 0.55 - | 0.56 - | 0.57 - | 0.58 - | 0.59 - | 0.6 - | 0.61 - | 0.62 - | 0.63 - | 0.64 - | 0.65 - | 0.66 - | 0.67 - | 0.68 - | 0.69 - | 0.7 - | 0.71 - | 0.72 - | 0.73 - | 0.74 - | 0.75 - | 0.76 - | 0.77 - | 0.78 - | 0.79 - | 0.8 - | 0.81 - | 0.82 - | 0.83 - | 0.84 - | 0.85 - | 0.86 - | 0.87 - | 0.88 - | 0.89 - | 0.9 - | 0.91 - | 0.92 - | 0.93 - | 0.94 - | 0.95 - | 0.96 - | 0.97 - | 0.98 - | 0.99 - | 1; - //#endregion Long Type - } - } + /** + * @memberof Duck + * @description Returns a HTMLCanvasElement and CanvasRenderingContext2D, finds a canvas, if none exist, + * it creates and appends one + * @returns {{canvas: HTMLCanvasElement, ctx: CanvasRenderingContext2D}} + */ + export const AutoCanvas = () => { + let canvas: HTMLCanvasElement = document.querySelector( + 'canvas' + ) as HTMLCanvasElement; + + let ctx: CanvasRenderingContext2D = canvas.getContext( + '2d' + ) as CanvasRenderingContext2D; + + // check if canvas exists on document + if (document.querySelector('canvas')) { + canvas = document.querySelector('canvas') as HTMLCanvasElement; + ctx = canvas.getContext('2d') as CanvasRenderingContext2D; + } else { + canvas = document.createElement('canvas') as HTMLCanvasElement; + document.body.appendChild(canvas); + ctx = canvas.getContext('2d') as CanvasRenderingContext2D; + } + + return { + canvas, + ctx, + }; + }; + + /** + * @namespace Duck.Classes + * @memberof Duck + * @description All classes are stored here so that it can be extended. + * @since 2.0.0 + */ + export namespace Classes { + export const Game = GameClass; + export const Scene = SceneClass; + + export namespace GameObjects { + export const GameObject = GameObjectClass; + export const Circle = CircleClass; + export const Rect = RectClass; + export const RoundRect = RoundRectClass; + export const Sprite = SpriteClass; + + export namespace Particles { + export const Particle = ParticleClass; + export const ParticleEmitter = ParticleEmitterClass; + } + export namespace UI { + export const Button = ButtonClass; + export const Text = TextClass; + } + + export namespace Misc { + export const CanvasModulate = CanvasModulateClass; + } + } + + export namespace Effects { + export const Effect = EffectClass; + + export namespace Presets { + export const ExplosionEffect = ExplosionEffectClass; + export const SmokeEffect = SmokeEffectClass; + } + } + + export namespace Misc { + export const Loader = LoaderClass; + export const Group = GroupClass; + export const Cutscene = CutsceneClass; + export const CacheManager = CacheManagerClass; + export const PluginManager = PluginManagerClass; + } + + export namespace Base { + export const Amount = AmountClass; + export const Once = OnceClass; + export const Render = RenderClass; + } + + export namespace Sound { + export const Sound = SoundClass; + export const WebSoundPlayer = WebSoundPlayerClass; + export const HTMLSoundPlayer = HTMLSoundPlayerClass; + export const SoundSprite = SoundSpriteClass; + } + + export namespace Cameras { + export const Camera = CameraClass; + } + + export namespace Physics { + export const Collider = ColliderClass; + export const PhysicsServer = PhysicsServerClass; + export const PhysicsBody = PhysicsBodyClass; + export namespace Models { + export const Hitbox = HitboxClass; + export const Area = AreaClass; + } + } + + export namespace Models { + export const DisplayList = DisplayListClass; + export const PhysicsList = PhysicsListClass; + export const Texture = TextureClass; + export const Color = ColorClass; + } + + export namespace Map { + export const Map = MapClass; + export const TileMap = TileMapClass; + } + + export namespace Math { + export const Vector2 = Vector2Class; + } + + export namespace Lights { + export const StaticLight = StaticLightClass; + } + + export namespace Input { + export const Input = InputClass; + export const KeyboardInput = KeyboardInputClass; + export const MouseInput = MouseInputClass; + export namespace Models { + export const Key = KeyClass; + export const Mouse = MouseClass; + } + } + + export namespace Animation { + export const Animation = AnimationClass; + export const AnimationFrame = AnimationFrameClass; + export const AnimationManager = AnimationManagerClass; + export const AnimationState = AnimationStateClass; + export const StateMachine = StateMachineClass; + } + } + + /** + * @namespace Duck.TypeClasses + * @memberof Duck + * @description All type classes are stored here so that it can be referenced. + * @since 2.0.0 + */ + export namespace TypeClasses { + export type Game = GameClass; + export type Scene = SceneClass; + + export namespace GameObjects { + export type GameObject = + GameObjectClass; + export type Circle = CircleClass; + export type Rect = RectClass; + export type RoundRect = RoundRectClass; + export type Sprite = SpriteClass; + + export namespace Particles { + export type Particle = ParticleClass; + export type ParticleEmitter = ParticleEmitterClass; + } + export namespace UI { + export type Button = ButtonClass; + export type Text = TextClass; + } + + export namespace Misc { + export type CanvasModulate = CanvasModulateClass; + } + } + + export namespace Effects { + export type Effect = EffectClass; + + export namespace Presets { + export type ExplosionEffect = ExplosionEffectClass; + export type SmokeEffect = SmokeEffectClass; + } + } + + export namespace Misc { + export type Loader = LoaderClass; + export type Group = GroupClass; + export type Cutscene = CutsceneClass; + export type CacheManager = CacheManagerClass; + export type PluginManager = PluginManagerClass; + } + + export namespace Base { + export type Amount = AmountClass; + export type Once = OnceClass; + export type Render = RenderClass; + } + + export namespace Sound { + export type Sound = SoundClass; + export type WebSoundPlayer = WebSoundPlayerClass; + export type HTMLSoundPlayer = HTMLSoundPlayerClass; + export type SoundSprite = SoundSpriteClass; + } + + export namespace Cameras { + export type Camera = CameraClass; + } + + export namespace Physics { + export type Collider = ColliderClass; + export type PhysicsServer = PhysicsServerClass; + export type PhysicsBody = + PhysicsBodyClass; + export namespace Models { + export type Hitbox = HitboxClass; + export type Area = AreaClass; + } + } + + export namespace Models { + export type DisplayList = DisplayListClass; + export type PhysicsList = PhysicsListClass; + export type Texture = TextureClass; + export type Color = ColorClass; + } + + export namespace Map { + export type Map = MapClass; + export type TileMap = TileMapClass; + } + + export namespace Math { + export type Vector2 = Vector2Class; + } + + export namespace Lights { + export type StaticLight = StaticLightClass; + } + + export namespace Input { + export type Input = InputClass; + export type KeyboardInput = KeyboardInputClass; + export type MouseInput = MouseInputClass; + export namespace Models { + export type Key = KeyClass; + export type Mouse = MouseClass; + } + } + + export namespace Animation { + export type Animation = AnimationClass; + export type AnimationFrame = AnimationFrameClass; + export type AnimationManager = AnimationManagerClass; + export type AnimationState = AnimationStateClass; + export type StateMachine = StateMachineClass; + } + } + + /** + * @namespace Duck.Layers + * @memberof Duck + * @description All rendering zIndexes are stored here. + * @since 2.0.0 + */ + export namespace Layers { + export namespace Rendering { + export const zIndex = { + canvasModulate: 1, + gameobject: 2, + particle: 3, + button: 4, + text: 5, + graphicDebug: 6, + fades: 7, + }; + } + } + + /** + * @namespace Duck.Types + * @memberof Duck + * @description All Class configs and types for that class are stored here. All types are here. + * @since 2.0.0 + */ + export namespace Types { + export type GameObject = + GameObjectClass; + + export type PhysicsProcessMember = + PhysicsBodyClass; + + export interface Renderable { + readonly id: string; + zIndex: number; + visible: boolean; + game: GameClass; + _draw(): void; + culled: boolean; + } + + export namespace Game { + export interface VersionInfo { + version: string; + date: string; + } + + export interface Config { + /** + * @memberof Duck.Types.Game.Config + * @description Canvas element to render to or return value from Duck.AutoCanvas() + * @type HTMLCanvasElement | { canvas: HTMLCanvasElement; ctx: CanvasRenderingContext2D; } + * @since 1.0.0-beta + */ + canvas: + | HTMLCanvasElement + | { + canvas: HTMLCanvasElement; + ctx: CanvasRenderingContext2D; + }; + + /** + * @memberof Duck.Types.Game.Config + * @description Key of scene that is defaulted to be visible + * @type string + * @since 1.0.0-beta + */ + defaultScene: string; + + /** + * @memberof Duck.Types.Game.Config + * @description Rounds pixels from floats to integers, affects gameobjects (excluding particles) + * @type boolean + * @default false + * @since 2.0.0 + */ + roundPixels?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description Determines if window.focus is called on load or not + * @type boolean + * @default false + * @since 2.0.0 + */ + focus?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description Determines if window.blur is called on load or not + * @type boolean + * @default false + * @since 2.0.0 + */ + blur?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description Determines if rendering renderable objects is paused if tab is not focused, uses window.onblur and window.onfocus + * @type boolean + * @default false + * @since 2.0.0 + */ + pauseRenderingOnBlur?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description Physics Options + * @since 2.0.0 + */ + physics?: { + enabled: boolean; + gravity?: Duck.Types.Math.Vector2Like; + customTick?: boolean; + debug?: boolean; + }; + + /** + * @memberof Duck.Types.Game.Config + * @description Function to call when rendering is paused, rendering pauses when this.stop is called or + * if pauseRenderingOnBlur is true and the window.blur event was fired + * @type (reason: 'windowBlur' | 'gameStop' | 'gameConfigBlur') => void + * @since 2.0.0 + */ + onPauseRendering?: ( + reason: 'windowBlur' | 'gameStop' | 'gameConfigBlur' + ) => void; + + /** + * @memberof Duck.Types.Game.Config + * @description Function to call when rendering is resumed/started, rendering resumes/starts when this.start is called or + * if the window.focus event was fired + * @type (reason: 'windowFocus' | 'gameStart' | 'gameConfigFocus') => void + * @since 2.0.0 + */ + onResumeRendering?: ( + reason: 'windowFocus' | 'gameStart' | 'gameConfigFocus' + ) => void; + + /** + * @memberof Duck.Types.Game.Config + * @description Scale of the canvas, the size of the canvas + * @type Duck.Types.Math.Vector2Like + * @since 2.1.0 + */ + scale?: Duck.Types.Math.Vector2Like; + + /** + * @memberof Duck.Types.Game.Config + * @description Determines if DuckEngine logs out events that are occurring + * @type boolean + * @default false + * @since 1.0.0-beta + */ + debug?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description Determines if DuckEngine silences/prevents pauseRenderingOnBlur, onPauseRendering, and onResumeRendering configurations + * @default false + * @type boolean + * @since 2.0.0 + */ + debugRendering?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description Custom splash screen options, shows while the game is starting/loading, default img: https://i.ibb.co/bdN4CCN/Logo-Splash.png + * default extraDuration: 500 + * @type { img: string | 'default'; extraDuration?: number; } + * @since 2.0.0 + */ + splashScreen?: { + img?: string | 'default'; + extraDuration?: number; + }; + + /** + * @memberof Duck.Types.Game.Config + * @description CSS background color of the canvas (hint: to fill a scene with a background color, use scene.add.misc.canvasModulate) + * @type string + * @default undefined + * @since 1.0.0-beta + */ + background?: string; + + /** + * @memberof Duck.Types.Game.Config + * @description Determines if the canvas is scaled down to the window size if the window size is smaller than the canvas + * @type boolean + * @default false + * @since 1.0.0 + */ + smartScale?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description Uses the device pixel ratio to scale the canvas accordingly + * @default false + * @type boolean + * @since 1.0.0 + */ + dprScale?: boolean; + + /** + * @memberof Duck.Types.Game.Config + * @description How often, in milliseconds, the RendererPipeline calls its pool method, affects how long it takes for a + * renderable to change its visibility as it is controlled and updated by the RendererPipeline + * @default 1000 / game.fps + * @type number + * @since 2.1.0 + */ + poolingInterval?: number; + } + + export interface Stack { + scenes: SceneClass[]; + defaultScene: string; + } + + export interface Plugin { + func: (...args: unknown[]) => unknown; + args: unknown[]; + name: string; + } + } + + export namespace RendererPipeline { + export interface PoolStackItem { + scene: SceneClass; + /** + * @memberof Duck.Types.Game.PoolStackItem + * @description An array of renderables that are visible and depth sorted + * @type Duck.Types.Renderable[] + * @since 2.1.0 + */ + renderables: Duck.Types.Renderable[]; + } + } + + export namespace Misc { + export interface Scale { + width?: number; + height?: number; + } + } + + export namespace Collider { + export type ShapeString = 'rect' | 'circle' | 'roundrect' | 'sprite'; + + export type CollisionResponseType = + | 'none' + | 'top' + | 'left' + | 'right' + | 'bottom'; + } + + export namespace Sound { + export interface SpriteStruct { + startInMilliSeconds: number; + endInMilliSeconds: number; + key: string; + } + + export interface SoundConfig { + autoplay?: boolean; + volume?: number; + spriteStructs?: SpriteStruct[]; + loop?: boolean; + } + + export type SoundPlayerType = + | 'WebAudio' + | 'HTMLAudio' + | 'AUTO' + | undefined; + } + export namespace GamepadInput { + export type MappingType = 'Xbox' | 'Playstation'; + export type Mapping = typeof XboxMapping | typeof PlaystationMapping; + + export enum XboxMapping { + A = 0, + B = 1, + X = 2, + Y = 3, + LB = 4, + RB = 5, + LT = 6, + RT = 7, + SHOW_ADDRESS_BAR = 8, + SHOW_MENU = 9, + LEFT_STICK_PRESS = 10, + RIGHT_STICK_PRESS = 11, + D_PAD_UP = 12, + D_PAD_DOWN = 13, + D_PAD_LEFT = 14, + D_PAD_RIGHT = 15, + LOGO = 16, + } + + export enum PlaystationMapping { + X = 0, + CIRCLE = 1, + SQUARE = 2, + TRIANGLE = 3, + L1 = 4, + R1 = 5, + L2 = 6, + R2 = 7, + SHARE = 8, + OPTIONS = 9, + LEFT_STICK_PRESS = 10, + RIGHT_STICK_PRESS = 11, + D_PAD_UP = 12, + D_PAD_DOWN = 13, + D_PAD_LEFT = 14, + D_PAD_RIGHT = 15, + LOGO = 16, + } + } + + export namespace UI { + export namespace Text { + export interface Config { + x: number; + y: number; + method: 'draw' | 'stroke' | 'draw-stroke'; + styles: { + fontCSS: string; + strokeWidth?: number; + strokeColor?: string; + fillColor?: string; + maxWidth?: number; + }; + } + } + + export namespace Button { + export type Shape = 'rect' | 'roundrect' | 'sprite'; + + export type ListenerType = 'CLICK' | 'HOVER' | 'NOTHOVER'; + + export interface ListenerReturn { + x: number; + y: number; + type: ListenerType; + } + + export type ListenerFunc = (e: ListenerReturn) => void; + + export interface Listener { + type: ListenerType; + func: ListenerFunc; + } + } + } + + export namespace Group { + export type Filter = + | 'gameobject' + | 'lights' + | 'ui' + | 'physics' + | 'cameras'; + + export type ListenerType = 'ADD' | 'REMOVE'; + + export interface Listener { + func: (item: unknown) => unknown; + type: ListenerType; + } + } + + export namespace ParticleEmitter { + export type Range = Helper.FixedLengthArray<[number, number]>; + export interface Offloaders { + maxAmount: () => void; + maxAge: () => void; + maxBounds: () => void; + } + } + + export namespace Cutscene { + export type OnListenerType = 'END' | 'START' | 'NEXT'; + + export interface OnListener { + type: OnListenerType; + func: Function; + } + + export type StepType = + | 'MOVE' + | 'DRAW' + | 'FUNC' + | 'CAMERA_ZOOM' + | 'CAMERA_FOV' + | 'CAMERA_MOVE' + | 'CAMERA_SHAKE' + | 'CAMERA_START_FOLLOW' + | 'CAMERA_STOP_FOLLOW'; + + export interface Step { + type: StepType; + affect?: GameObject | CameraClass; + moveTo?: { + x?: number; + y?: number; + }; + func?: Function; + cameraValue?: number; + cameraIntervalMS?: number; + cameraTimeMS?: number; + sleepValue?: number; + cameraFollow?: GameObject; + cameraFollowLerpX?: number; + cameraFollowLerpY?: number; + } + export interface Instructions { + init: { + mainObjectPos: { + x: number; + y: number; + }; + otherObjectPos: { + x: number; + y: number; + }[]; + cameraSettings?: { + FOV: number; + follow?: GameObject; + zoom: number; + pos?: { + x: number; + y: number; + }; + followLerpX: number; + followLerpY: number; + }; + otherCameraSettings?: { + FOV: number; + follow?: GameObject; + zoom: number; + pos?: { + x: number; + y: number; + }; + followLerpX: number; + followLerpY: number; + }[]; + }; + steps: Step[]; + } + + export interface Config { + mainCamera: CameraClass; + otherCameras?: CameraClass[]; + otherObjects?: GameObject[]; + mainObject: GameObject; + } + } + + export namespace Tilemap { + export type Map = number[][]; + export interface Atlas { + [key: number]: HTMLImageElement | string; + } + } + + export namespace ParticleContainer { + export interface Bounds { + position: { + x: number; + y: number; + }; + w: number; + h: number; + } + + export interface Physics { + bounciness: number; + } + } + + export namespace Loader { + export type StackItemType = + | 'texture' + | 'json' + | 'font' + | 'html' + | 'xml' + | 'audio' + | 'audioBuffer'; + + export interface StackItem { + type: StackItemType; + value: t; + key: string; + } + + export interface TextureStackItem extends StackItem { + dataType: Duck.Types.Texture.DataType; + } + } + + export namespace Texture { + export type Type = 'image' | 'color' | 'either'; + + export type DataType = 'sheet' | 'base' | 'atlas'; + } + + export namespace PhysicsBody { + export type Type = RigidBody | StaticBody | KinematicBody; + + export interface Config { + type: Type; + } + + export interface AttachedBody { + body: PhysicsBodyClass; + offset: Vector2Class; + } + + /** + * @memberof Duck.Types.PhysicsBody.KinematicBody + * @description A type of PhysicsBody that can be moved and can be effected by gravity and friction. + * @since 2.0.0 + */ + export type KinematicBody = 'KinematicBody'; + + /** + * @memberof Duck.Types.PhysicsBody.KinematicBody + * @description A type of PhysicsBody that cannot be moved but can be effected by gravity and friction. + * @since 2.0.0 + */ + export type RigidBody = 'RigidBody'; + + /** + * @memberof Duck.Types.PhysicsBody.KinematicBody + * @description A type of PhysicsBody that cannot be moved and cannot be effected by gravity and friction. + * @since 2.0.0 + */ + export type StaticBody = 'StaticBody'; + } + + export namespace Animation { + export interface Config { + /** + * @memberof Duck.Types.Animation.Config + * @description Key / Name of Animation + * @type string + * @since 2.0.0 + */ + key: string; + + /** + * @memberof Duck.Types.Animation.Config + * @description Frames of the Animation, objects that are later converted to AnimationFrame + * @type Duck.Types.Animation.FrameBase[] + * @since 2.0.0 + */ + frames: FrameBase[]; + + /** + * @memberof Duck.Types.Animation.Config + * @description The frame rate of the animation + * @type number + * @since 2.0.0 + */ + frameRate: number; + + /** + * @memberof Duck.Types.Animation.Config + * @description Determines the amount of times the Animation loops, optional -> defaults: 1 + * @type number + * @since 2.0.0 + */ + repeat?: number; + + /** + * @memberof Duck.Types.Animation.Config + * @description Determines if the animation plays in the opposite direction of its current direction and switches on end, like a yoyo + * optional -> defaults: false + * @type boolean + * @since 2.0.0 + */ + yoyo?: boolean; + + /** + * @memberof Duck.Types.Animation.Config + * @description The amount of milliseconds that is waited for before playing the animation, optional -> defaults: 0 + * @type number + * @since 2.0.0 + */ + delay?: number; + + /** + * @memberof Duck.Types.Animation.Config + * @description Determines if the Animation timers count by the Game.deltaTime, set to true if used in the Scene.update method, and false + * otherwise, optional -> defaults: false + * @type boolean + * @since 2.0.0 + */ + useDelta?: boolean; + } + + export interface FrameBase { + col: number; + row: number; + } + } + + export namespace StateMachine { + export interface ConnectionBase { + from: ConnectionBaseValue; + to: ConnectionBaseValue; + connType: 'one' | 'loop'; + } + + export interface ConnectionBaseValue { + key: string; + vector: Vector2Class; + autoAdvance?: boolean; + } + + export interface Config { + defaultState: string; + connections: ConnectionBase[]; + } + } + + export namespace KeyboardInput { + export interface KeyBase { + keyCode: number; + descriptor: string; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + keyDown?: (e: KeyboardEvent) => any; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + keyUp?: (e: KeyboardEvent) => any; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + keyJustPressed?: (e: KeyboardEvent) => any; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + keyState?: (e: KeyboardEvent, state: boolean) => any; + } + } + + export namespace MouseInput { + export interface MouseBase { + button: 0 | 1 | 2 | 3 | 4; + descriptor: string; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + mouseDown?: (e: MouseEvent) => any; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + mouseUp?: (e: MouseEvent) => any; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + mouseMove?: (e: MouseEvent) => any; + } + } + + export namespace Camera { + export interface CullingOptions { + /** + * @memberof Duck.Types.Camera.CullingOptions + * @description Determines if the visibility of the renderable is preserved, renderable's culled property will only be modified instead + * of the visibility property, this keeps hidden renderables hidden and visible renderables based on the culled property + * @default true + * @type boolean + * @since 2.1.0 + */ + preserveVisibility?: boolean; + + /** + * @memberof Duck.Types.Camera.CullingOptions + * @description Determines if the enabled property of PhysicsBodies will be modified base on if the renderable is culled + * @default true + * @type boolean + * @since 2.1.0 + */ + modifyPhysicsEnable?: boolean; + } + } + + export namespace TextureAtlas { + export interface FrameData { + key: string; + x: number; + y: number; + w: number; + h: number; + } + + export interface JSONSchema { + name: string; + data: FrameData[]; + } + } + + export namespace Math { + export interface Vector2Like { + x: number; + y: number; + } + + export interface Vector2LikeOptional { + x?: number; + y?: number; + } + + export interface BoundsLike extends Vector2Like { + w: number; + h: number; + } + } + + export namespace Helper { + type ArrayLengthMutationKeys = + | 'splice' + | 'push' + | 'pop' + | 'shift' + | 'unshift' + | number; + type ArrayItems> = T extends Array + ? TItems + : never; + export type FixedLengthArray = Pick< + T, + Exclude + > & { [Symbol.iterator]: () => IterableIterator> }; + } + } } // export @@ -1158,8 +1068,8 @@ export namespace Duck { * @since 1.0.0-beta */ const DuckEngine = { - Game: GameClass, - Scene: SceneClass, + Game: GameClass, + Scene: SceneClass, }; export default DuckEngine; diff --git a/src/utils/averageArray.ts b/src/utils/averageArray.ts index 8592da3d..16f6b5dd 100644 --- a/src/utils/averageArray.ts +++ b/src/utils/averageArray.ts @@ -1,3 +1,3 @@ export default function averageArray(v: number[]) { - return v.reduce((a, b) => a + b) / v.length; + return v.reduce((a, b) => a + b) / v.length; } diff --git a/src/utils/clipImage.ts b/src/utils/clipImage.ts index dafe69e0..2b7918a9 100644 --- a/src/utils/clipImage.ts +++ b/src/utils/clipImage.ts @@ -1,41 +1,31 @@ export default function clipImage( - image: HTMLImageElement, - clipX: number, - clipY: number, - clipW: number, - clipH: number, - onComplete: (image: HTMLImageElement) => void, - onFail: () => void + image: HTMLImageElement, + clipX: number, + clipY: number, + clipW: number, + clipH: number, + onComplete: (image: HTMLImageElement) => void, + onFail: () => void ) { - const canvas = document.createElement('canvas'); - const ctx = canvas.getContext('2d'); - let data = '__EMPTY__'; + const canvas = document.createElement('canvas'); + const ctx = canvas.getContext('2d'); + let data = '__EMPTY__'; - canvas.width = clipW; - canvas.height = clipH; + canvas.width = clipW; + canvas.height = clipH; - image.onload = () => { - if (ctx) { - ctx.drawImage( - image, - clipX, - clipY, - clipW, - clipH, - 0, - 0, - clipW, - clipH - ); - data = canvas.toDataURL(); + image.onload = () => { + if (ctx) { + ctx.drawImage(image, clipX, clipY, clipW, clipH, 0, 0, clipW, clipH); + data = canvas.toDataURL(); - const img = new Image(); - img.setAttribute('src', data); + const img = new Image(); + img.setAttribute('src', data); - onComplete(img); - } else { - data = '__FAILED__'; - onFail(); - } - }; + onComplete(img); + } else { + data = '__FAILED__'; + onFail(); + } + }; } diff --git a/src/utils/cloneClass.ts b/src/utils/cloneClass.ts index 9b9a434d..4fe2baed 100644 --- a/src/utils/cloneClass.ts +++ b/src/utils/cloneClass.ts @@ -1,6 +1,6 @@ export default function cloneClass(original: t): t { - return Object.assign( - Object.create(Object.getPrototypeOf(original)), - original - ); + return Object.assign( + Object.create(Object.getPrototypeOf(original)), + original + ); } diff --git a/src/utils/convertURItoBlob.ts b/src/utils/convertURItoBlob.ts index aa670293..1da71d68 100644 --- a/src/utils/convertURItoBlob.ts +++ b/src/utils/convertURItoBlob.ts @@ -1,18 +1,18 @@ export default function convertURItoBlob(dataURI: string) { - // convert base64 to raw binary data held in a string - const byteString = window.atob(dataURI.split(',')[1]); + // convert base64 to raw binary data held in a string + const byteString = window.atob(dataURI.split(',')[1]); - // separate out the mime component - const mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0]; + // separate out the mime component + const mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0]; - // write the bytes of the string to an ArrayBuffer - const arrayBuffer = new ArrayBuffer(byteString.length); - const _ia = new Uint8Array(arrayBuffer); - for (let i = 0; i < byteString.length; i++) { - _ia[i] = byteString.charCodeAt(i); - } + // write the bytes of the string to an ArrayBuffer + const arrayBuffer = new ArrayBuffer(byteString.length); + const _ia = new Uint8Array(arrayBuffer); + for (let i = 0; i < byteString.length; i++) { + _ia[i] = byteString.charCodeAt(i); + } - const dataView = new DataView(arrayBuffer); - const blob = new Blob([dataView], { type: mimeString }); - return blob; + const dataView = new DataView(arrayBuffer); + const blob = new Blob([dataView], { type: mimeString }); + return blob; } diff --git a/src/utils/degToRadians.ts b/src/utils/degToRadians.ts index 4c7c5a9d..8c0183ed 100644 --- a/src/utils/degToRadians.ts +++ b/src/utils/degToRadians.ts @@ -1,3 +1,3 @@ export default function degToRadians(degrees: number) { - return (degrees * Math.PI) / 180; + return (degrees * Math.PI) / 180; } diff --git a/src/utils/detectBrowser.ts b/src/utils/detectBrowser.ts index bf6dbbfd..47dee1bc 100644 --- a/src/utils/detectBrowser.ts +++ b/src/utils/detectBrowser.ts @@ -2,62 +2,59 @@ //@ts-nocheck export default function detectBrowser() { - // Opera 8.0+ - const isOpera = - (!!window.opr && !!opr.addons) || - !!window.opera || - navigator.userAgent.indexOf(' OPR/') >= 0; - - // Firefox 1.0+ - const isFirefox = typeof InstallTrigger !== 'undefined'; - - // Safari 3.0+ "[object HTMLElementConstructor]" - const isSafari = - /constructor/i.test(window.HTMLElement) || - (function (p) { - return p.toString() === '[object SafariRemoteNotification]'; - })( - !window['safari'] || - (typeof safari !== 'undefined' && - window['safari'].pushNotification) - ); - - // Internet Explorer 6-11 - const isIE = /*@cc_on!@*/ false || !!document.documentMode; - - // Edge 20+ - const isEdge = !isIE && !!window.StyleMedia; - - // Chrome 1 - 79 - const isChrome = - !!window.chrome && - (!!window.chrome.webstore || !!window.chrome.runtime); - - // Edge (based on chromium) detection - const isEdgeChromium = - isChrome && navigator.userAgent.indexOf('Edg') !== -1; - - // Blink engine detection - const isBlink = (isChrome || isOpera) && !!window.CSS; - - const res = { - isOpera: isOpera ? 'Opera' : false, - isFirefox: isFirefox ? 'Firefox' : false, - isIE: isIE ? 'IE' : false, - isEdge: isEdge ? 'Edge' : false, - isEdgeChromium: isEdgeChromium ? 'EdgeChromium' : false, - isBlink: isBlink ? 'Blink' : false, - isSafari: isSafari ? 'Safari' : false, - }; - - return ( - res.isOpera || - res.isFirefox || - res.isIE || - res.isEdge || - res.isEdgeChromium || - res.isBlink || - res.isSafari || - 'Unknown' - ); + // Opera 8.0+ + const isOpera = + (!!window.opr && !!opr.addons) || + !!window.opera || + navigator.userAgent.indexOf(' OPR/') >= 0; + + // Firefox 1.0+ + const isFirefox = typeof InstallTrigger !== 'undefined'; + + // Safari 3.0+ "[object HTMLElementConstructor]" + const isSafari = + /constructor/i.test(window.HTMLElement) || + (function (p) { + return p.toString() === '[object SafariRemoteNotification]'; + })( + !window['safari'] || + (typeof safari !== 'undefined' && window['safari'].pushNotification) + ); + + // Internet Explorer 6-11 + const isIE = /*@cc_on!@*/ false || !!document.documentMode; + + // Edge 20+ + const isEdge = !isIE && !!window.StyleMedia; + + // Chrome 1 - 79 + const isChrome = + !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime); + + // Edge (based on chromium) detection + const isEdgeChromium = isChrome && navigator.userAgent.indexOf('Edg') !== -1; + + // Blink engine detection + const isBlink = (isChrome || isOpera) && !!window.CSS; + + const res = { + isOpera: isOpera ? 'Opera' : false, + isFirefox: isFirefox ? 'Firefox' : false, + isIE: isIE ? 'IE' : false, + isEdge: isEdge ? 'Edge' : false, + isEdgeChromium: isEdgeChromium ? 'EdgeChromium' : false, + isBlink: isBlink ? 'Blink' : false, + isSafari: isSafari ? 'Safari' : false, + }; + + return ( + res.isOpera || + res.isFirefox || + res.isIE || + res.isEdge || + res.isEdgeChromium || + res.isBlink || + res.isSafari || + 'Unknown' + ); } diff --git a/src/utils/extractNumbers.ts b/src/utils/extractNumbers.ts index 84e09ecd..de8642b9 100644 --- a/src/utils/extractNumbers.ts +++ b/src/utils/extractNumbers.ts @@ -1,3 +1,3 @@ export default function extractNumbers(string: string) { - return Number(string.match(/\d/g)?.join('')); + return Number(string.match(/\d/g)?.join('')); } diff --git a/src/utils/getImageData.ts b/src/utils/getImageData.ts index 129e5429..3c632c2e 100644 --- a/src/utils/getImageData.ts +++ b/src/utils/getImageData.ts @@ -1,25 +1,25 @@ export default function getImageData( - image: HTMLImageElement, - w: number, - h: number, - onComplete: (data: string) => void, - onFail: () => void + image: HTMLImageElement, + w: number, + h: number, + onComplete: (data: string) => void, + onFail: () => void ) { - const canvas = document.createElement('canvas'); - const ctx = canvas.getContext('2d'); - let data = '__EMPTY__'; + const canvas = document.createElement('canvas'); + const ctx = canvas.getContext('2d'); + let data = '__EMPTY__'; - canvas.width = w; - canvas.height = h; + canvas.width = w; + canvas.height = h; - image.onload = () => { - if (ctx) { - ctx.drawImage(image, 0, 0); - data = canvas.toDataURL(); - onComplete(data); - } else { - data = '__FAILED__'; - onFail(); - } - }; + image.onload = () => { + if (ctx) { + ctx.drawImage(image, 0, 0); + data = canvas.toDataURL(); + onComplete(data); + } else { + data = '__FAILED__'; + onFail(); + } + }; } diff --git a/src/utils/hexNumberToString.ts b/src/utils/hexNumberToString.ts new file mode 100644 index 00000000..7c3689c5 --- /dev/null +++ b/src/utils/hexNumberToString.ts @@ -0,0 +1,3 @@ +export default function hexNumberToString(hex: number) { + return hex.toString(16); +} diff --git a/src/utils/smoothArray.ts b/src/utils/smoothArray.ts index 723e5de2..ec059682 100644 --- a/src/utils/smoothArray.ts +++ b/src/utils/smoothArray.ts @@ -1,17 +1,14 @@ import averageArray from './averageArray'; export default function smoothOut(vector: number[], variance: number) { - const t_avg = averageArray(vector) * variance; - const ret = Array(vector.length); - for (let i = 0; i < vector.length; i++) { - (function () { - const prev = i > 0 ? ret[i - 1] : vector[i]; - const next = i < vector.length ? vector[i] : vector[i - 1]; - ret[i] = averageArray([ - t_avg, - averageArray([prev, vector[i], next]), - ]); - })(); - } - return averageArray(ret); + const t_avg = averageArray(vector) * variance; + const ret = Array(vector.length); + for (let i = 0; i < vector.length; i++) { + (function () { + const prev = i > 0 ? ret[i - 1] : vector[i]; + const next = i < vector.length ? vector[i] : vector[i - 1]; + ret[i] = averageArray([t_avg, averageArray([prev, vector[i], next])]); + })(); + } + return averageArray(ret); } diff --git a/src/utils/supportsWebGL.ts b/src/utils/supportsWebGL.ts index 3fa5ec6e..b9ae1536 100644 --- a/src/utils/supportsWebGL.ts +++ b/src/utils/supportsWebGL.ts @@ -1,15 +1,15 @@ export default function supportsWebGL() { - // Create canvas element. The canvas is not added to the - // document itself, so it is never displayed in the - // browser window. - const canvas = document.createElement('canvas'); - // Get WebGLRenderingContext from canvas element. - const gl = - canvas.getContext('webgl') || canvas.getContext('experimental-webgl'); - // Report the result. - if (gl && gl instanceof WebGLRenderingContext) { - return true; - } else { - return false; - } + // Create canvas element. The canvas is not added to the + // document itself, so it is never displayed in the + // browser window. + const canvas = document.createElement('canvas'); + // Get WebGLRenderingContext from canvas element. + const gl = + canvas.getContext('webgl') || canvas.getContext('experimental-webgl'); + // Report the result. + if (gl && gl instanceof WebGLRenderingContext) { + return true; + } else { + return false; + } } diff --git a/src/utils/swapElement.ts b/src/utils/swapElement.ts index 0d20a521..64697873 100644 --- a/src/utils/swapElement.ts +++ b/src/utils/swapElement.ts @@ -1,8 +1,8 @@ export default function swapElement( - array: t[], - index1: number, - index2: number + array: t[], + index1: number, + index2: number ) { - array[index1] = array.splice(index2, 1, array[index1])[0]; - return array; + array[index1] = array.splice(index2, 1, array[index1])[0]; + return array; } diff --git a/src/utils/uniqueID.ts b/src/utils/uniqueID.ts index 01e44448..620c0826 100644 --- a/src/utils/uniqueID.ts +++ b/src/utils/uniqueID.ts @@ -1,20 +1,20 @@ // https://gist.github.com/gordonbrander/2230317#gistcomment-1618310 export default function uniqueID() { - function chr4() { - return Math.random().toString(16).slice(-4); - } - return ( - chr4() + - chr4() + - '-' + - chr4() + - '-' + - chr4() + - '-' + - chr4() + - '-' + - chr4() + - chr4() + - chr4() - ); + function chr4() { + return Math.random().toString(16).slice(-4); + } + return ( + chr4() + + chr4() + + '-' + + chr4() + + '-' + + chr4() + + '-' + + chr4() + + '-' + + chr4() + + chr4() + + chr4() + ); } diff --git a/tests/README.md b/tests/README.md index 3f3789eb..d5aec3fe 100644 --- a/tests/README.md +++ b/tests/README.md @@ -1,13 +1,13 @@ -# DuckEngine Tests - -In this directory are examples of tests as pictures, videos, or other files. - -Feel free to contribute more test examples by reading [this guide.](/README.md#developers-guide) - -## Links - -Online versions to view the videos and images. - -### Loading Tests - -- [Cache Test](https://vimeo.com/658668669) +# DuckEngine Tests + +In this directory are examples of tests as pictures, videos, or other files. + +Feel free to contribute more test examples by reading [this guide.](/README.md#developers-guide) + +## Links + +Online versions to view the videos and images. + +### Loading Tests + +- [Cache Test](https://vimeo.com/658668669) diff --git a/tsconfig.json b/tsconfig.json index 369d0bcd..76abc3ca 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,16 +1,16 @@ -{ - "compilerOptions": { - "target": "es6", - "module": "es6", - "moduleResolution": "node", - "removeComments": false, - "noImplicitAny": true, - "outDir": "lib", - "strict": true, - "declaration": true, - "declarationDir": "dist/", - "experimentalDecorators": true - }, - "include": ["src/**/*"], - "exclude": ["node_modules", "lib", "dist"] -} +{ + "compilerOptions": { + "target": "es6", + "module": "es6", + "moduleResolution": "node", + "removeComments": false, + "noImplicitAny": true, + "outDir": "lib", + "strict": true, + "declaration": true, + "declarationDir": "dist/", + "experimentalDecorators": true + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "lib", "dist"] +} diff --git a/webpack.config.js b/webpack.config.js index c29b6a8e..046f2822 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,57 +1,58 @@ -const path = require('path'); -const webpack = require('webpack'); -const version = require('./package.json').version - -const banner = ` -DuckEngine ${version} - -https://github.com/ksplatdev/DuckEngine - -MIT License - -Copyright (c) 2021 Bleart Emini - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -` - -module.exports = { - mode: 'production', - - entry: './lib/index.js', - - output: { - path: __dirname + '/dist/', - filename: 'index.js', - libraryTarget: 'module', - }, - plugins: [ - new webpack.BannerPlugin({ - banner - }) - ], - optimization: { - minimize: false, - }, - experiments: { - outputModule: true, - }, - performance: { - hints: false - } -}; +const path = require('path'); +const webpack = require('webpack'); +const version = require('./package.json').version; +const buildNum = require('./buildUtils/buildNum'); + +const banner = ` +DuckEngine ${version}.${buildNum()} + +https://github.com/ksplatdev/DuckEngine + +MIT License + +Copyright (c) 2022-2023 Bleart Emini + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +`; + +module.exports = { + mode: 'production', + + entry: './lib/index.js', + + output: { + path: __dirname + '/dist/', + filename: 'index.js', + libraryTarget: 'module', + }, + plugins: [ + new webpack.BannerPlugin({ + banner, + }), + ], + optimization: { + minimize: false, + }, + experiments: { + outputModule: true, + }, + performance: { + hints: false, + }, +}; diff --git a/wiki-pages/getting-started.md b/wiki-pages/getting-started.md index 227b4a68..371476e9 100644 --- a/wiki-pages/getting-started.md +++ b/wiki-pages/getting-started.md @@ -1,349 +1,349 @@ -# DuckEngine Wiki | Getting Started - -In this tutorial, you will make a DuckEngine game and basic scene with TypeScript. - -You will learn: - -- How to create a Game instance -- How to create a Scene instance -- How to preload Assets -- How to create Sprites and Cameras -- How to create Animations -- How Scenes are loaded, rendered, and updated -- How to add input and movement -- How to play animations -- And more basic concepts of DuckEngine - -## Setup - -Download DuckEngine from any of [these sources](README.md#download). In this demo we will download DuckEngine from npm by -running `npm install duckengine` or `yarn add duckengine`. - -Next setup a new project with a bundler such as webpack or parcel. - -## Making a Simple Game - -### Creating the Game - -To create a DuckEngine game, we create a new instance and run Game.start(). - -First we will set up the game config. - -```ts -import DuckEngine, { Duck } from 'duckengine'; -import MyScene from './myScene'; // we will create this scene later - -const config: Duck.Types.Game.Config = { - canvas: myCanvas, // canvas to render to - defaultScene: 'MyScene', // default scene key - background: '#ffffff', // background style of canvas - physics: { - enabled: true, // enable physics - }, - debug: true, // enable debug messages -} - -``` - -Create a game instance with the config. - -```ts -const game = new DuckEngine.Game(config); -``` - -Add a scene to the game. (We will create the scene later.) - -```ts -game.scenes.add([new MyScene(game)]) -``` - -Start the game. - -```ts -game.start(); -``` - -### Creating the Scene - -To create a DuckEngine scene, we create a class and extend it. - -```ts -import DuckEngine, { Duck } from 'duckengine'; - -export default class MyScene extends DuckEngine.Scene { - constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { - super( - game, // game instance - 'MyScene', // scene key - true, // set to visible - ) - } -} - -``` - -Now we will preload some assets. - -```ts -... - -class MyScene extends DuckEngine.Scene { - constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { - ... - } - - // gets called on Game.start - public async preload() { - await this.loader.loadTexture( - 'mySpriteSheet.png', // path to image - 'myTextureKey', // key to save texture as - 64, // width - 64 // height - ) - } -} -``` - -Use the preloaded asset to create a sprite and a camera. - -```ts -... - -class MyScene extends DuckEngine.Scene { - public mySprite!: Duck.TypeClasses.GameObjects.Sprite; - public myCamera!: Duck.TypeClasses.Cameras.Camera; - - constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { - ... - } - - public async preload() { - await this.loader.loadTexture( - 'mySpriteSheet.png', // path to image - 'myTextureKey', // key to save texture as - 64, // width - 64 // height - ) - } - - // called after preload in Game.start - public create() { - // create sprite with a sprite sheet and animations - this.mySprite = this.add.gameobject.sprite( - 150, // x - 200, // y - 64, // width - 64, // height - 'myTextureKey', // texture key from preload - // all of the following are optional and are configuration for the sprite if the texture is a spritesheet - 16, // frame width - 16, // frame height - 1, // amount of rows in preloaded spritesheet texture - 4, // amount of columns in preloaded spritesheet texture - 1, // current row to set as default - 1, // current column to set as default - ) - - // create main camera - this.myCamera = this.add.mainCamera(); - - // start follow - this.myCamera.startFollow(this.mySprite); - - // set zoom - this.myCamera.setZoom(700) // 1000 is default - } -} -``` - -Create animations for the sprite. - -```ts -... - -class MyScene extends DuckEngine.Scene { - public mySprite!: Duck.TypeClasses.GameObjects.Sprite; - public myCamera!: Duck.TypeClasses.Cameras.Camera; - - constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { - ... - } - - public async preload() { - await this.loader.loadTexture( - 'mySpriteSheet.png', // path to image - 'myTextureKey', // key to save texture as - 64, // width - 64 // height - ) - } - - // called after preload in Game.start - public create() { - // create sprite with a sprite sheet - this.mySprite = ...; - - // create main camera - this.myCamera = ...; - - // start follow - this.myCamera.startFollow(this.mySprite); - - // set zoom - this.myCamera.setZoom(700) // 1000 is default - - // add jump animation - this.mySprite.anims.add({ - key: 'jump', // key of animation - // frames of animation - frames: [ - { - col: 2, // not zero-based like arrays - row: 1, // not zero-based like arrays - }, - { - col: 3, - row: 1, - }, - { - col: 4, - row: 1, - }, - { - col: 1, - row: 1, - }, - ], - frameRate: 3, // frame rate of animation - useDelta: true, // set to true so that animation can be played in loop - repeat: 1, // amount of times to repeat - }) - - // set the selected animation to jump, - //(does not play animation, just sets the selected animation so that this.mySprite.anims.play() plays the jump animation) - this.mySprite.anims.setCurrentAnimation('jump') - } -} -``` - -Add input and keys. - -```ts -... - -class MyScene extends DuckEngine.Scene { - public mySprite!: Duck.TypeClasses.GameObjects.Sprite; - public myCamera!: Duck.TypeClasses.Cameras.Camera; - public myInput!: Duck.TypeClasses.Input.KeyboardInput; - - constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { - ... - } - - public async preload() { - await this.loader.loadTexture( - 'mySpriteSheet.png', // path to image - 'myTextureKey', // key to save texture as - 64, // width - 64 // height - ) - } - - // called after preload in Game.start - public create() { - // create sprite with a sprite sheet - this.mySprite = ...; - - // create main camera - this.myCamera = ...; - - // start follow - this.myCamera.startFollow(this.mySprite); - - // set zoom - this.myCamera.setZoom(700) // 1000 is default - - // add jump animation - this.mySprite.anims.add(...) - - // make input - this.myInput = this.add.input().createKeyboardInput(); - - // add keys - this.myInput.addKeys( - [ - { - keyCode: 32, // spacebar keycode - descriptor: 'JUMP', // descriptor/key that is used to refer to this key - }, - { - keyCode: 83, // s - descriptor: "S" - }, - { - keyCode: 65, // a - descriptor: "A" - }, - { - keyCode: 68, // d - descriptor: "D" - }, - ] - ) - } -} -``` - -Use input to move sprite. - -```ts -... - -class MyScene extends DuckEngine.Scene { - public mySprite!: Duck.TypeClasses.GameObjects.Sprite; - public myCamera!: Duck.TypeClasses.Cameras.Camera; - public myInput!: Duck.TypeClasses.Input.KeyboardInput; - - constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { - ... - } - - public async preload() { - await this.loader.loadTexture( - 'mySpriteSheet.png', // path to image - 'myTextureKey', // key to save texture as - 64, // width - 64 // height - ) - } - - // called after preload in Game.start - public create() { - ... - } - - // called on every frame after physics tick - public update(deltaTime: number /* time since last frame */) { - // gravity - this.mySprite.setVelocity('y' 150) // move down by 100px per second - - if (this.myInput.inputs.JUMP.isJustPressed) { - this.mySprite.setVelocity('y', -450) // move up by 450px per second - - // play jump animation - this.mySprite.anims.play() // plays current animation which is jump as we set the current animation to jump earlier - } - if (this.myInput.inputs.S.state) { - this.mySprite.setVelocity("y", 300); // move down by 300px per second - } - if (this.myInput.inputs.A.state) { - this.mySprite.setVelocity("x", -300); // move left by 300px per second - } - if (this.myInput.inputs.D.state) { - this.mySprite.setVelocity("x", 300); // move right by 300px per second - } - } -} -``` - -Now you have a sprite that can move, jump and animate on the screen! +# DuckEngine Wiki | Getting Started + +In this tutorial, you will make a DuckEngine game and basic scene with TypeScript. + +You will learn: + +- How to create a Game instance +- How to create a Scene instance +- How to preload Assets +- How to create Sprites and Cameras +- How to create Animations +- How Scenes are loaded, rendered, and updated +- How to add input and movement +- How to play animations +- And more basic concepts of DuckEngine + +## Setup + +Download DuckEngine from any of [these sources](README.md#download). In this demo we will download DuckEngine from npm by +running `npm install duckengine` or `yarn add duckengine`. + +Next setup a new project with a bundler such as webpack or parcel. + +## Making a Simple Game + +### Creating the Game + +To create a DuckEngine game, we create a new instance and run Game.start(). + +First we will set up the game config. + +```ts +import DuckEngine, { Duck } from 'duckengine'; +import MyScene from './myScene'; // we will create this scene later + +const config: Duck.Types.Game.Config = { + canvas: myCanvas, // canvas to render to + defaultScene: 'MyScene', // default scene key + background: '#ffffff', // background style of canvas + physics: { + enabled: true, // enable physics + }, + debug: true, // enable debug messages +} + +``` + +Create a game instance with the config. + +```ts +const game = new DuckEngine.Game(config); +``` + +Add a scene to the game. (We will create the scene later.) + +```ts +game.scenes.add([new MyScene(game)]) +``` + +Start the game. + +```ts +game.start(); +``` + +### Creating the Scene + +To create a DuckEngine scene, we create a class and extend it. + +```ts +import DuckEngine, { Duck } from 'duckengine'; + +export default class MyScene extends DuckEngine.Scene { + constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { + super( + game, // game instance + 'MyScene', // scene key + true, // set to visible + ) + } +} + +``` + +Now we will preload some assets. + +```ts +... + +class MyScene extends DuckEngine.Scene { + constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { + ... + } + + // gets called on Game.start + public async preload() { + await this.loader.loadTexture( + 'mySpriteSheet.png', // path to image + 'myTextureKey', // key to save texture as + 64, // width + 64 // height + ) + } +} +``` + +Use the preloaded asset to create a sprite and a camera. + +```ts +... + +class MyScene extends DuckEngine.Scene { + public mySprite!: Duck.TypeClasses.GameObjects.Sprite; + public myCamera!: Duck.TypeClasses.Cameras.Camera; + + constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { + ... + } + + public async preload() { + await this.loader.loadTexture( + 'mySpriteSheet.png', // path to image + 'myTextureKey', // key to save texture as + 64, // width + 64 // height + ) + } + + // called after preload in Game.start + public create() { + // create sprite with a sprite sheet and animations + this.mySprite = this.add.gameobject.sprite( + 150, // x + 200, // y + 64, // width + 64, // height + 'myTextureKey', // texture key from preload + // all of the following are optional and are configuration for the sprite if the texture is a spritesheet + 16, // frame width + 16, // frame height + 1, // amount of rows in preloaded spritesheet texture + 4, // amount of columns in preloaded spritesheet texture + 1, // current row to set as default + 1, // current column to set as default + ) + + // create main camera + this.myCamera = this.add.mainCamera(); + + // start follow + this.myCamera.startFollow(this.mySprite); + + // set zoom + this.myCamera.setZoom(700) // 1000 is default + } +} +``` + +Create animations for the sprite. + +```ts +... + +class MyScene extends DuckEngine.Scene { + public mySprite!: Duck.TypeClasses.GameObjects.Sprite; + public myCamera!: Duck.TypeClasses.Cameras.Camera; + + constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { + ... + } + + public async preload() { + await this.loader.loadTexture( + 'mySpriteSheet.png', // path to image + 'myTextureKey', // key to save texture as + 64, // width + 64 // height + ) + } + + // called after preload in Game.start + public create() { + // create sprite with a sprite sheet + this.mySprite = ...; + + // create main camera + this.myCamera = ...; + + // start follow + this.myCamera.startFollow(this.mySprite); + + // set zoom + this.myCamera.setZoom(700) // 1000 is default + + // add jump animation + this.mySprite.anims.add({ + key: 'jump', // key of animation + // frames of animation + frames: [ + { + col: 2, // not zero-based like arrays + row: 1, // not zero-based like arrays + }, + { + col: 3, + row: 1, + }, + { + col: 4, + row: 1, + }, + { + col: 1, + row: 1, + }, + ], + frameRate: 3, // frame rate of animation + useDelta: true, // set to true so that animation can be played in loop + repeat: 1, // amount of times to repeat + }) + + // set the selected animation to jump, + //(does not play animation, just sets the selected animation so that this.mySprite.anims.play() plays the jump animation) + this.mySprite.anims.setCurrentAnimation('jump') + } +} +``` + +Add input and keys. + +```ts +... + +class MyScene extends DuckEngine.Scene { + public mySprite!: Duck.TypeClasses.GameObjects.Sprite; + public myCamera!: Duck.TypeClasses.Cameras.Camera; + public myInput!: Duck.TypeClasses.Input.KeyboardInput; + + constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { + ... + } + + public async preload() { + await this.loader.loadTexture( + 'mySpriteSheet.png', // path to image + 'myTextureKey', // key to save texture as + 64, // width + 64 // height + ) + } + + // called after preload in Game.start + public create() { + // create sprite with a sprite sheet + this.mySprite = ...; + + // create main camera + this.myCamera = ...; + + // start follow + this.myCamera.startFollow(this.mySprite); + + // set zoom + this.myCamera.setZoom(700) // 1000 is default + + // add jump animation + this.mySprite.anims.add(...) + + // make input + this.myInput = this.add.input().createKeyboardInput(); + + // add keys + this.myInput.addKeys( + [ + { + keyCode: 32, // spacebar keycode + descriptor: 'JUMP', // descriptor/key that is used to refer to this key + }, + { + keyCode: 83, // s + descriptor: "S" + }, + { + keyCode: 65, // a + descriptor: "A" + }, + { + keyCode: 68, // d + descriptor: "D" + }, + ] + ) + } +} +``` + +Use input to move sprite. + +```ts +... + +class MyScene extends DuckEngine.Scene { + public mySprite!: Duck.TypeClasses.GameObjects.Sprite; + public myCamera!: Duck.TypeClasses.Cameras.Camera; + public myInput!: Duck.TypeClasses.Input.KeyboardInput; + + constructor(game: Duck.TypeClasses.Game.TypeClasses.Game) { + ... + } + + public async preload() { + await this.loader.loadTexture( + 'mySpriteSheet.png', // path to image + 'myTextureKey', // key to save texture as + 64, // width + 64 // height + ) + } + + // called after preload in Game.start + public create() { + ... + } + + // called on every frame after physics tick + public update(deltaTime: number /* time since last frame */) { + // gravity + this.mySprite.setVelocity('y' 150) // move down by 150px per second + + if (this.myInput.inputs.JUMP.isJustPressed) { + this.mySprite.setVelocity('y', -450) // move up by 450px per second + + // play jump animation + this.mySprite.anims.play() // plays current animation which is jump as we set the current animation to jump earlier + } + if (this.myInput.inputs.S.state) { + this.mySprite.setVelocity("y", 300); // move down by 300px per second + } + if (this.myInput.inputs.A.state) { + this.mySprite.setVelocity("x", -300); // move left by 300px per second + } + if (this.myInput.inputs.D.state) { + this.mySprite.setVelocity("x", 300); // move right by 300px per second + } + } +} +``` + +Now you have a sprite that can move, jump and animate on the screen! diff --git a/yarn.lock b/yarn.lock index 84b6788d..0a1e0a2e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,2667 +1,2856 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@babel/code-frame@7.12.11": - version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" - integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== - dependencies: - "@babel/highlight" "^7.10.4" - -"@babel/code-frame@^7.0.0": - version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" - integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== - dependencies: - "@babel/highlight" "^7.16.7" - -"@babel/helper-validator-identifier@^7.16.7": - version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" - integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== - -"@babel/highlight@^7.10.4", "@babel/highlight@^7.16.7": - version "7.16.10" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" - integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== - dependencies: - "@babel/helper-validator-identifier" "^7.16.7" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@blakeembrey/deque@^1.0.5": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@blakeembrey/deque/-/deque-1.0.5.tgz#f4fa17fc5ee18317ec01a763d355782c7b395eaf" - integrity sha512-6xnwtvp9DY1EINIKdTfvfeAtCYw4OqBZJhtiqkT3ivjnEfa25VQ3TsKvaFfKm8MyGIEfE95qLe+bNEt3nB0Ylg== - -"@blakeembrey/template@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@blakeembrey/template/-/template-1.0.0.tgz#bf8828bc3ae8004d97904d78f64e3cc2cd216438" - integrity sha512-J6WGZqCLdRMHUkyRG6fBSIFJ0rL60/nsQNh5rQvsYZ5u0PsKw6XQcJcA3DWvd9cN3j/IQx5yB1fexhCafwwUUw== - -"@discoveryjs/json-ext@^0.5.0": - version "0.5.6" - resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz#d5e0706cf8c6acd8c6032f8d54070af261bbbb2f" - integrity sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA== - -"@eslint/eslintrc@^0.4.3": - version "0.4.3" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" - integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== - dependencies: - ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" - globals "^13.9.0" - ignore "^4.0.6" - import-fresh "^3.2.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" - strip-json-comments "^3.1.1" - -"@humanwhocodes/config-array@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" - integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== - dependencies: - "@humanwhocodes/object-schema" "^1.2.0" - debug "^4.1.1" - minimatch "^3.0.4" - -"@humanwhocodes/object-schema@^1.2.0": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" - integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== - -"@nodelib/fs.scandir@2.1.5": - version "2.1.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" - integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== - dependencies: - "@nodelib/fs.stat" "2.0.5" - run-parallel "^1.1.9" - -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" - integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== - -"@nodelib/fs.walk@^1.2.3": - version "1.2.8" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" - integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== - dependencies: - "@nodelib/fs.scandir" "2.1.5" - fastq "^1.6.0" - -"@tokenizer/token@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@tokenizer/token/-/token-0.3.0.tgz#fe98a93fe789247e998c75e74e9c7c63217aa276" - integrity sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A== - -"@types/css-font-loading-module@^0.0.6": - version "0.0.6" - resolved "https://registry.yarnpkg.com/@types/css-font-loading-module/-/css-font-loading-module-0.0.6.tgz#1ac3417ed31eeb953134d29b56bca921644b87c0" - integrity sha512-MBvSMSxXFtIukyXRU3HhzL369rIWaqMVQD5kmDCYIFFD6Fe3lJ4c9UnLD02MLdTp7Z6ti7rO3SQtuDo7C80mmw== - -"@types/eslint-scope@^3.7.3": - version "3.7.3" - resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.3.tgz#125b88504b61e3c8bc6f870882003253005c3224" - integrity sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g== - dependencies: - "@types/eslint" "*" - "@types/estree" "*" - -"@types/eslint@*": - version "8.4.1" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.1.tgz#c48251553e8759db9e656de3efc846954ac32304" - integrity sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA== - dependencies: - "@types/estree" "*" - "@types/json-schema" "*" - -"@types/estree@*", "@types/estree@^0.0.51": - version "0.0.51" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" - integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== - -"@types/json-schema@*", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8": - version "7.0.9" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" - integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== - -"@types/minimist@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" - integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== - -"@types/node@*": - version "17.0.18" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.18.tgz#3b4fed5cfb58010e3a2be4b6e74615e4847f1074" - integrity sha512-eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA== - -"@types/normalize-package-data@^2.4.0": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" - integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== - -"@typescript-eslint/eslint-plugin@^4.31.1": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276" - integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg== - dependencies: - "@typescript-eslint/experimental-utils" "4.33.0" - "@typescript-eslint/scope-manager" "4.33.0" - debug "^4.3.1" - functional-red-black-tree "^1.0.1" - ignore "^5.1.8" - regexpp "^3.1.0" - semver "^7.3.5" - tsutils "^3.21.0" - -"@typescript-eslint/experimental-utils@4.33.0": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd" - integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q== - dependencies: - "@types/json-schema" "^7.0.7" - "@typescript-eslint/scope-manager" "4.33.0" - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/typescript-estree" "4.33.0" - eslint-scope "^5.1.1" - eslint-utils "^3.0.0" - -"@typescript-eslint/parser@^4.31.1": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" - integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== - dependencies: - "@typescript-eslint/scope-manager" "4.33.0" - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/typescript-estree" "4.33.0" - debug "^4.3.1" - -"@typescript-eslint/scope-manager@4.33.0": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3" - integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ== - dependencies: - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/visitor-keys" "4.33.0" - -"@typescript-eslint/types@4.33.0": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72" - integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== - -"@typescript-eslint/typescript-estree@4.33.0": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" - integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA== - dependencies: - "@typescript-eslint/types" "4.33.0" - "@typescript-eslint/visitor-keys" "4.33.0" - debug "^4.3.1" - globby "^11.0.3" - is-glob "^4.0.1" - semver "^7.3.5" - tsutils "^3.21.0" - -"@typescript-eslint/visitor-keys@4.33.0": - version "4.33.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" - integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg== - dependencies: - "@typescript-eslint/types" "4.33.0" - eslint-visitor-keys "^2.0.0" - -"@webassemblyjs/ast@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" - integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== - dependencies: - "@webassemblyjs/helper-numbers" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - -"@webassemblyjs/floating-point-hex-parser@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" - integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== - -"@webassemblyjs/helper-api-error@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" - integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== - -"@webassemblyjs/helper-buffer@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" - integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== - -"@webassemblyjs/helper-numbers@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" - integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== - dependencies: - "@webassemblyjs/floating-point-hex-parser" "1.11.1" - "@webassemblyjs/helper-api-error" "1.11.1" - "@xtuc/long" "4.2.2" - -"@webassemblyjs/helper-wasm-bytecode@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" - integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== - -"@webassemblyjs/helper-wasm-section@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" - integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - -"@webassemblyjs/ieee754@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" - integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" - integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== - dependencies: - "@xtuc/long" "4.2.2" - -"@webassemblyjs/utf8@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" - integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== - -"@webassemblyjs/wasm-edit@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" - integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/helper-wasm-section" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - "@webassemblyjs/wasm-opt" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - "@webassemblyjs/wast-printer" "1.11.1" - -"@webassemblyjs/wasm-gen@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" - integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/ieee754" "1.11.1" - "@webassemblyjs/leb128" "1.11.1" - "@webassemblyjs/utf8" "1.11.1" - -"@webassemblyjs/wasm-opt@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" - integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - -"@webassemblyjs/wasm-parser@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" - integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-api-error" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/ieee754" "1.11.1" - "@webassemblyjs/leb128" "1.11.1" - "@webassemblyjs/utf8" "1.11.1" - -"@webassemblyjs/wast-printer@1.11.1": - version "1.11.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" - integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@xtuc/long" "4.2.2" - -"@webpack-cli/configtest@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-1.1.1.tgz#9f53b1b7946a6efc2a749095a4f450e2932e8356" - integrity sha512-1FBc1f9G4P/AxMqIgfZgeOTuRnwZMten8E7zap5zgpPInnCrP8D4Q81+4CWIch8i/Nf7nXjP0v6CjjbHOrXhKg== - -"@webpack-cli/info@^1.4.1": - version "1.4.1" - resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-1.4.1.tgz#2360ea1710cbbb97ff156a3f0f24556e0fc1ebea" - integrity sha512-PKVGmazEq3oAo46Q63tpMr4HipI3OPfP7LiNOEJg963RMgT0rqheag28NCML0o3GIzA3DmxP1ZIAv9oTX1CUIA== - dependencies: - envinfo "^7.7.3" - -"@webpack-cli/serve@^1.6.1": - version "1.6.1" - resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-1.6.1.tgz#0de2875ac31b46b6c5bb1ae0a7d7f0ba5678dffe" - integrity sha512-gNGTiTrjEVQ0OcVnzsRSqTxaBSr+dmTfm+qJsCDluky8uhdLWep7Gcr62QsAKHTMxjCS/8nEITsmFAhfIx+QSw== - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.2": - version "4.2.2" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" - integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== - -accepts@~1.3.8: - version "1.3.8" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" - integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== - dependencies: - mime-types "~2.1.34" - negotiator "0.6.3" - -acorn-import-assertions@^1.7.6: - version "1.8.0" - resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" - integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== - -acorn-jsx@^5.3.1: - version "5.3.2" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" - integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== - -acorn@^7.4.0: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.4.1: - version "8.7.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" - integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== - -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - -ajv-keywords@^3.5.2: - version "3.5.2" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" - integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== - -ajv@^6.10.0, ajv@^6.12.4, ajv@^6.12.5: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ajv@^8.0.1: - version "8.10.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.10.0.tgz#e573f719bd3af069017e3b66538ab968d040e54d" - integrity sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - -ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== - -ansi-regex@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" - integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -anymatch@~3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" - integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -arg@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" - integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - -astral-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" - integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== - -body-parser@1.19.2: - version "1.19.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.2.tgz#4714ccd9c157d44797b8b5607d72c0b89952f26e" - integrity sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw== - dependencies: - bytes "3.1.2" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.2" - http-errors "1.8.1" - iconv-lite "0.4.24" - on-finished "~2.3.0" - qs "6.9.7" - raw-body "2.4.3" - type-is "~1.6.18" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^3.0.1, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -browserslist@^4.14.5: - version "4.19.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.19.1.tgz#4ac0435b35ab655896c31d53018b6dd5e9e4c9a3" - integrity sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A== - dependencies: - caniuse-lite "^1.0.30001286" - electron-to-chromium "^1.4.17" - escalade "^3.1.1" - node-releases "^2.0.1" - picocolors "^1.0.0" - -buffer-from@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" - integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== - -bytes@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" - integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -camelcase-keys@^7.0.0: - version "7.0.2" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-7.0.2.tgz#d048d8c69448745bb0de6fc4c1c52a30dfbe7252" - integrity sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg== - dependencies: - camelcase "^6.3.0" - map-obj "^4.1.0" - quick-lru "^5.1.1" - type-fest "^1.2.1" - -camelcase@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== - -caniuse-lite@^1.0.30001286: - version "1.0.30001312" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz#e11eba4b87e24d22697dae05455d5aea28550d5f" - integrity sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ== - -chalk@^2.0.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^4.0.0: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chokidar@^3.3.1: - version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== - dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" - -chrome-trace-event@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" - integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== - -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - -clone-deep@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" - integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== - dependencies: - is-plain-object "^2.0.4" - kind-of "^6.0.2" - shallow-clone "^3.0.0" - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -colorette@^2.0.14: - version "2.0.16" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" - integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== - -commander@^2.20.0: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^7.0.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -content-disposition@0.5.4: - version "0.5.4" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" - integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== - dependencies: - safe-buffer "5.2.1" - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" - integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== - -cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -crypto-random-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" - integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== - -debug@2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^4.0.1, debug@^4.1.1, debug@^4.3.1: - version "4.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" - integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== - dependencies: - ms "2.1.2" - -decamelize-keys@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" - integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= - dependencies: - decamelize "^1.1.0" - map-obj "^1.0.0" - -decamelize@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-5.0.1.tgz#db11a92e58c741ef339fb0a2868d8a06a9a7b1e9" - integrity sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA== - -deep-is@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== - -define-lazy-prop@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" - integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== - -del@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-6.0.0.tgz#0b40d0332cea743f1614f818be4feb717714c952" - integrity sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ== - dependencies: - globby "^11.0.1" - graceful-fs "^4.2.4" - is-glob "^4.0.1" - is-path-cwd "^2.2.0" - is-path-inside "^3.0.2" - p-map "^4.0.0" - rimraf "^3.0.2" - slash "^3.0.0" - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -electron-to-chromium@^1.4.17: - version "1.4.71" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz#17056914465da0890ce00351a3b946fd4cd51ff6" - integrity sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -enhanced-resolve@^5.8.3: - version "5.9.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.9.0.tgz#49ac24953ac8452ed8fed2ef1340fc8e043667ee" - integrity sha512-weDYmzbBygL7HzGGS26M3hGQx68vehdEg6VUmqSOaFzXExFqlnKuSvsEJCVGQHScS8CQMbrAqftT+AzzHNt/YA== - dependencies: - graceful-fs "^4.2.4" - tapable "^2.2.0" - -enquirer@^2.3.5: - version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" - integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== - dependencies: - ansi-colors "^4.1.1" - -envinfo@^7.7.3: - version "7.8.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" - integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-module-lexer@^0.9.0: - version "0.9.3" - resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" - integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-config-prettier@^8.3.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz#f7471b20b6fe8a9a9254cc684454202886a2dd7a" - integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew== - -eslint-plugin-prettier@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz#e9ddb200efb6f3d05ffe83b1665a716af4a387e5" - integrity sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g== - dependencies: - prettier-linter-helpers "^1.0.0" - -eslint-scope@5.1.1, eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-utils@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" - integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== - dependencies: - eslint-visitor-keys "^2.0.0" - -eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - -eslint@^7.32.0: - version "7.32.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" - integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== - dependencies: - "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.3" - "@humanwhocodes/config-array" "^0.5.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - enquirer "^2.3.5" - escape-string-regexp "^4.0.0" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" - esquery "^1.4.0" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.1.2" - globals "^13.6.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^6.0.9" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -espree@^7.3.0, espree@^7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" - integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== - dependencies: - acorn "^7.4.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^1.3.0" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" - integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" - integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -events@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" - integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== - -execa@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" - -express@^4.17.1: - version "4.17.3" - resolved "https://registry.yarnpkg.com/express/-/express-4.17.3.tgz#f6c7302194a4fb54271b73a1fe7a06478c8f85a1" - integrity sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg== - dependencies: - accepts "~1.3.8" - array-flatten "1.1.1" - body-parser "1.19.2" - content-disposition "0.5.4" - content-type "~1.0.4" - cookie "0.4.2" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "~1.1.2" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.3" - path-to-regexp "0.1.7" - proxy-addr "~2.0.7" - qs "6.9.7" - range-parser "~1.2.1" - safe-buffer "5.2.1" - send "0.17.2" - serve-static "1.14.2" - setprototypeof "1.2.0" - statuses "~1.5.0" - type-is "~1.6.18" - utils-merge "1.0.1" - vary "~1.1.2" - -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-diff@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" - integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== - -fast-glob@^3.2.9: - version "3.2.11" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9" - integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.2" - merge2 "^1.3.0" - micromatch "^4.0.4" - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastest-levenshtein@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2" - integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow== - -fastq@^1.6.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" - integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== - dependencies: - reusify "^1.0.4" - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -file-type@^16.5.0: - version "16.5.3" - resolved "https://registry.yarnpkg.com/file-type/-/file-type-16.5.3.tgz#474b7e88c74724046abb505e9b8ed4db30c4fc06" - integrity sha512-uVsl7iFhHSOY4bEONLlTK47iAHtNsFHWP5YE4xJfZ4rnX7S1Q3wce09XgqSC7E/xh8Ncv/be1lNoyprlUH/x6A== - dependencies: - readable-web-to-node-stream "^3.0.0" - strtok3 "^6.2.4" - token-types "^4.1.1" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -finalhandler@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.3" - statuses "~1.5.0" - unpipe "~1.0.0" - -find-up@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -find-up@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" - integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== - dependencies: - locate-path "^6.0.0" - path-exists "^4.0.0" - -flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== - dependencies: - flatted "^3.1.0" - rimraf "^3.0.2" - -flatted@^3.1.0: - version "3.2.5" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" - integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== - -forwarded@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" - integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -get-stdin@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-9.0.0.tgz#3983ff82e03d56f1b2ea0d3e60325f39d703a575" - integrity sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA== - -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== - -glob-parent@^5.1.2, glob-parent@~5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob-to-regexp@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" - integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== - -glob@^7.1.3, glob@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^13.6.0, globals@^13.9.0: - version "13.12.1" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.1.tgz#ec206be932e6c77236677127577aa8e50bf1c5cb" - integrity sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw== - dependencies: - type-fest "^0.20.2" - -globby@^11.0.1, globby@^11.0.3: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" - integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.2.9" - ignore "^5.2.0" - merge2 "^1.4.1" - slash "^3.0.0" - -graceful-fs@^4.1.2, graceful-fs@^4.2.4, graceful-fs@^4.2.9: - version "4.2.9" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" - integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== - -hard-rejection@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" - integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hosted-git-info@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" - integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== - dependencies: - lru-cache "^6.0.0" - -http-errors@1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" - integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.1" - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -iconv-lite@0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -ieee754@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" - integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.1.4, ignore@^5.1.8, ignore@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" - integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== - -import-fresh@^3.0.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -import-local@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" - integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -indent-string@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-5.0.0.tgz#4fd2980fccaf8622d14c64d694f4cf33c81951a5" - integrity sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.4, inherits@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -interpret@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" - integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== - -ipaddr.js@1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" - integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-core-module@^2.5.0, is-core-module@^2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" - integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== - dependencies: - has "^1.0.3" - -is-docker@^2.0.0, is-docker@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" - integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== - dependencies: - is-extglob "^2.1.1" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-path-cwd@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" - integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== - -is-path-inside@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - -is-plain-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= - -is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== - -is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -jest-worker@^27.4.5: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" - integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^8.0.0" - -js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-parse-even-better-errors@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" - integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -jsonc-parser@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.0.0.tgz#abdd785701c7e7eaca8a9ec8cf070ca51a745a22" - integrity sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA== - -kind-of@^6.0.2, kind-of@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -lines-and-columns@^1.1.6: - version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== - -loader-runner@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" - integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -locate-path@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" - integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== - dependencies: - p-locate "^5.0.0" - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.truncate@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" - integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -lunr@^2.3.9: - version "2.3.9" - resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" - integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== - -map-obj@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= - -map-obj@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" - integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== - -marked@^3.0.8: - version "3.0.8" - resolved "https://registry.yarnpkg.com/marked/-/marked-3.0.8.tgz#2785f0dc79cbdc6034be4bb4f0f0a396bd3f8aeb" - integrity sha512-0gVrAjo5m0VZSJb4rpL59K1unJAMb/hm8HRXqasD8VeC8m91ytDPMritgFSlKonfdt+rRYYpP/JfLxgIX8yoSw== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -meow@^10.0.1: - version "10.1.2" - resolved "https://registry.yarnpkg.com/meow/-/meow-10.1.2.tgz#62951cb69afa69594142c8250806bc30a3912e4d" - integrity sha512-zbuAlN+V/sXlbGchNS9WTWjUzeamwMt/BApKCJi7B0QyZstZaMx0n4Unll/fg0njGtMdC9UP5SAscvOCLYdM+Q== - dependencies: - "@types/minimist" "^1.2.2" - camelcase-keys "^7.0.0" - decamelize "^5.0.0" - decamelize-keys "^1.1.0" - hard-rejection "^2.1.0" - minimist-options "4.1.0" - normalize-package-data "^3.0.2" - read-pkg-up "^8.0.0" - redent "^4.0.0" - trim-newlines "^4.0.2" - type-fest "^1.2.2" - yargs-parser "^20.2.9" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.3.0, merge2@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -micromatch@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" - integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== - dependencies: - braces "^3.0.1" - picomatch "^2.2.3" - -mime-db@1.51.0: - version "1.51.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" - integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== - -mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34: - version "2.1.34" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" - integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== - dependencies: - mime-db "1.51.0" - -mime@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -min-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" - integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== - -minimatch@^3.0.4: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -minimist-options@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" - integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== - dependencies: - arrify "^1.0.1" - is-plain-obj "^1.1.0" - kind-of "^6.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -negotiator@0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" - integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== - -neo-async@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" - integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== - -node-releases@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.2.tgz#7139fe71e2f4f11b47d4d2986aaf8c48699e0c01" - integrity sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg== - -normalize-package-data@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" - integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== - dependencies: - hosted-git-info "^4.0.1" - is-core-module "^2.5.0" - semver "^7.3.4" - validate-npm-package-license "^3.0.1" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -npm-run-path@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onchange@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/onchange/-/onchange-7.1.0.tgz#a6f0f7733e4d47014b4cd70aa1ad36c2b4cf3804" - integrity sha512-ZJcqsPiWUAUpvmnJri5TPBooqJOPmC0ttN65juhN15Q8xA+Nbg3BaxBHXQ45EistKKlKElb0edmbPWnKSBkvMg== - dependencies: - "@blakeembrey/deque" "^1.0.5" - "@blakeembrey/template" "^1.0.0" - arg "^4.1.3" - chokidar "^3.3.1" - cross-spawn "^7.0.1" - ignore "^5.1.4" - tree-kill "^1.2.2" - -onetime@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== - dependencies: - mimic-fn "^2.1.0" - -open-cli@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/open-cli/-/open-cli-7.0.1.tgz#2de9d9658a35fb04ba397e7c503f4fe52d6e7373" - integrity sha512-w//Mb5nLGTu9aIAsAehgxV+CGEkd+P3CbdoTW8y2coQ/fmGXBSrea0i4RBqGnd9prSPX1akrBYc0e3NnWM4SPA== - dependencies: - file-type "^16.5.0" - get-stdin "^9.0.0" - meow "^10.0.1" - open "^8.2.0" - tempy "^1.0.1" - -open@^8.2.0: - version "8.4.0" - resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" - integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== - dependencies: - define-lazy-prop "^2.0.0" - is-docker "^2.1.1" - is-wsl "^2.2.0" - -optionator@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" - integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.3" - -p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== - dependencies: - yocto-queue "^0.1.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - -p-locate@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" - integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== - dependencies: - p-limit "^3.0.2" - -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parse-json@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-even-better-errors "^2.3.0" - lines-and-columns "^1.1.6" - -parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -peek-readable@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-4.1.0.tgz#4ece1111bf5c2ad8867c314c81356847e8a62e72" - integrity sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg== - -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: - version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -pkg-dir@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -prettier-linter-helpers@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" - integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== - dependencies: - fast-diff "^1.1.2" - -prettier@^2.4.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" - integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg== - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -proxy-addr@~2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" - integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== - dependencies: - forwarded "0.2.0" - ipaddr.js "1.9.1" - -punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -qs@6.9.7: - version "6.9.7" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.7.tgz#4610846871485e1e048f44ae3b94033f0e675afe" - integrity sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw== - -queue-microtask@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" - integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== - -quick-lru@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" - integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== - -randombytes@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" - integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== - dependencies: - safe-buffer "^5.1.0" - -range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -raw-body@2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.3.tgz#8f80305d11c2a0a545c2d9d89d7a0286fcead43c" - integrity sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g== - dependencies: - bytes "3.1.2" - http-errors "1.8.1" - iconv-lite "0.4.24" - unpipe "1.0.0" - -read-pkg-up@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-8.0.0.tgz#72f595b65e66110f43b052dd9af4de6b10534670" - integrity sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ== - dependencies: - find-up "^5.0.0" - read-pkg "^6.0.0" - type-fest "^1.0.1" - -read-pkg@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-6.0.0.tgz#a67a7d6a1c2b0c3cd6aa2ea521f40c458a4a504c" - integrity sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^3.0.2" - parse-json "^5.2.0" - type-fest "^1.0.1" - -readable-stream@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readable-web-to-node-stream@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz#5d52bb5df7b54861fd48d015e93a2cb87b3ee0bb" - integrity sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw== - dependencies: - readable-stream "^3.6.0" - -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== - dependencies: - picomatch "^2.2.1" - -rechoir@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" - integrity sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg== - dependencies: - resolve "^1.9.0" - -redent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-4.0.0.tgz#0c0ba7caabb24257ab3bb7a4fd95dd1d5c5681f9" - integrity sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag== - dependencies: - indent-string "^5.0.0" - strip-indent "^4.0.0" - -regexpp@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" - integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== - -require-from-string@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -resolve-cwd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" - integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== - dependencies: - resolve-from "^5.0.0" - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== - -resolve@^1.9.0: - version "1.22.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" - integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== - dependencies: - is-core-module "^2.8.1" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -run-parallel@^1.1.9: - version "1.2.0" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" - integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== - dependencies: - queue-microtask "^1.2.2" - -safe-buffer@5.2.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -"safer-buffer@>= 2.1.2 < 3": - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -schema-utils@^3.1.0, schema-utils@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" - integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - -semver@^7.2.1, semver@^7.3.4, semver@^7.3.5: - version "7.3.5" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== - dependencies: - lru-cache "^6.0.0" - -send@0.17.2: - version "0.17.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.2.tgz#926622f76601c41808012c8bf1688fe3906f7820" - integrity sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "1.8.1" - mime "1.6.0" - ms "2.1.3" - on-finished "~2.3.0" - range-parser "~1.2.1" - statuses "~1.5.0" - -serialize-javascript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" - integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== - dependencies: - randombytes "^2.1.0" - -serve-static@1.14.2: - version "1.14.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.2.tgz#722d6294b1d62626d41b43a013ece4598d292bfa" - integrity sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.17.2" - -setprototypeof@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" - integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== - -shallow-clone@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" - integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== - dependencies: - kind-of "^6.0.2" - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -shiki@^0.9.12: - version "0.9.15" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.9.15.tgz#2481b46155364f236651319d2c18e329ead6fa44" - integrity sha512-/Y0z9IzhJ8nD9nbceORCqu6NgT9X6I8Fk8c3SICHI5NbZRLdZYFaB233gwct9sU0vvSypyaL/qaKvzyQGJBZSw== - dependencies: - jsonc-parser "^3.0.0" - vscode-oniguruma "^1.6.1" - vscode-textmate "5.2.0" - -signal-exit@^3.0.3: - version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -slice-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" - integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -source-map-support@~0.5.20: - version "0.5.21" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" - integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map@^0.6.0, source-map@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -source-map@~0.7.2: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - -spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.11" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95" - integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g== - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -"statuses@>= 1.5.0 < 2", statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -strip-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-4.0.0.tgz#b41379433dd06f5eae805e21d631e07ee670d853" - integrity sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA== - dependencies: - min-indent "^1.0.1" - -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -strtok3@^6.2.4: - version "6.3.0" - resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" - integrity sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw== - dependencies: - "@tokenizer/token" "^0.3.0" - peek-readable "^4.1.0" - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -supports-color@^8.0.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - -supports-preserve-symlinks-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" - integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== - -table@^6.0.9: - version "6.8.0" - resolved "https://registry.yarnpkg.com/table/-/table-6.8.0.tgz#87e28f14fa4321c3377ba286f07b79b281a3b3ca" - integrity sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA== - dependencies: - ajv "^8.0.1" - lodash.truncate "^4.4.2" - slice-ansi "^4.0.0" - string-width "^4.2.3" - strip-ansi "^6.0.1" - -tapable@^2.1.1, tapable@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" - integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== - -temp-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" - integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== - -tempy@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tempy/-/tempy-1.0.1.tgz#30fe901fd869cfb36ee2bd999805aa72fbb035de" - integrity sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w== - dependencies: - del "^6.0.0" - is-stream "^2.0.0" - temp-dir "^2.0.0" - type-fest "^0.16.0" - unique-string "^2.0.0" - -terser-webpack-plugin@^5.1.3: - version "5.3.1" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.1.tgz#0320dcc270ad5372c1e8993fabbd927929773e54" - integrity sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g== - dependencies: - jest-worker "^27.4.5" - schema-utils "^3.1.1" - serialize-javascript "^6.0.0" - source-map "^0.6.1" - terser "^5.7.2" - -terser@^5.7.2: - version "5.10.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.10.0.tgz#b86390809c0389105eb0a0b62397563096ddafcc" - integrity sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA== - dependencies: - commander "^2.20.0" - source-map "~0.7.2" - source-map-support "~0.5.20" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -toidentifier@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" - integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== - -token-types@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/token-types/-/token-types-4.1.1.tgz#ef9e8c8e2e0ded9f1b3f8dbaa46a3228b113ba1a" - integrity sha512-hD+QyuUAyI2spzsI0B7gf/jJ2ggR4RjkAo37j3StuePhApJUwcWDjnHDOFdIWYSwNR28H14hpwm4EI+V1Ted1w== - dependencies: - "@tokenizer/token" "^0.3.0" - ieee754 "^1.2.1" - -tree-kill@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" - integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== - -trim-newlines@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-4.0.2.tgz#d6aaaf6a0df1b4b536d183879a6b939489808c7c" - integrity sha512-GJtWyq9InR/2HRiLZgpIKv+ufIKrVrvjQWEj7PxAXNc5dwbNJkqhAUoAGgzRmULAnoOM5EIpveYd3J2VeSAIew== - -tslib@^1.8.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - -tsutils@^3.21.0: - version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== - dependencies: - tslib "^1.8.1" - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-fest@^0.16.0: - version "0.16.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.16.0.tgz#3240b891a78b0deae910dbeb86553e552a148860" - integrity sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg== - -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - -type-fest@^1.0.1, type-fest@^1.2.1, type-fest@^1.2.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" - integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== - -type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" - -typedoc-plugin-rename-defaults@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-rename-defaults/-/typedoc-plugin-rename-defaults-0.4.0.tgz#9739bb87ce7c084d7d48feb485ede4d4014a9b49" - integrity sha512-7m7MbNZKcxCA4Z+0MW06sFEmuQ+he1xfc+rLRtvvQcQypPTd3fgFmkEJKVu42t8mONC+kKS/WkbmqwzsiqI1YQ== - -typedoc@0.22.7: - version "0.22.7" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.22.7.tgz#e5e095ab14676296f4b12ac3355321eae650e447" - integrity sha512-ndxxp+tU1Wczvdxp4u2/PvT1qjD6hdFdSdehpORHjE+JXmMkl2bftXCR0upHmsnesBG7VCcr8vfgloGHIH8glQ== - dependencies: - glob "^7.2.0" - lunr "^2.3.9" - marked "^3.0.8" - minimatch "^3.0.4" - shiki "^0.9.12" - -typescript@^4.4.3: - version "4.5.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3" - integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA== - -uglify-js@^3.14.2: - version "3.15.1" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.15.1.tgz#9403dc6fa5695a6172a91bc983ea39f0f7c9086d" - integrity sha512-FAGKF12fWdkpvNJZENacOH0e/83eG6JyVQyanIJaBXCN1J11TUQv1T1/z8S+Z0CG0ZPk1nPcreF/c7lrTd0TEQ== - -unique-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" - integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== - dependencies: - crypto-random-string "^2.0.0" - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -util-deprecate@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -v8-compile-cache@^2.0.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" - integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vscode-oniguruma@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.6.1.tgz#2bf4dfcfe3dd2e56eb549a3068c8ee39e6c30ce5" - integrity sha512-vc4WhSIaVpgJ0jJIejjYxPvURJavX6QG41vu0mGhqywMkQqulezEqEQ3cO3gc8GvcOpX6ycmKGqRoROEMBNXTQ== - -vscode-textmate@5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-5.2.0.tgz#01f01760a391e8222fe4f33fbccbd1ad71aed74e" - integrity sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ== - -watchpack@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" - integrity sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA== - dependencies: - glob-to-regexp "^0.4.1" - graceful-fs "^4.1.2" - -webpack-cli@^4.8.0: - version "4.9.2" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.9.2.tgz#77c1adaea020c3f9e2db8aad8ea78d235c83659d" - integrity sha512-m3/AACnBBzK/kMTcxWHcZFPrw/eQuY4Df1TxvIWfWM2x7mRqBQCqKEd96oCUa9jkapLBaFfRce33eGDb4Pr7YQ== - dependencies: - "@discoveryjs/json-ext" "^0.5.0" - "@webpack-cli/configtest" "^1.1.1" - "@webpack-cli/info" "^1.4.1" - "@webpack-cli/serve" "^1.6.1" - colorette "^2.0.14" - commander "^7.0.0" - execa "^5.0.0" - fastest-levenshtein "^1.0.12" - import-local "^3.0.2" - interpret "^2.2.0" - rechoir "^0.7.0" - webpack-merge "^5.7.3" - -webpack-merge@^5.7.3: - version "5.8.0" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" - integrity sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q== - dependencies: - clone-deep "^4.0.1" - wildcard "^2.0.0" - -webpack-sources@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" - integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== - -webpack@^5.53.0: - version "5.69.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.69.1.tgz#8cfd92c192c6a52c99ab00529b5a0d33aa848dc5" - integrity sha512-+VyvOSJXZMT2V5vLzOnDuMz5GxEqLk7hKWQ56YxPW/PQRUuKimPqmEIJOx8jHYeyo65pKbapbW464mvsKbaj4A== - dependencies: - "@types/eslint-scope" "^3.7.3" - "@types/estree" "^0.0.51" - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/wasm-edit" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - acorn "^8.4.1" - acorn-import-assertions "^1.7.6" - browserslist "^4.14.5" - chrome-trace-event "^1.0.2" - enhanced-resolve "^5.8.3" - es-module-lexer "^0.9.0" - eslint-scope "5.1.1" - events "^3.2.0" - glob-to-regexp "^0.4.1" - graceful-fs "^4.2.9" - json-parse-better-errors "^1.0.2" - loader-runner "^4.2.0" - mime-types "^2.1.27" - neo-async "^2.6.2" - schema-utils "^3.1.0" - tapable "^2.1.1" - terser-webpack-plugin "^5.1.3" - watchpack "^2.3.1" - webpack-sources "^3.2.3" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -wildcard@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" - integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== - -word-wrap@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yargs-parser@^20.2.9: - version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== - -yarn@^1.22.11: - version "1.22.17" - resolved "https://registry.yarnpkg.com/yarn/-/yarn-1.22.17.tgz#bf910747d22497b573131f7341c0e1d15c74036c" - integrity sha512-H0p241BXaH0UN9IeH//RT82tl5PfNraVpSpEoW+ET7lmopNC61eZ+A+IDvU8FM6Go5vx162SncDL8J1ZjRBriQ== - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/code-frame@^7.0.0": + version "7.21.4" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39" + integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g== + dependencies: + "@babel/highlight" "^7.18.6" + +"@babel/helper-validator-identifier@^7.18.6": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" + integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== + +"@babel/highlight@^7.10.4", "@babel/highlight@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" + integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== + dependencies: + "@babel/helper-validator-identifier" "^7.18.6" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@blakeembrey/deque@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@blakeembrey/deque/-/deque-1.0.5.tgz#f4fa17fc5ee18317ec01a763d355782c7b395eaf" + integrity sha512-6xnwtvp9DY1EINIKdTfvfeAtCYw4OqBZJhtiqkT3ivjnEfa25VQ3TsKvaFfKm8MyGIEfE95qLe+bNEt3nB0Ylg== + +"@blakeembrey/template@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@blakeembrey/template/-/template-1.1.0.tgz#fbea7a688ffedf0763085b2cda8efe6fdd54d4c4" + integrity sha512-iZf+UWfL+DogJVpd/xMQyP6X6McYd6ArdYoPMiv/zlOTzeXXfQbYxBNJJBF6tThvsjLMbA8tLjkCdm9RWMFCCw== + +"@discoveryjs/json-ext@^0.5.0": + version "0.5.7" + resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" + integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== + +"@eslint/eslintrc@^0.4.3": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^13.9.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + +"@humanwhocodes/config-array@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== + dependencies: + "@humanwhocodes/object-schema" "^1.2.0" + debug "^4.1.1" + minimatch "^3.0.4" + +"@humanwhocodes/object-schema@^1.2.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== + +"@jridgewell/gen-mapping@^0.3.0": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" + integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== + dependencies: + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/resolve-uri@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== + +"@jridgewell/set-array@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== + +"@jridgewell/source-map@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" + integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": + version "1.4.14" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" + integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== + +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.17" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" + integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== + dependencies: + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@tokenizer/token@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@tokenizer/token/-/token-0.3.0.tgz#fe98a93fe789247e998c75e74e9c7c63217aa276" + integrity sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A== + +"@types/css-font-loading-module@^0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@types/css-font-loading-module/-/css-font-loading-module-0.0.6.tgz#1ac3417ed31eeb953134d29b56bca921644b87c0" + integrity sha512-MBvSMSxXFtIukyXRU3HhzL369rIWaqMVQD5kmDCYIFFD6Fe3lJ4c9UnLD02MLdTp7Z6ti7rO3SQtuDo7C80mmw== + +"@types/eslint-scope@^3.7.3": + version "3.7.4" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" + integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "8.37.0" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.37.0.tgz#29cebc6c2a3ac7fea7113207bf5a828fdf4d7ef1" + integrity sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2" + integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ== + +"@types/estree@^0.0.51": + version "0.0.51" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" + integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== + +"@types/json-schema@*", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8": + version "7.0.11" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" + integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== + +"@types/minimist@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" + integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== + +"@types/node@*": + version "18.15.11" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.11.tgz#b3b790f09cb1696cffcec605de025b088fa4225f" + integrity sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q== + +"@types/normalize-package-data@^2.4.1": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" + integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== + +"@typescript-eslint/eslint-plugin@^4.31.1": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276" + integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg== + dependencies: + "@typescript-eslint/experimental-utils" "4.33.0" + "@typescript-eslint/scope-manager" "4.33.0" + debug "^4.3.1" + functional-red-black-tree "^1.0.1" + ignore "^5.1.8" + regexpp "^3.1.0" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/experimental-utils@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd" + integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q== + dependencies: + "@types/json-schema" "^7.0.7" + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + +"@typescript-eslint/parser@^4.31.1": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" + integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== + dependencies: + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" + debug "^4.3.1" + +"@typescript-eslint/scope-manager@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3" + integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ== + dependencies: + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" + +"@typescript-eslint/types@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72" + integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== + +"@typescript-eslint/typescript-estree@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" + integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA== + dependencies: + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" + debug "^4.3.1" + globby "^11.0.3" + is-glob "^4.0.1" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/visitor-keys@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" + integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg== + dependencies: + "@typescript-eslint/types" "4.33.0" + eslint-visitor-keys "^2.0.0" + +"@webassemblyjs/ast@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" + integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== + dependencies: + "@webassemblyjs/helper-numbers" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + +"@webassemblyjs/floating-point-hex-parser@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" + integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== + +"@webassemblyjs/helper-api-error@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" + integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== + +"@webassemblyjs/helper-buffer@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" + integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== + +"@webassemblyjs/helper-numbers@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" + integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/helper-wasm-bytecode@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" + integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== + +"@webassemblyjs/helper-wasm-section@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" + integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + +"@webassemblyjs/ieee754@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" + integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/leb128@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" + integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/utf8@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" + integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== + +"@webassemblyjs/wasm-edit@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" + integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/helper-wasm-section" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-opt" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + "@webassemblyjs/wast-printer" "1.11.1" + +"@webassemblyjs/wasm-gen@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" + integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + +"@webassemblyjs/wasm-opt@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" + integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + +"@webassemblyjs/wasm-parser@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" + integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + +"@webassemblyjs/wast-printer@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" + integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@xtuc/long" "4.2.2" + +"@webpack-cli/configtest@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-1.2.0.tgz#7b20ce1c12533912c3b217ea68262365fa29a6f5" + integrity sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg== + +"@webpack-cli/info@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-1.5.0.tgz#6c78c13c5874852d6e2dd17f08a41f3fe4c261b1" + integrity sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ== + dependencies: + envinfo "^7.7.3" + +"@webpack-cli/serve@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-1.7.0.tgz#e1993689ac42d2b16e9194376cfb6753f6254db1" + integrity sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q== + +"@xtuc/ieee754@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== + +"@xtuc/long@4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== + +accepts@~1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + +acorn-import-assertions@^1.7.6: + version "1.8.0" + resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" + integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== + +acorn-jsx@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.5.0, acorn@^8.7.1: + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== + +ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + +ajv@^6.10.0, ajv@^6.12.4, ajv@^6.12.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^8.0.1: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-colors@^4.1.1: + version "4.1.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +big-integer@^1.6.44: + version "1.6.51" + resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" + integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +body-parser@1.20.1: + version "1.20.1" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" + integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== + dependencies: + bytes "3.1.2" + content-type "~1.0.4" + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" + iconv-lite "0.4.24" + on-finished "2.4.1" + qs "6.11.0" + raw-body "2.5.1" + type-is "~1.6.18" + unpipe "1.0.0" + +bplist-parser@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.2.0.tgz#43a9d183e5bf9d545200ceac3e712f79ebbe8d0e" + integrity sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw== + dependencies: + big-integer "^1.6.44" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +browserslist@^4.14.5: + version "4.21.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" + integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== + dependencies: + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" + +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +bundle-name@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bundle-name/-/bundle-name-3.0.0.tgz#ba59bcc9ac785fb67ccdbf104a2bf60c099f0e1a" + integrity sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw== + dependencies: + run-applescript "^5.0.0" + +bytes@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + +call-bind@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase-keys@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-8.0.2.tgz#a7140ba7c797aea32161d4ce5cdbda11d09eb414" + integrity sha512-qMKdlOfsjlezMqxkUGGMaWWs17i2HoL15tM+wtx8ld4nLrUwU58TFdvyGOz/piNP842KeO8yXvggVQSdQ828NA== + dependencies: + camelcase "^7.0.0" + map-obj "^4.3.0" + quick-lru "^6.1.1" + type-fest "^2.13.0" + +camelcase@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-7.0.1.tgz#f02e50af9fd7782bc8b88a3558c32fd3a388f048" + integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw== + +caniuse-lite@^1.0.30001449: + version "1.0.30001474" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001474.tgz#13b6fe301a831fe666cce8ca4ef89352334133d5" + integrity sha512-iaIZ8gVrWfemh5DG3T9/YqarVZoYf0r188IjaGwx68j4Pf0SGY6CQkmJUIE+NZHkkecQGohzXmBGEwWDr9aM3Q== + +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chokidar@^3.3.1: + version "3.5.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +chrome-trace-event@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" + integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== + +clone-deep@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== + dependencies: + is-plain-object "^2.0.4" + kind-of "^6.0.2" + shallow-clone "^3.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colorette@^2.0.14: + version "2.0.19" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" + integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== + +commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commander@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +content-disposition@0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@~1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== + +cookie@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" + integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== + +cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypto-random-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-4.0.0.tgz#5a3cc53d7dd86183df5da0312816ceeeb5bb1fc2" + integrity sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA== + dependencies: + type-fest "^1.0.1" + +debug@2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@^4.0.1, debug@^4.1.1, debug@^4.3.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +decamelize-keys@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8" + integrity sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg== + dependencies: + decamelize "^1.1.0" + map-obj "^1.0.0" + +decamelize@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decamelize@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-6.0.0.tgz#8cad4d916fde5c41a264a43d0ecc56fe3d31749e" + integrity sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA== + +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +default-browser-id@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/default-browser-id/-/default-browser-id-3.0.0.tgz#bee7bbbef1f4e75d31f98f4d3f1556a14cea790c" + integrity sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA== + dependencies: + bplist-parser "^0.2.0" + untildify "^4.0.0" + +default-browser@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/default-browser/-/default-browser-4.0.0.tgz#53c9894f8810bf86696de117a6ce9085a3cbc7da" + integrity sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA== + dependencies: + bundle-name "^3.0.0" + default-browser-id "^3.0.0" + execa "^7.1.1" + titleize "^3.0.0" + +define-lazy-prop@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz#dbb19adfb746d7fc6d734a06b72f4a00d021255f" + integrity sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg== + +depd@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + +electron-to-chromium@^1.4.284: + version "1.4.352" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.352.tgz#be96bd7c2f4b980deebc9338a49a67430a33ed73" + integrity sha512-ikFUEyu5/q+wJpMOxWxTaEVk2M1qKqTGKKyfJmod1CPZxKfYnxVS41/GCBQg21ItBpZybyN8sNpRqCUGm+Zc4Q== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== + +enhanced-resolve@^5.10.0: + version "5.12.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz#300e1c90228f5b570c4d35babf263f6da7155634" + integrity sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +envinfo@^7.7.3: + version "7.8.1" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +es-module-lexer@^0.9.0: + version "0.9.3" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" + integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +eslint-config-prettier@^8.3.0: + version "8.8.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz#bfda738d412adc917fd7b038857110efe98c9348" + integrity sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA== + +eslint-plugin-prettier@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz#e9ddb200efb6f3d05ffe83b1665a716af4a387e5" + integrity sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g== + dependencies: + prettier-linter-helpers "^1.0.0" + +eslint-scope@5.1.1, eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint@^7.32.0: + version "7.32.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== + dependencies: + "@babel/code-frame" "7.12.11" + "@eslint/eslintrc" "^0.4.3" + "@humanwhocodes/config-array" "^0.5.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + escape-string-regexp "^4.0.0" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.1.2" + globals "^13.6.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.9" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.4.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" + integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + +events@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +execa@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + +execa@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-7.1.1.tgz#3eb3c83d239488e7b409d48e8813b76bb55c9c43" + integrity sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.1" + human-signals "^4.3.0" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^3.0.7" + strip-final-newline "^3.0.0" + +express@^4.17.1: + version "4.18.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" + integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "1.20.1" + content-disposition "0.5.4" + content-type "~1.0.4" + cookie "0.5.0" + cookie-signature "1.0.6" + debug "2.6.9" + depd "2.0.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.2.0" + fresh "0.5.2" + http-errors "2.0.0" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "2.4.1" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.7" + qs "6.11.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "0.18.0" + serve-static "1.15.0" + setprototypeof "1.2.0" + statuses "2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-diff@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== + +fast-glob@^3.2.9: + version "3.2.12" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" + integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + +fastest-levenshtein@^1.0.12: + version "1.0.16" + resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" + integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== + +fastq@^1.6.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== + dependencies: + reusify "^1.0.4" + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + +file-type@^18.2.1: + version "18.2.1" + resolved "https://registry.yarnpkg.com/file-type/-/file-type-18.2.1.tgz#6d8f1fa3b079606f6ecf89483346f55fcd2c671b" + integrity sha512-Yw5MtnMv7vgD2/6Bjmmuegc8bQEVA9GmAyaR18bMYWKqsWDG9wgYZ1j4I6gNMF5Y5JBDcUcjRQqNQx7Y8uotcg== + dependencies: + readable-web-to-node-stream "^3.0.2" + strtok3 "^7.0.0" + token-types "^5.0.1" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +finalhandler@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" + integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "2.4.1" + parseurl "~1.3.3" + statuses "2.0.1" + unpipe "~1.0.0" + +find-up@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +find-up@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790" + integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw== + dependencies: + locate-path "^7.1.0" + path-exists "^5.0.0" + +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flatted@^3.1.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" + integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== + +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== + +get-intrinsic@^1.0.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" + integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.3" + +get-stdin@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-9.0.0.tgz#3983ff82e03d56f1b2ea0d3e60325f39d703a575" + integrity sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA== + +get-stream@^6.0.0, get-stream@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + +glob-parent@^5.1.2, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-to-regexp@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== + +glob@^7.1.3, glob@^7.2.0: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^13.6.0, globals@^13.9.0: + version "13.20.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" + integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== + dependencies: + type-fest "^0.20.2" + +globby@^11.0.3: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + +graceful-fs@^4.1.2, graceful-fs@^4.2.4, graceful-fs@^4.2.9: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +hard-rejection@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" + integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hosted-git-info@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" + integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== + dependencies: + lru-cache "^6.0.0" + +hosted-git-info@^5.0.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-5.2.1.tgz#0ba1c97178ef91f3ab30842ae63d6a272341156f" + integrity sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw== + dependencies: + lru-cache "^7.5.1" + +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" + +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + +human-signals@^4.3.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2" + integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ== + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.4, ignore@^5.1.8, ignore@^5.2.0: + version "5.2.4" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" + integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== + +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +import-local@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +indent-string@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-5.0.0.tgz#4fd2980fccaf8622d14c64d694f4cf33c81951a5" + integrity sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.4, inherits@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +interpret@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" + integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== + +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== + dependencies: + has "^1.0.3" + +is-docker@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + +is-docker@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" + integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-inside-container@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-inside-container/-/is-inside-container-1.0.0.tgz#e81fba699662eb31dbdaf26766a61d4814717ea4" + integrity sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA== + dependencies: + is-docker "^3.0.0" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== + +is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +is-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== + +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +jest-worker@^27.4.5: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + +jsonc-parser@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" + integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== + +kind-of@^6.0.2, kind-of@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +loader-runner@^4.2.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" + integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +locate-path@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a" + integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA== + dependencies: + p-locate "^6.0.0" + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +lru-cache@^7.5.1: + version "7.18.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" + integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== + +lunr@^2.3.9: + version "2.3.9" + resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" + integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== + +map-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== + +map-obj@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" + integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== + +marked@^3.0.8: + version "3.0.8" + resolved "https://registry.yarnpkg.com/marked/-/marked-3.0.8.tgz#2785f0dc79cbdc6034be4bb4f0f0a396bd3f8aeb" + integrity sha512-0gVrAjo5m0VZSJb4rpL59K1unJAMb/hm8HRXqasD8VeC8m91ytDPMritgFSlKonfdt+rRYYpP/JfLxgIX8yoSw== + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== + +meow@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-11.0.0.tgz#273a19c12d49d013c56effe9f011994022887157" + integrity sha512-Cl0yeeIrko6d94KpUo1M+0X1sB14ikoaqlIGuTH1fW4I+E3+YljL54/hb/BWmVfrV9tTV9zU04+xjw08Fh2WkA== + dependencies: + "@types/minimist" "^1.2.2" + camelcase-keys "^8.0.2" + decamelize "^6.0.0" + decamelize-keys "^1.1.0" + hard-rejection "^2.1.0" + minimist-options "4.1.0" + normalize-package-data "^4.0.1" + read-pkg-up "^9.1.0" + redent "^4.0.0" + trim-newlines "^4.0.2" + type-fest "^3.1.0" + yargs-parser "^21.1.1" + +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + +micromatch@^4.0.4: + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + dependencies: + braces "^3.0.2" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +mimic-fn@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== + +min-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== + +minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimist-options@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" + integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + kind-of "^6.0.3" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + +neo-async@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== + +node-releases@^2.0.8: + version "2.0.10" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" + integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== + +normalize-package-data@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" + integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== + dependencies: + hosted-git-info "^4.0.1" + is-core-module "^2.5.0" + semver "^7.3.4" + validate-npm-package-license "^3.0.1" + +normalize-package-data@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-4.0.1.tgz#b46b24e0616d06cadf9d5718b29b6d445a82a62c" + integrity sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg== + dependencies: + hosted-git-info "^5.0.0" + is-core-module "^2.8.1" + semver "^7.3.5" + validate-npm-package-license "^3.0.4" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +npm-run-path@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00" + integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== + dependencies: + path-key "^4.0.0" + +object-inspect@^1.9.0: + version "1.12.3" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" + integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== + +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +onchange@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/onchange/-/onchange-7.1.0.tgz#a6f0f7733e4d47014b4cd70aa1ad36c2b4cf3804" + integrity sha512-ZJcqsPiWUAUpvmnJri5TPBooqJOPmC0ttN65juhN15Q8xA+Nbg3BaxBHXQ45EistKKlKElb0edmbPWnKSBkvMg== + dependencies: + "@blakeembrey/deque" "^1.0.5" + "@blakeembrey/template" "^1.0.0" + arg "^4.1.3" + chokidar "^3.3.1" + cross-spawn "^7.0.1" + ignore "^5.1.4" + tree-kill "^1.2.2" + +onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +onetime@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== + dependencies: + mimic-fn "^4.0.0" + +open-cli@^7.0.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/open-cli/-/open-cli-7.2.0.tgz#9431203847648890026c54c08dcd3430c6fce23f" + integrity sha512-1ANJc8oJ92FiaNZ0o2Hw4WBvDJoXs1P74aFMtpAvlbkIPV4uPcQvDz7V6kMOrsZkmB4tglrHVMlLQaafuUuxXg== + dependencies: + file-type "^18.2.1" + get-stdin "^9.0.0" + meow "^11.0.0" + open "^9.0.0" + tempy "^3.0.0" + +open@^9.0.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/open/-/open-9.1.0.tgz#684934359c90ad25742f5a26151970ff8c6c80b6" + integrity sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg== + dependencies: + default-browser "^4.0.0" + define-lazy-prop "^3.0.0" + is-inside-container "^1.0.0" + is-wsl "^2.2.0" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" + integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== + dependencies: + yocto-queue "^1.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-locate@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f" + integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw== + dependencies: + p-limit "^4.0.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-json@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + +parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-exists@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7" + integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-key@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +peek-readable@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-5.0.0.tgz#7ead2aff25dc40458c60347ea76cfdfd63efdfec" + integrity sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + +prettier@^2.4.1: + version "2.8.7" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.7.tgz#bb79fc8729308549d28fe3a98fce73d2c0656450" + integrity sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw== + +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + +punycode@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + +qs@6.11.0: + version "6.11.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== + dependencies: + side-channel "^1.0.4" + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +quick-lru@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-6.1.1.tgz#f8e5bf9010376c126c80c1a62827a526c0e60adf" + integrity sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q== + +randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" + integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== + dependencies: + bytes "3.1.2" + http-errors "2.0.0" + iconv-lite "0.4.24" + unpipe "1.0.0" + +read-pkg-up@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-9.1.0.tgz#38ca48e0bc6c6b260464b14aad9bcd4e5b1fbdc3" + integrity sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg== + dependencies: + find-up "^6.3.0" + read-pkg "^7.1.0" + type-fest "^2.5.0" + +read-pkg@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-7.1.0.tgz#438b4caed1ad656ba359b3e00fd094f3c427a43e" + integrity sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg== + dependencies: + "@types/normalize-package-data" "^2.4.1" + normalize-package-data "^3.0.2" + parse-json "^5.2.0" + type-fest "^2.0.0" + +readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readable-web-to-node-stream@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz#5d52bb5df7b54861fd48d015e93a2cb87b3ee0bb" + integrity sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw== + dependencies: + readable-stream "^3.6.0" + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +rechoir@^0.7.0: + version "0.7.1" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" + integrity sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg== + dependencies: + resolve "^1.9.0" + +redent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-4.0.0.tgz#0c0ba7caabb24257ab3bb7a4fd95dd1d5c5681f9" + integrity sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag== + dependencies: + indent-string "^5.0.0" + strip-indent "^4.0.0" + +regexpp@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve@^1.9.0: + version "1.22.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== + dependencies: + is-core-module "^2.9.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +run-applescript@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/run-applescript/-/run-applescript-5.0.0.tgz#e11e1c932e055d5c6b40d98374e0268d9b11899c" + integrity sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg== + dependencies: + execa "^5.0.0" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +safe-buffer@5.2.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +schema-utils@^3.1.0, schema-utils@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" + integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + +semver@^7.2.1, semver@^7.3.4, semver@^7.3.5: + version "7.3.8" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" + integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== + dependencies: + lru-cache "^6.0.0" + +send@0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "2.0.0" + mime "1.6.0" + ms "2.1.3" + on-finished "2.4.1" + range-parser "~1.2.1" + statuses "2.0.1" + +serialize-javascript@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" + integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== + dependencies: + randombytes "^2.1.0" + +serve-static@1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.18.0" + +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +shallow-clone@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== + dependencies: + kind-of "^6.0.2" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shiki@^0.9.12: + version "0.9.15" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-0.9.15.tgz#2481b46155364f236651319d2c18e329ead6fa44" + integrity sha512-/Y0z9IzhJ8nD9nbceORCqu6NgT9X6I8Fk8c3SICHI5NbZRLdZYFaB233gwct9sU0vvSypyaL/qaKvzyQGJBZSw== + dependencies: + jsonc-parser "^3.0.0" + vscode-oniguruma "^1.6.1" + vscode-textmate "5.2.0" + +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +signal-exit@^3.0.3, signal-exit@^3.0.7: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +source-map-support@~0.5.20: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +spdx-correct@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.13" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz#7189a474c46f8d47c7b0da4b987bb45e908bd2d5" + integrity sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== + +string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-final-newline@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== + +strip-indent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-4.0.0.tgz#b41379433dd06f5eae805e21d631e07ee670d853" + integrity sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA== + dependencies: + min-indent "^1.0.1" + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +strtok3@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-7.0.0.tgz#868c428b4ade64a8fd8fee7364256001c1a4cbe5" + integrity sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ== + dependencies: + "@tokenizer/token" "^0.3.0" + peek-readable "^5.0.0" + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +table@^6.0.9: + version "6.8.1" + resolved "https://registry.yarnpkg.com/table/-/table-6.8.1.tgz#ea2b71359fe03b017a5fbc296204471158080bdf" + integrity sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA== + dependencies: + ajv "^8.0.1" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + +tapable@^2.1.1, tapable@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== + +temp-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" + integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== + +tempy@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tempy/-/tempy-3.0.0.tgz#a6c0a15f5534a820e92c3e1369f1c1e87ebd6b68" + integrity sha512-B2I9X7+o2wOaW4r/CWMkpOO9mdiTRCxXNgob6iGvPmfPWgH/KyUD6Uy5crtWBxIBe3YrNZKR2lSzv1JJKWD4vA== + dependencies: + is-stream "^3.0.0" + temp-dir "^2.0.0" + type-fest "^2.12.2" + unique-string "^3.0.0" + +terser-webpack-plugin@^5.1.3: + version "5.3.7" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz#ef760632d24991760f339fe9290deb936ad1ffc7" + integrity sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw== + dependencies: + "@jridgewell/trace-mapping" "^0.3.17" + jest-worker "^27.4.5" + schema-utils "^3.1.1" + serialize-javascript "^6.0.1" + terser "^5.16.5" + +terser@^5.16.5: + version "5.16.8" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.8.tgz#ccde583dabe71df3f4ed02b65eb6532e0fae15d5" + integrity sha512-QI5g1E/ef7d+PsDifb+a6nnVgC4F22Bg6T0xrBrz6iloVB4PUkkunp6V8nzoOOZJIzjWVdAGqCdlKlhLq/TbIA== + dependencies: + "@jridgewell/source-map" "^0.3.2" + acorn "^8.5.0" + commander "^2.20.0" + source-map-support "~0.5.20" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== + +titleize@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/titleize/-/titleize-3.0.0.tgz#71c12eb7fdd2558aa8a44b0be83b8a76694acd53" + integrity sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + +token-types@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/token-types/-/token-types-5.0.1.tgz#aa9d9e6b23c420a675e55413b180635b86a093b4" + integrity sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg== + dependencies: + "@tokenizer/token" "^0.3.0" + ieee754 "^1.2.1" + +tree-kill@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" + integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== + +trim-newlines@^4.0.2: + version "4.1.1" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-4.1.1.tgz#28c88deb50ed10c7ba6dc2474421904a00139125" + integrity sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ== + +tslib@^1.8.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^1.0.1: + version "1.4.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" + integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== + +type-fest@^2.0.0, type-fest@^2.12.2, type-fest@^2.13.0, type-fest@^2.5.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" + integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== + +type-fest@^3.1.0: + version "3.7.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.7.2.tgz#08f83ee3229b63077e95c9035034d32905969457" + integrity sha512-f9BHrLjRJ4MYkfOsnC/53PNDzZJcVo14MqLp2+hXE39p5bgwqohxR5hDZztwxlbxmIVuvC2EFAKrAkokq23PLA== + +type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typedoc-plugin-rename-defaults@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/typedoc-plugin-rename-defaults/-/typedoc-plugin-rename-defaults-0.4.0.tgz#9739bb87ce7c084d7d48feb485ede4d4014a9b49" + integrity sha512-7m7MbNZKcxCA4Z+0MW06sFEmuQ+he1xfc+rLRtvvQcQypPTd3fgFmkEJKVu42t8mONC+kKS/WkbmqwzsiqI1YQ== + +typedoc@0.22.7: + version "0.22.7" + resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.22.7.tgz#e5e095ab14676296f4b12ac3355321eae650e447" + integrity sha512-ndxxp+tU1Wczvdxp4u2/PvT1qjD6hdFdSdehpORHjE+JXmMkl2bftXCR0upHmsnesBG7VCcr8vfgloGHIH8glQ== + dependencies: + glob "^7.2.0" + lunr "^2.3.9" + marked "^3.0.8" + minimatch "^3.0.4" + shiki "^0.9.12" + +typescript@^4.4.3: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + +uglify-js@^3.14.2: + version "3.17.4" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c" + integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g== + +unique-string@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-3.0.0.tgz#84a1c377aff5fd7a8bc6b55d8244b2bd90d75b9a" + integrity sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ== + dependencies: + crypto-random-string "^4.0.0" + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== + +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + +update-browserslist-db@^1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" + integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +util-deprecate@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== + +v8-compile-cache@^2.0.3: + version "2.3.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + +validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +vscode-oniguruma@^1.6.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz#439bfad8fe71abd7798338d1cd3dc53a8beea94b" + integrity sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA== + +vscode-textmate@5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-5.2.0.tgz#01f01760a391e8222fe4f33fbccbd1ad71aed74e" + integrity sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ== + +watchpack@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" + integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + +webpack-cli@^4.8.0: + version "4.10.0" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.10.0.tgz#37c1d69c8d85214c5a65e589378f53aec64dab31" + integrity sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w== + dependencies: + "@discoveryjs/json-ext" "^0.5.0" + "@webpack-cli/configtest" "^1.2.0" + "@webpack-cli/info" "^1.5.0" + "@webpack-cli/serve" "^1.7.0" + colorette "^2.0.14" + commander "^7.0.0" + cross-spawn "^7.0.3" + fastest-levenshtein "^1.0.12" + import-local "^3.0.2" + interpret "^2.2.0" + rechoir "^0.7.0" + webpack-merge "^5.7.3" + +webpack-merge@^5.7.3: + version "5.8.0" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" + integrity sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q== + dependencies: + clone-deep "^4.0.1" + wildcard "^2.0.0" + +webpack-sources@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== + +webpack@^5.53.0: + version "5.77.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.77.0.tgz#dea3ad16d7ea6b84aa55fa42f4eac9f30e7eb9b4" + integrity sha512-sbGNjBr5Ya5ss91yzjeJTLKyfiwo5C628AFjEa6WSXcZa4E+F57om3Cc8xLb1Jh0b243AWuSYRf3dn7HVeFQ9Q== + dependencies: + "@types/eslint-scope" "^3.7.3" + "@types/estree" "^0.0.51" + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/wasm-edit" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + acorn "^8.7.1" + acorn-import-assertions "^1.7.6" + browserslist "^4.14.5" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.10.0" + es-module-lexer "^0.9.0" + eslint-scope "5.1.1" + events "^3.2.0" + glob-to-regexp "^0.4.1" + graceful-fs "^4.2.9" + json-parse-even-better-errors "^2.3.1" + loader-runner "^4.2.0" + mime-types "^2.1.27" + neo-async "^2.6.2" + schema-utils "^3.1.0" + tapable "^2.1.1" + terser-webpack-plugin "^5.1.3" + watchpack "^2.4.0" + webpack-sources "^3.2.3" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wildcard@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" + integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== + +word-wrap@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== + +yarn@^1.22.11: + version "1.22.19" + resolved "https://registry.yarnpkg.com/yarn/-/yarn-1.22.19.tgz#4ba7fc5c6e704fce2066ecbfb0b0d8976fe62447" + integrity sha512-/0V5q0WbslqnwP91tirOvldvYISzaqhClxzyUKXYxs07yUILIs5jx/k6CFe8bvKSkds5w+eiOqta39Wk3WxdcQ== + +yocto-queue@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.0.0.tgz#7f816433fb2cbc511ec8bf7d263c3b58a1a3c251" + integrity sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==