melonjs 15.3.0 → 15.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +1 -1
- package/dist/melonjs.mjs/_virtual/earcut.js +1 -1
- package/dist/melonjs.mjs/_virtual/howler.js +1 -1
- package/dist/melonjs.mjs/_virtual/index.js +1 -1
- package/dist/melonjs.mjs/application/application.js +53 -5
- package/dist/melonjs.mjs/application/header.js +2 -2
- package/dist/melonjs.mjs/application/resize.js +4 -8
- package/dist/melonjs.mjs/application/settings.js +5 -5
- package/dist/melonjs.mjs/audio/audio.js +4 -6
- package/dist/melonjs.mjs/camera/camera2d.js +12 -14
- package/dist/melonjs.mjs/const.js +1 -1
- package/dist/melonjs.mjs/entity/entity.js +3 -4
- package/dist/melonjs.mjs/geometries/ellipse.js +26 -59
- package/dist/melonjs.mjs/geometries/line.js +18 -25
- package/dist/melonjs.mjs/geometries/path2d.js +16 -13
- package/dist/melonjs.mjs/geometries/point.js +8 -16
- package/dist/melonjs.mjs/geometries/poly.js +40 -97
- package/dist/melonjs.mjs/geometries/rectangle.js +37 -91
- package/dist/melonjs.mjs/geometries/roundrect.js +26 -35
- package/dist/melonjs.mjs/index.js +6 -6
- package/dist/melonjs.mjs/input/gamepad.js +1 -1
- package/dist/melonjs.mjs/input/input.js +1 -1
- package/dist/melonjs.mjs/input/keyboard.js +3 -3
- package/dist/melonjs.mjs/input/pointer.js +4 -4
- package/dist/melonjs.mjs/input/pointerevent.js +6 -7
- package/dist/melonjs.mjs/lang/console.js +1 -1
- package/dist/melonjs.mjs/lang/deprecated.js +2 -2
- package/dist/melonjs.mjs/level/level.js +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXGroup.js +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXLayer.js +16 -33
- package/dist/melonjs.mjs/level/tiled/TMXObject.js +3 -4
- package/dist/melonjs.mjs/level/tiled/TMXTile.js +4 -4
- package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +3 -3
- package/dist/melonjs.mjs/level/tiled/TMXTileset.js +4 -7
- package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +2 -2
- package/dist/melonjs.mjs/level/tiled/TMXUtils.js +26 -29
- package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +3 -3
- package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +2 -2
- package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +2 -2
- package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +2 -2
- package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +2 -2
- package/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +1 -1
- package/dist/melonjs.mjs/loader/cache.js +1 -1
- package/dist/melonjs.mjs/loader/loader.js +1 -1
- package/dist/melonjs.mjs/loader/loadingscreen.js +1 -1
- package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
- package/dist/melonjs.mjs/loader/parser.js +4 -5
- package/dist/melonjs.mjs/loader/settings.js +1 -1
- package/dist/melonjs.mjs/math/color.js +2 -2
- package/dist/melonjs.mjs/math/math.js +1 -1
- package/dist/melonjs.mjs/math/matrix2.js +5 -59
- package/dist/melonjs.mjs/math/matrix3.js +82 -141
- package/dist/melonjs.mjs/math/observable_vector2.js +7 -7
- package/dist/melonjs.mjs/math/observable_vector3.js +5 -5
- package/dist/melonjs.mjs/math/vector2.js +7 -91
- package/dist/melonjs.mjs/math/vector3.js +6 -90
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/arraymultimap.js +1 -1
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/multimap.js +1 -1
- package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +1 -1
- package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +1 -1
- package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +1 -1
- package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +1 -1
- package/dist/melonjs.mjs/particles/emitter.js +2 -2
- package/dist/melonjs.mjs/particles/particle.js +2 -2
- package/dist/melonjs.mjs/particles/settings.js +1 -1
- package/dist/melonjs.mjs/physics/body.js +22 -20
- package/dist/melonjs.mjs/physics/bounds.js +27 -33
- package/dist/melonjs.mjs/physics/collision.js +5 -5
- package/dist/melonjs.mjs/physics/detector.js +10 -10
- package/dist/melonjs.mjs/physics/quadtree.js +5 -5
- package/dist/melonjs.mjs/physics/response.js +1 -1
- package/dist/melonjs.mjs/physics/sat.js +3 -4
- package/dist/melonjs.mjs/physics/world.js +6 -9
- package/dist/melonjs.mjs/plugin/plugin.js +3 -3
- package/dist/melonjs.mjs/renderable/collectable.js +2 -2
- package/dist/melonjs.mjs/renderable/colorlayer.js +4 -4
- package/dist/melonjs.mjs/renderable/container.js +25 -25
- package/dist/melonjs.mjs/renderable/draggable.js +1 -1
- package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
- package/dist/melonjs.mjs/renderable/imagelayer.js +4 -4
- package/dist/melonjs.mjs/renderable/light2d.js +3 -3
- package/dist/melonjs.mjs/renderable/nineslicesprite.js +2 -2
- package/dist/melonjs.mjs/renderable/renderable.js +26 -26
- package/dist/melonjs.mjs/renderable/sprite.js +3 -3
- package/dist/melonjs.mjs/renderable/text/bitmaptext.js +421 -0
- package/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +195 -0
- package/dist/melonjs.mjs/renderable/text/glyph.js +65 -0
- package/dist/melonjs.mjs/renderable/text/text.js +422 -0
- package/dist/melonjs.mjs/renderable/text/textmetrics.js +175 -0
- package/dist/melonjs.mjs/renderable/text/textstyle.js +21 -0
- package/dist/melonjs.mjs/renderable/trigger.js +10 -10
- package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +7 -7
- package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +7 -7
- package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +3 -3
- package/dist/melonjs.mjs/state/stage.js +2 -2
- package/dist/melonjs.mjs/state/state.js +1 -38
- package/dist/melonjs.mjs/system/device.js +49 -10
- package/dist/melonjs.mjs/system/dom.js +1 -1
- package/dist/melonjs.mjs/system/event.js +24 -2
- package/dist/melonjs.mjs/system/platform.js +18 -18
- package/dist/melonjs.mjs/system/pooling.js +10 -10
- package/dist/melonjs.mjs/system/save.js +1 -1
- package/dist/melonjs.mjs/system/timer.js +1 -1
- package/dist/melonjs.mjs/text/bitmaptext.js +1 -1
- package/dist/melonjs.mjs/text/bitmaptextdata.js +3 -6
- package/dist/melonjs.mjs/text/glyph.js +1 -1
- package/dist/melonjs.mjs/text/text.js +1 -1
- package/dist/melonjs.mjs/text/textmetrics.js +1 -1
- package/dist/melonjs.mjs/text/textstyle.js +1 -1
- package/dist/melonjs.mjs/tweens/easing.js +1 -1
- package/dist/melonjs.mjs/tweens/interpolation.js +1 -1
- package/dist/melonjs.mjs/tweens/tween.js +2 -2
- package/dist/melonjs.mjs/utils/agent.js +1 -1
- package/dist/melonjs.mjs/utils/array.js +1 -1
- package/dist/melonjs.mjs/utils/file.js +1 -1
- package/dist/melonjs.mjs/utils/function.js +2 -3
- package/dist/melonjs.mjs/utils/string.js +1 -1
- package/dist/melonjs.mjs/utils/utils.js +1 -1
- package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +3 -7
- package/dist/melonjs.mjs/video/renderer.js +16 -16
- package/dist/melonjs.mjs/video/texture/atlas.js +13 -13
- package/dist/melonjs.mjs/video/texture/cache.js +1 -1
- package/dist/melonjs.mjs/video/texture/canvas_texture.js +15 -15
- package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
- package/dist/melonjs.mjs/video/video.js +4 -4
- package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +3 -3
- package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +13 -14
- package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +5 -5
- package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +2 -3
- package/dist/melonjs.mjs/video/webgl/glshader.js +2 -2
- package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
- package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
- package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
- package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
- package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
- package/dist/melonjs.mjs/video/webgl/utils/precision.js +4 -4
- package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
- package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
- package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
- package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +50 -52
- package/dist/melonjs.module.js +1137 -1576
- package/dist/types/application/application.d.ts +28 -4
- package/dist/types/application/header.d.ts +2 -2
- package/dist/types/application/settings.d.ts +23 -23
- package/dist/types/audio/audio.d.ts +3 -5
- package/dist/types/camera/camera2d.d.ts +13 -16
- package/dist/types/entity/entity.d.ts +0 -1
- package/dist/types/geometries/ellipse.d.ts +18 -50
- package/dist/types/geometries/path2d.d.ts +1 -1
- package/dist/types/geometries/point.d.ts +5 -13
- package/dist/types/geometries/poly.d.ts +26 -75
- package/dist/types/geometries/rectangle.d.ts +12 -58
- package/dist/types/geometries/roundrect.d.ts +2 -11
- package/dist/types/index.d.ts +3 -3
- package/dist/types/input/gamepad.d.ts +31 -31
- package/dist/types/input/keyboard.d.ts +105 -105
- package/dist/types/input/pointer.d.ts +21 -21
- package/dist/types/input/pointerevent.d.ts +6 -6
- package/dist/types/level/tiled/TMXLayer.d.ts +1 -1
- package/dist/types/math/matrix2.d.ts +9 -63
- package/dist/types/math/matrix3.d.ts +9 -68
- package/dist/types/math/observable_vector2.d.ts +2 -2
- package/dist/types/math/observable_vector3.d.ts +2 -2
- package/dist/types/math/vector2.d.ts +8 -92
- package/dist/types/math/vector3.d.ts +8 -92
- package/dist/types/particles/settings.d.ts +29 -29
- package/dist/types/physics/body.d.ts +10 -8
- package/dist/types/physics/bounds.d.ts +24 -30
- package/dist/types/physics/collision.d.ts +12 -12
- package/dist/types/physics/detector.d.ts +1 -1
- package/dist/types/physics/world.d.ts +4 -7
- package/dist/types/renderable/container.d.ts +19 -19
- package/dist/types/renderable/imagelayer.d.ts +6 -6
- package/dist/types/renderable/light2d.d.ts +7 -7
- package/dist/types/renderable/renderable.d.ts +9 -16
- package/dist/types/renderable/text/bitmaptext.d.ts +151 -0
- package/dist/types/renderable/text/bitmaptextdata.d.ts +35 -0
- package/dist/types/renderable/text/glyph.d.ts +28 -0
- package/dist/types/renderable/text/text.d.ts +159 -0
- package/dist/types/renderable/text/textmetrics.d.ts +47 -0
- package/dist/types/renderable/text/textstyle.d.ts +5 -0
- package/dist/types/renderable/ui/uibaseelement.d.ts +0 -1
- package/dist/types/renderable/ui/uispriteelement.d.ts +0 -1
- package/dist/types/renderable/ui/uitextbutton.d.ts +2 -7
- package/dist/types/state/state.d.ts +11 -11
- package/dist/types/system/device.d.ts +15 -9
- package/dist/types/system/event.d.ts +20 -0
- package/dist/types/system/platform.d.ts +17 -17
- package/dist/types/utils/function.d.ts +1 -2
- package/dist/types/video/renderer.d.ts +13 -13
- package/dist/types/video/texture/canvas_texture.d.ts +14 -14
- package/dist/types/video/video.d.ts +2 -2
- package/dist/types/video/webgl/buffer/vertex.d.ts +2 -2
- package/dist/types/video/webgl/compositors/compositor.d.ts +24 -13
- package/dist/types/video/webgl/compositors/primitive_compositor.d.ts +0 -1
- package/dist/types/video/webgl/compositors/quad_compositor.d.ts +0 -1
- package/dist/types/video/webgl/utils/precision.d.ts +1 -1
- package/dist/types/video/webgl/webgl_renderer.d.ts +47 -50
- package/package.json +15 -15
- package/src/application/application.js +51 -3
- package/src/application/header.js +1 -1
- package/src/application/resize.js +3 -7
- package/src/application/settings.js +4 -4
- package/src/audio/audio.js +3 -5
- package/src/camera/camera2d.js +11 -13
- package/src/entity/entity.js +2 -3
- package/src/geometries/ellipse.js +25 -58
- package/src/geometries/line.js +17 -24
- package/src/geometries/path2d.js +15 -12
- package/src/geometries/point.js +7 -15
- package/src/geometries/poly.js +39 -96
- package/src/geometries/rectangle.js +36 -90
- package/src/geometries/roundrect.js +25 -34
- package/src/index.js +4 -4
- package/src/input/keyboard.js +2 -2
- package/src/input/pointer.js +3 -3
- package/src/input/pointerevent.js +5 -6
- package/src/lang/deprecated.js +1 -1
- package/src/level/tiled/TMXLayer.js +15 -32
- package/src/level/tiled/TMXObject.js +2 -3
- package/src/level/tiled/TMXTile.js +3 -3
- package/src/level/tiled/TMXTileMap.js +2 -2
- package/src/level/tiled/TMXTileset.js +3 -6
- package/src/level/tiled/TMXTilesetGroup.js +1 -1
- package/src/level/tiled/TMXUtils.js +25 -28
- package/src/level/tiled/renderer/TMXHexagonalRenderer.js +2 -2
- package/src/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
- package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +1 -1
- package/src/level/tiled/renderer/TMXRenderer.js +1 -1
- package/src/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
- package/src/loader/parser.js +3 -4
- package/src/math/color.js +1 -1
- package/src/math/matrix2.js +4 -58
- package/src/math/matrix3.js +81 -140
- package/src/math/observable_vector2.js +6 -6
- package/src/math/observable_vector3.js +4 -4
- package/src/math/vector2.js +6 -90
- package/src/math/vector3.js +5 -89
- package/src/particles/emitter.js +1 -1
- package/src/particles/particle.js +1 -1
- package/src/physics/body.js +21 -19
- package/src/physics/bounds.js +26 -32
- package/src/physics/collision.js +4 -4
- package/src/physics/detector.js +9 -9
- package/src/physics/quadtree.js +4 -4
- package/src/physics/sat.js +2 -3
- package/src/physics/world.js +5 -8
- package/src/polyfill/roundrect.js +163 -163
- package/src/renderable/collectable.js +1 -1
- package/src/renderable/colorlayer.js +3 -3
- package/src/renderable/container.js +24 -24
- package/src/renderable/imagelayer.js +3 -3
- package/src/renderable/light2d.js +2 -2
- package/src/renderable/nineslicesprite.js +1 -1
- package/src/renderable/renderable.js +25 -25
- package/src/renderable/sprite.js +2 -2
- package/src/{text → renderable/text}/bitmaptext.js +8 -8
- package/src/{text → renderable/text}/bitmaptextdata.js +4 -7
- package/src/{text → renderable/text}/glyph.js +1 -1
- package/src/{text → renderable/text}/text.js +16 -17
- package/src/{text → renderable/text}/textmetrics.js +2 -2
- package/src/renderable/trigger.js +9 -9
- package/src/renderable/ui/uibaseelement.js +6 -6
- package/src/renderable/ui/uispriteelement.js +6 -6
- package/src/renderable/ui/uitextbutton.js +2 -2
- package/src/state/stage.js +1 -1
- package/src/state/state.js +0 -49
- package/src/system/device.js +48 -9
- package/src/system/event.js +22 -0
- package/src/system/platform.js +18 -18
- package/src/system/pooling.js +9 -9
- package/src/tweens/tween.js +1 -1
- package/src/utils/function.js +1 -2
- package/src/video/canvas/canvas_renderer.js +2 -6
- package/src/video/renderer.js +15 -15
- package/src/video/texture/atlas.js +12 -12
- package/src/video/texture/canvas_texture.js +14 -14
- package/src/video/video.js +3 -3
- package/src/video/webgl/buffer/vertex.js +2 -2
- package/src/video/webgl/compositors/compositor.js +12 -13
- package/src/video/webgl/compositors/primitive_compositor.js +4 -4
- package/src/video/webgl/compositors/quad_compositor.js +1 -2
- package/src/video/webgl/glshader.js +1 -1
- package/src/video/webgl/utils/precision.js +3 -3
- package/src/video/webgl/webgl_renderer.js +49 -51
- /package/src/{text → renderable/text}/textstyle.js +0 -0
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
export default ParticleEmitterSettings;
|
|
2
2
|
declare namespace ParticleEmitterSettings {
|
|
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
|
-
|
|
3
|
+
let width: number;
|
|
4
|
+
let height: number;
|
|
5
|
+
let image: HTMLCanvasElement;
|
|
6
|
+
let textureSize: number;
|
|
7
|
+
let tint: string;
|
|
8
|
+
let totalParticles: number;
|
|
9
|
+
let angle: number;
|
|
10
|
+
let angleVariation: number;
|
|
11
|
+
let minLife: number;
|
|
12
|
+
let maxLife: number;
|
|
13
|
+
let speed: number;
|
|
14
|
+
let speedVariation: number;
|
|
15
|
+
let minRotation: number;
|
|
16
|
+
let maxRotation: number;
|
|
17
|
+
let minStartScale: number;
|
|
18
|
+
let maxStartScale: number;
|
|
19
|
+
let minEndScale: number;
|
|
20
|
+
let maxEndScale: number;
|
|
21
|
+
let gravity: number;
|
|
22
|
+
let wind: number;
|
|
23
|
+
let followTrajectory: boolean;
|
|
24
|
+
let textureAdditive: boolean;
|
|
25
|
+
let blendMode: string;
|
|
26
|
+
let onlyInViewport: boolean;
|
|
27
|
+
let floating: boolean;
|
|
28
|
+
let maxParticles: number;
|
|
29
|
+
let frequency: number;
|
|
30
|
+
let duration: number;
|
|
31
|
+
let framesToSkip: number;
|
|
32
32
|
}
|
|
@@ -272,15 +272,17 @@ export default class Body {
|
|
|
272
272
|
forEach(callback: Function, thisArg?: object | undefined, ...args: any[]): void;
|
|
273
273
|
/**
|
|
274
274
|
* Returns true if the any of the shape composing the body contains the given point.
|
|
275
|
-
* @
|
|
276
|
-
* @param {
|
|
277
|
-
* @returns {boolean} true if contains
|
|
278
|
-
*/
|
|
279
|
-
/**
|
|
280
|
-
* Returns true if the any of the shape composing the body contains the given point.
|
|
281
|
-
* @param {number} x - x coordinate
|
|
282
|
-
* @param {number} y - y coordinate
|
|
275
|
+
* @param {number|Vector2d} x - x coordinate or a vector point to check
|
|
276
|
+
* @param {number} [y] - y coordinate
|
|
283
277
|
* @returns {boolean} true if contains
|
|
278
|
+
* @example
|
|
279
|
+
* if (mySprite.body.contains(10, 10)) {
|
|
280
|
+
* // do something
|
|
281
|
+
* }
|
|
282
|
+
* // or
|
|
283
|
+
* if (mySprite.body.contains(myVector2d)) {
|
|
284
|
+
* // do something
|
|
285
|
+
* }
|
|
284
286
|
*/
|
|
285
287
|
contains(...args: any[]): boolean;
|
|
286
288
|
/**
|
|
@@ -96,7 +96,7 @@ export default class Bounds {
|
|
|
96
96
|
* @param {number} x - the x coordinate around which to center this bounds
|
|
97
97
|
* @param {number} y - the y coordinate around which to center this bounds
|
|
98
98
|
*/
|
|
99
|
-
centerOn(x: number, y: number):
|
|
99
|
+
centerOn(x: number, y: number): this;
|
|
100
100
|
/**
|
|
101
101
|
* Updates bounds using the given vertices
|
|
102
102
|
* @param {Vector2d[]|Point[]} vertices - an array of Vector2d or Point
|
|
@@ -131,17 +131,17 @@ export default class Bounds {
|
|
|
131
131
|
addFrame(x0: number, y0: number, x1: number, y1: number, m?: any): void;
|
|
132
132
|
/**
|
|
133
133
|
* Returns true if the bounds contains the given point.
|
|
134
|
-
* @
|
|
135
|
-
* @
|
|
136
|
-
* @method
|
|
137
|
-
* @param {Vector2d} point
|
|
138
|
-
* @returns {boolean} True if the bounds contain the point, otherwise false
|
|
139
|
-
*/
|
|
140
|
-
/**
|
|
141
|
-
* Returns true if the bounds contains the given point.
|
|
142
|
-
* @param {number} x
|
|
143
|
-
* @param {number} y
|
|
134
|
+
* @param {number|Vector2d} x - x coordinate or a vector point to check
|
|
135
|
+
* @param {number} [y] - y coordinate
|
|
144
136
|
* @returns {boolean} True if the bounds contain the point, otherwise false
|
|
137
|
+
* @example
|
|
138
|
+
* if (bounds.contains(10, 10)) {
|
|
139
|
+
* // do something
|
|
140
|
+
* }
|
|
141
|
+
* // or
|
|
142
|
+
* if (bounds.contains(myVector2d)) {
|
|
143
|
+
* // do something
|
|
144
|
+
* }
|
|
145
145
|
*/
|
|
146
146
|
contains(...args: any[]): boolean;
|
|
147
147
|
/**
|
|
@@ -156,29 +156,23 @@ export default class Bounds {
|
|
|
156
156
|
*/
|
|
157
157
|
isFinite(): boolean;
|
|
158
158
|
/**
|
|
159
|
-
* Translates the bounds by the given
|
|
160
|
-
* @
|
|
161
|
-
* @
|
|
162
|
-
* @
|
|
163
|
-
*
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
* Translates the bounds by x on the x axis, and y on the y axis
|
|
167
|
-
* @param {number} x
|
|
168
|
-
* @param {number} y
|
|
159
|
+
* Translates the bounds by the given point
|
|
160
|
+
* @param {number|Vector2d} x - x coordinate or a vector point to translate by
|
|
161
|
+
* @param {number} [y]
|
|
162
|
+
* @example
|
|
163
|
+
* bounds.translate(10, 10);
|
|
164
|
+
* // or
|
|
165
|
+
* bounds.translate(myVector2d);
|
|
169
166
|
*/
|
|
170
167
|
translate(...args: any[]): void;
|
|
171
|
-
/**
|
|
172
|
-
* Shifts the bounds to the given position vector.
|
|
173
|
-
* @name shift
|
|
174
|
-
* @memberof Bounds
|
|
175
|
-
* @method
|
|
176
|
-
* @param {Vector2d} position
|
|
177
|
-
*/
|
|
178
168
|
/**
|
|
179
169
|
* Shifts the bounds to the given x, y position.
|
|
180
|
-
* @param {number} x
|
|
181
|
-
* @param {number} y
|
|
170
|
+
* @param {number|Vector2d} x - x coordinate or a vector point to shift to
|
|
171
|
+
* @param {number} [y]
|
|
172
|
+
* @example
|
|
173
|
+
* bounds.shift(10, 10);
|
|
174
|
+
* // or
|
|
175
|
+
* bounds.shift(myVector2d);
|
|
182
176
|
*/
|
|
183
177
|
shift(...args: any[]): void;
|
|
184
178
|
/**
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
export default collision;
|
|
2
2
|
declare namespace collision {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
let maxChildren: number;
|
|
4
|
+
let maxDepth: number;
|
|
5
5
|
namespace types {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
6
|
+
let NO_OBJECT: number;
|
|
7
|
+
let PLAYER_OBJECT: number;
|
|
8
|
+
let NPC_OBJECT: number;
|
|
9
|
+
let ENEMY_OBJECT: number;
|
|
10
|
+
let COLLECTABLE_OBJECT: number;
|
|
11
|
+
let ACTION_OBJECT: number;
|
|
12
|
+
let PROJECTILE_OBJECT: number;
|
|
13
|
+
let WORLD_SHAPE: number;
|
|
14
|
+
let USER: number;
|
|
15
|
+
let ALL_OBJECT: number;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* Checks for object colliding with the given line
|
|
@@ -25,7 +25,7 @@ export default class Detector {
|
|
|
25
25
|
* detect collision between two bodies.
|
|
26
26
|
* @param {Body} bodyA - a reference to body A.
|
|
27
27
|
* @param {Body} bodyB - a reference to body B.
|
|
28
|
-
* @returns {
|
|
28
|
+
* @returns {boolean} true if colliding
|
|
29
29
|
*/
|
|
30
30
|
collides(bodyA: Body, bodyB: Body, response?: ResponseObject): boolean;
|
|
31
31
|
/**
|
|
@@ -30,13 +30,10 @@ export default class World extends Container {
|
|
|
30
30
|
*/
|
|
31
31
|
gravity: Vector2d;
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* (amount of layer, layer size, amount of tiles per layer, etc.)<br>
|
|
38
|
-
* note : rendering method is also configurable per layer by adding this
|
|
39
|
-
* property to your layer (in Tiled).
|
|
33
|
+
* Enabled pre-rendering for all tile layers. <br>
|
|
34
|
+
* If false layers are rendered dynamically, if true layers are first fully rendered into an offscreen canvas.<br>
|
|
35
|
+
* the "best" rendering method depends of your game (amount of layer, layer size, amount of tiles per layer, etc.)<br>
|
|
36
|
+
* Note : rendering method is also configurable per layer by adding a boolean "preRender" property to your layer in Tiled ({@link https://doc.mapeditor.org/en/stable/manual/custom-properties/#adding-properties}).
|
|
40
37
|
* @type {boolean}
|
|
41
38
|
* @default false
|
|
42
39
|
*/
|
|
@@ -93,7 +93,7 @@ export default class Container extends Renderable {
|
|
|
93
93
|
* will not be in any container. <br>
|
|
94
94
|
* if the given child implements a onActivateEvent method, that method will be called
|
|
95
95
|
* once the child is added to this container.
|
|
96
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
96
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be added
|
|
97
97
|
* @param {number} [z] - forces the z index of the child to the specified value
|
|
98
98
|
* @returns {Renderable} the added child
|
|
99
99
|
*/
|
|
@@ -101,8 +101,8 @@ export default class Container extends Renderable {
|
|
|
101
101
|
/**
|
|
102
102
|
* Add a child to the container at the specified index<br>
|
|
103
103
|
* (the list won't be sorted after insertion)
|
|
104
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
105
|
-
* @param {number} index
|
|
104
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be added
|
|
105
|
+
* @param {number} index - The index at which to insert the child
|
|
106
106
|
* @returns {Renderable} the added child
|
|
107
107
|
*/
|
|
108
108
|
addChildAt(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText, index: number): Renderable;
|
|
@@ -127,31 +127,31 @@ export default class Container extends Renderable {
|
|
|
127
127
|
forEach(callback: Function, thisArg?: object | undefined, ...args: any[]): void;
|
|
128
128
|
/**
|
|
129
129
|
* Swaps the position (z-index) of 2 children
|
|
130
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
131
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child2
|
|
130
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be added
|
|
131
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child2 - Child to be added
|
|
132
132
|
*/
|
|
133
133
|
swapChildren(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText, child2: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): void;
|
|
134
134
|
/**
|
|
135
135
|
* Returns the Child at the specified index
|
|
136
|
-
* @param {number} index
|
|
136
|
+
* @param {number} index - The index of the child
|
|
137
137
|
* @returns {Renderable} the child at the specified index
|
|
138
138
|
*/
|
|
139
139
|
getChildAt(index: number): Renderable;
|
|
140
140
|
/**
|
|
141
141
|
* Returns the index of the given Child
|
|
142
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
142
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - The child object
|
|
143
143
|
* @returns {number} index
|
|
144
144
|
*/
|
|
145
145
|
getChildIndex(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): number;
|
|
146
146
|
/**
|
|
147
147
|
* Returns the next child within the container or undefined if none
|
|
148
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
148
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - The child object
|
|
149
149
|
* @returns {Renderable} child
|
|
150
150
|
*/
|
|
151
151
|
getNextChild(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): Renderable;
|
|
152
152
|
/**
|
|
153
153
|
* Returns true if contains the specified Child
|
|
154
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
154
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - The child object
|
|
155
155
|
* @returns {boolean}
|
|
156
156
|
*/
|
|
157
157
|
hasChild(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): boolean;
|
|
@@ -180,7 +180,7 @@ export default class Container extends Renderable {
|
|
|
180
180
|
getChildByProp(prop: string, value: string | RegExp | number | boolean): Renderable[];
|
|
181
181
|
/**
|
|
182
182
|
* returns the list of childs with the specified class type
|
|
183
|
-
* @param {object} classType
|
|
183
|
+
* @param {object} classType - Class type
|
|
184
184
|
* @returns {Renderable[]} Array of children
|
|
185
185
|
*/
|
|
186
186
|
getChildByType(classType: object): Renderable[];
|
|
@@ -208,12 +208,12 @@ export default class Container extends Renderable {
|
|
|
208
208
|
getChildren(): Renderable[];
|
|
209
209
|
/**
|
|
210
210
|
* Checks if this container is root or if it's attached to the root container.
|
|
211
|
-
* @returns {boolean}
|
|
211
|
+
* @returns {boolean} true if this container is root or if it's attached to the root container
|
|
212
212
|
*/
|
|
213
213
|
isAttachedToRoot(): boolean;
|
|
214
214
|
/**
|
|
215
215
|
* Returns the instance of the root container (i.e. the current application World container).
|
|
216
|
-
* @returns {Container}
|
|
216
|
+
* @returns {Container} root container
|
|
217
217
|
*/
|
|
218
218
|
getRootAncestor(): Container;
|
|
219
219
|
/**
|
|
@@ -223,7 +223,7 @@ export default class Container extends Renderable {
|
|
|
223
223
|
/**
|
|
224
224
|
* Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has completed. <br>
|
|
225
225
|
* if the given child implements a onDeactivateEvent() method, that method will be called once the child is removed from this container.
|
|
226
|
-
* @param {RendRenderable|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapTexterable} child
|
|
226
|
+
* @param {RendRenderable|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapTexterable} child - Child to be removed
|
|
227
227
|
* @param {boolean} [keepalive=false] - true to prevent calling child.destroy()
|
|
228
228
|
*/
|
|
229
229
|
removeChild(child: RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable, keepalive?: boolean | undefined): void;
|
|
@@ -231,7 +231,7 @@ export default class Container extends Renderable {
|
|
|
231
231
|
* Removes (and optionally destroys) a child from the container.<br>
|
|
232
232
|
* (removal is immediate and unconditional)<br>
|
|
233
233
|
* Never use keepalive=true with objects from {@link pool}. Doing so will create a memory leak.
|
|
234
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
234
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be removed
|
|
235
235
|
* @param {boolean} [keepalive=False] - True to prevent calling child.destroy()
|
|
236
236
|
*/
|
|
237
237
|
removeChildNow(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText, keepalive?: boolean | undefined): void;
|
|
@@ -244,26 +244,26 @@ export default class Container extends Renderable {
|
|
|
244
244
|
setChildsProperty(prop: string, value: object, recursive?: boolean | undefined): void;
|
|
245
245
|
/**
|
|
246
246
|
* Move the child in the group one step forward (z depth).
|
|
247
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
247
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be moved
|
|
248
248
|
*/
|
|
249
249
|
moveUp(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): void;
|
|
250
250
|
/**
|
|
251
251
|
* Move the child in the group one step backward (z depth).
|
|
252
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
252
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be moved
|
|
253
253
|
*/
|
|
254
254
|
moveDown(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): void;
|
|
255
255
|
/**
|
|
256
256
|
* Move the specified child to the top(z depth).
|
|
257
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
257
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be moved
|
|
258
258
|
*/
|
|
259
259
|
moveToTop(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): void;
|
|
260
260
|
/**
|
|
261
261
|
* Move the specified child the bottom (z depth).
|
|
262
|
-
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child
|
|
262
|
+
* @param {Renderable|Entity|Sprite|Collectable|Trigger|Draggable|DropTarget|NineSliceSprite|ImageLayer|ColorLayer|Light2d|UIBaseElement|UISpriteElement|UITextButton|Text|BitmapText} child - Child to be moved
|
|
263
263
|
*/
|
|
264
264
|
moveToBottom(child: Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText): void;
|
|
265
265
|
/**
|
|
266
|
-
* Manually trigger the sort of all the childs in the container
|
|
266
|
+
* Manually trigger the sort of all the childs in the container
|
|
267
267
|
* @param {boolean} [recursive=false] - recursively sort all containers if true
|
|
268
268
|
*/
|
|
269
269
|
sort(recursive?: boolean | undefined): void;
|
|
@@ -12,7 +12,7 @@ export default class ImageLayer {
|
|
|
12
12
|
* @param {string} [settings.name="me.ImageLayer"] - layer name
|
|
13
13
|
* @param {number} [settings.z=0] - z-index position
|
|
14
14
|
* @param {number|Vector2d} [settings.ratio=1.0] - Scrolling ratio to be applied. See {@link ImageLayer#ratio}
|
|
15
|
-
* @param {
|
|
15
|
+
* @param {"repeat"|"repeat-x"|"repeat-y"|"no-repeat"} [settings.repeat="repeat"] - define if and how an Image Layer should be repeated. See {@link ImageLayer#repeat}
|
|
16
16
|
* @param {number|Vector2d} [settings.anchorPoint=0.0] - Image origin. See {@link ImageLayer#anchorPoint}
|
|
17
17
|
* @example
|
|
18
18
|
* // create a repetitive background pattern on the X axis using the citycloud image asset
|
|
@@ -26,7 +26,7 @@ export default class ImageLayer {
|
|
|
26
26
|
name?: string | undefined;
|
|
27
27
|
z?: number | undefined;
|
|
28
28
|
ratio?: number | Vector2d;
|
|
29
|
-
repeat?:
|
|
29
|
+
repeat?: "repeat" | "no-repeat" | "repeat-x" | "repeat-y" | undefined;
|
|
30
30
|
anchorPoint?: number | Vector2d;
|
|
31
31
|
});
|
|
32
32
|
floating: boolean;
|
|
@@ -83,10 +83,10 @@ export default class ImageLayer {
|
|
|
83
83
|
updateLayer(vpos: any): void;
|
|
84
84
|
isDirty: boolean | undefined;
|
|
85
85
|
/**
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
86
|
+
* override the default predraw function
|
|
87
|
+
* as repeat and anchor are managed directly in the draw method
|
|
88
|
+
* @ignore
|
|
89
|
+
*/
|
|
90
90
|
preDraw(renderer: any): void;
|
|
91
91
|
/**
|
|
92
92
|
* draw this ImageLayer (automatically called by melonJS)
|
|
@@ -8,13 +8,13 @@
|
|
|
8
8
|
*/
|
|
9
9
|
export default class Light2d extends Renderable {
|
|
10
10
|
/**
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
* @param {number} x - The horizontal position of the light.
|
|
12
|
+
* @param {number} y - The vertical position of the light.
|
|
13
|
+
* @param {number} radiusX - The horizontal radius of the light.
|
|
14
|
+
* @param {number} [radiusY=radiusX] - The vertical radius of the light.
|
|
15
|
+
* @param {Color|string} [color="#FFF"] - the color of the light
|
|
16
|
+
* @param {number} [intensity=0.7] - The intensity of the light.
|
|
17
|
+
*/
|
|
18
18
|
constructor(x: number, y: number, radiusX: number, radiusY?: number | undefined, color?: Color | string, intensity?: number | undefined);
|
|
19
19
|
/**
|
|
20
20
|
* the color of the light
|
|
@@ -4,12 +4,6 @@
|
|
|
4
4
|
* @augments Rect
|
|
5
5
|
*/
|
|
6
6
|
export default class Renderable extends Rect {
|
|
7
|
-
/**
|
|
8
|
-
* Position of the Renderable relative to its parent container
|
|
9
|
-
* @public
|
|
10
|
-
* @type {ObservableVector3d}
|
|
11
|
-
*/
|
|
12
|
-
public pos: ObservableVector3d;
|
|
13
7
|
/**
|
|
14
8
|
* The anchor point is used for attachment behavior, and/or when applying transformations.<br>
|
|
15
9
|
* The coordinate system places the origin at the top left corner of the frame (0, 0) and (1, 1) means the bottom-right corner<br>
|
|
@@ -64,11 +58,11 @@ export default class Renderable extends Rect {
|
|
|
64
58
|
*/
|
|
65
59
|
body: Body;
|
|
66
60
|
/**
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
61
|
+
* (G)ame (U)nique (Id)entifier" <br>
|
|
62
|
+
* a GUID will be allocated for any renderable object added <br>
|
|
63
|
+
* to an object container (including the `me.game.world` container)
|
|
64
|
+
* @type {string}
|
|
65
|
+
*/
|
|
72
66
|
GUID: string;
|
|
73
67
|
/**
|
|
74
68
|
* an event handler that is called when the renderable leave or enter a camera viewport
|
|
@@ -333,11 +327,11 @@ export default class Renderable extends Rect {
|
|
|
333
327
|
* update the renderable's bounding rect (private)
|
|
334
328
|
* @ignore
|
|
335
329
|
*/
|
|
336
|
-
updateBoundsPos(newX?:
|
|
330
|
+
updateBoundsPos(newX?: any, newY?: any): void;
|
|
337
331
|
/**
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
332
|
+
* return the renderable absolute position in the game world
|
|
333
|
+
* @returns {Vector2d}
|
|
334
|
+
*/
|
|
341
335
|
getAbsolutePosition(): Vector2d;
|
|
342
336
|
_absPos: object | undefined;
|
|
343
337
|
/**
|
|
@@ -409,5 +403,4 @@ export default class Renderable extends Rect {
|
|
|
409
403
|
onDestroyEvent(): void;
|
|
410
404
|
}
|
|
411
405
|
import Rect from "./../geometries/rectangle.js";
|
|
412
|
-
import ObservableVector3d from "./../math/observable_vector3.js";
|
|
413
406
|
import ObservableVector2d from "./../math/observable_vector2.js";
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @classdesc
|
|
3
|
+
* a bitmap font object
|
|
4
|
+
* @augments Renderable
|
|
5
|
+
*/
|
|
6
|
+
export default class BitmapText extends Renderable {
|
|
7
|
+
/**
|
|
8
|
+
* @param {number} x - position of the text object
|
|
9
|
+
* @param {number} y - position of the text object
|
|
10
|
+
* @param {object} settings - the text configuration
|
|
11
|
+
* @param {string|Image} settings.font - a font name to identify the corresponing source image
|
|
12
|
+
* @param {string} [settings.fontData=settings.font] - the bitmap font data corresponding name, or the bitmap font data itself
|
|
13
|
+
* @param {number} [settings.size] - size a scaling ratio
|
|
14
|
+
* @param {Color|string} [settings.fillStyle] - a CSS color value used to tint the bitmapText (@see BitmapText.tint)
|
|
15
|
+
* @param {number} [settings.lineWidth=1] - line width, in pixels, when drawing stroke
|
|
16
|
+
* @param {string} [settings.textAlign="left"] - horizontal text alignment
|
|
17
|
+
* @param {string} [settings.textBaseline="top"] - the text baseline
|
|
18
|
+
* @param {number} [settings.lineHeight=1.0] - line spacing height
|
|
19
|
+
* @param {Vector2d} [settings.anchorPoint={x:0.0, y:0.0}] - anchor point to draw the text at
|
|
20
|
+
* @param {number} [settings.wordWrapWidth] - the maximum length in CSS pixel for a single segment of text
|
|
21
|
+
* @param {(string|string[])} [settings.text] - a string, or an array of strings
|
|
22
|
+
* @example
|
|
23
|
+
* // Use me.loader.preload or me.loader.load to load assets
|
|
24
|
+
* me.loader.preload([
|
|
25
|
+
* { name: "arial", type: "binary" src: "data/font/arial.fnt" },
|
|
26
|
+
* { name: "arial", type: "image" src: "data/font/arial.png" },
|
|
27
|
+
* ])
|
|
28
|
+
* // Then create an instance of your bitmap font:
|
|
29
|
+
* let myFont = new me.BitmapText(x, y, {font:"arial", text:"Hello"});
|
|
30
|
+
* // two possibilities for using "myFont"
|
|
31
|
+
* // either call the draw function from your Renderable draw function
|
|
32
|
+
* myFont.draw(renderer, "Hello!", 0, 0);
|
|
33
|
+
* // or just add it to the word container
|
|
34
|
+
* me.game.world.addChild(myFont);
|
|
35
|
+
*/
|
|
36
|
+
constructor(x: number, y: number, settings: {
|
|
37
|
+
font: string | (new (width?: number | undefined, height?: number | undefined) => HTMLImageElement);
|
|
38
|
+
fontData?: string | undefined;
|
|
39
|
+
size?: number | undefined;
|
|
40
|
+
fillStyle?: string | Color | undefined;
|
|
41
|
+
lineWidth?: number | undefined;
|
|
42
|
+
textAlign?: string | undefined;
|
|
43
|
+
textBaseline?: string | undefined;
|
|
44
|
+
lineHeight?: number | undefined;
|
|
45
|
+
anchorPoint?: any;
|
|
46
|
+
wordWrapWidth?: number | undefined;
|
|
47
|
+
text?: string | string[] | undefined;
|
|
48
|
+
});
|
|
49
|
+
/**
|
|
50
|
+
* Set the default text alignment (or justification),<br>
|
|
51
|
+
* possible values are "left", "right", and "center".
|
|
52
|
+
* @public
|
|
53
|
+
* @type {string}
|
|
54
|
+
* @default "left"
|
|
55
|
+
*/
|
|
56
|
+
public textAlign: string;
|
|
57
|
+
/**
|
|
58
|
+
* Set the text baseline (e.g. the Y-coordinate for the draw operation), <br>
|
|
59
|
+
* possible values are "top", "hanging, "middle, "alphabetic, "ideographic, "bottom"<br>
|
|
60
|
+
* @public
|
|
61
|
+
* @type {string}
|
|
62
|
+
* @default "top"
|
|
63
|
+
*/
|
|
64
|
+
public textBaseline: string;
|
|
65
|
+
/**
|
|
66
|
+
* Set the line spacing height (when displaying multi-line strings). <br>
|
|
67
|
+
* Current font height will be multiplied with this value to set the line height.
|
|
68
|
+
* @public
|
|
69
|
+
* @type {number}
|
|
70
|
+
* @default 1.0
|
|
71
|
+
*/
|
|
72
|
+
public lineHeight: number;
|
|
73
|
+
/**
|
|
74
|
+
* the maximum length in CSS pixel for a single segment of text.
|
|
75
|
+
* (use -1 to disable word wrapping)
|
|
76
|
+
* @public
|
|
77
|
+
* @type {number}
|
|
78
|
+
* @default -1
|
|
79
|
+
*/
|
|
80
|
+
public wordWrapWidth: number;
|
|
81
|
+
/**
|
|
82
|
+
* the text to be displayed
|
|
83
|
+
* @private
|
|
84
|
+
*/
|
|
85
|
+
private _text;
|
|
86
|
+
/**
|
|
87
|
+
* scaled font size
|
|
88
|
+
* @private
|
|
89
|
+
*/
|
|
90
|
+
private fontScale;
|
|
91
|
+
/**
|
|
92
|
+
* font image
|
|
93
|
+
* @private
|
|
94
|
+
*/
|
|
95
|
+
private fontImage;
|
|
96
|
+
/**
|
|
97
|
+
* font data
|
|
98
|
+
* @private
|
|
99
|
+
*/
|
|
100
|
+
private fontData;
|
|
101
|
+
public set fillStyle(arg: Color);
|
|
102
|
+
/**
|
|
103
|
+
* defines the color used to tint the bitmap text
|
|
104
|
+
* @public
|
|
105
|
+
* @type {Color}
|
|
106
|
+
* @see Renderable#tint
|
|
107
|
+
*/
|
|
108
|
+
public get fillStyle(): Color;
|
|
109
|
+
metrics: TextMetrics;
|
|
110
|
+
/**
|
|
111
|
+
* change the font settings
|
|
112
|
+
* @param {string} textAlign - ("left", "center", "right")
|
|
113
|
+
* @param {number} [scale]
|
|
114
|
+
* @returns {BitmapText} this object for chaining
|
|
115
|
+
*/
|
|
116
|
+
set(textAlign: string, scale?: number | undefined): BitmapText;
|
|
117
|
+
/**
|
|
118
|
+
* change the text to be displayed
|
|
119
|
+
* @param {number|string|string[]} value - a string, or an array of strings
|
|
120
|
+
* @returns {BitmapText} this object for chaining
|
|
121
|
+
*/
|
|
122
|
+
setText(value?: number | string | string[]): BitmapText;
|
|
123
|
+
/**
|
|
124
|
+
* change the font display size
|
|
125
|
+
* @param {number} scale - ratio
|
|
126
|
+
* @returns {BitmapText} this object for chaining
|
|
127
|
+
*/
|
|
128
|
+
resize(scale: number): BitmapText;
|
|
129
|
+
/**
|
|
130
|
+
* measure the given text size in pixels
|
|
131
|
+
* @param {string} [text]
|
|
132
|
+
* @returns {TextMetrics} a TextMetrics object with two properties: `width` and `height`, defining the output dimensions
|
|
133
|
+
*/
|
|
134
|
+
measureText(text?: string | undefined): TextMetrics;
|
|
135
|
+
/**
|
|
136
|
+
* draw the bitmap font
|
|
137
|
+
* @param {CanvasRenderer|WebGLRenderer} renderer - Reference to the destination renderer instance
|
|
138
|
+
* @param {string} [text]
|
|
139
|
+
* @param {number} [x]
|
|
140
|
+
* @param {number} [y]
|
|
141
|
+
*/
|
|
142
|
+
draw(renderer: CanvasRenderer | WebGLRenderer, text?: string | undefined, x?: number | undefined, y?: number | undefined): void;
|
|
143
|
+
/**
|
|
144
|
+
* Destroy function
|
|
145
|
+
* @ignore
|
|
146
|
+
*/
|
|
147
|
+
destroy(): void;
|
|
148
|
+
}
|
|
149
|
+
import Renderable from "../renderable.js";
|
|
150
|
+
import Color from "../../math/color.js";
|
|
151
|
+
import TextMetrics from "./textmetrics.js";
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Class for storing relevant data from the font file.
|
|
3
|
+
* @ignore
|
|
4
|
+
*/
|
|
5
|
+
export default class BitmapTextData {
|
|
6
|
+
/**
|
|
7
|
+
* @param {string} data - The bitmap font data pulled from the resource loader using me.loader.getBinary()
|
|
8
|
+
*/
|
|
9
|
+
constructor(data: string);
|
|
10
|
+
/**
|
|
11
|
+
* @ignore
|
|
12
|
+
*/
|
|
13
|
+
onResetEvent(data: any): void;
|
|
14
|
+
padTop: number | undefined;
|
|
15
|
+
padRight: number | undefined;
|
|
16
|
+
padBottom: number | undefined;
|
|
17
|
+
padLeft: number | undefined;
|
|
18
|
+
lineHeight: number | undefined;
|
|
19
|
+
capHeight: any;
|
|
20
|
+
descent: any;
|
|
21
|
+
/**
|
|
22
|
+
* The map of glyphs, each key is a char code.
|
|
23
|
+
* @name glyphs
|
|
24
|
+
* @type {object}
|
|
25
|
+
* @memberof BitmapTextData
|
|
26
|
+
*/
|
|
27
|
+
glyphs: object | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* This parses the font data text and builds a map of glyphs containing the data for each character
|
|
30
|
+
* @name parse
|
|
31
|
+
* @memberof BitmapTextData
|
|
32
|
+
* @param {string} fontData
|
|
33
|
+
*/
|
|
34
|
+
parse(fontData: string): void;
|
|
35
|
+
}
|