melonjs 15.2.1 → 15.4.0
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/README.md +1 -1
- 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 +75 -23
- package/dist/melonjs.mjs/application/header.js +2 -2
- package/dist/melonjs.mjs/application/resize.js +13 -11
- package/dist/melonjs.mjs/application/settings.js +37 -1
- 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 +37 -47
- 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 +5 -5
- 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 +31 -39
- 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 +13 -14
- package/dist/melonjs.mjs/state/state.js +4 -51
- package/dist/melonjs.mjs/system/device.js +51 -10
- package/dist/melonjs.mjs/system/dom.js +1 -1
- package/dist/melonjs.mjs/system/event.js +46 -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 +5 -18
- package/dist/melonjs.mjs/video/renderer.js +17 -30
- 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 +5 -29
- 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 +62 -67
- package/dist/melonjs.module.js +1272 -1713
- package/dist/types/application/application.d.ts +32 -31
- package/dist/types/application/header.d.ts +2 -2
- package/dist/types/application/settings.d.ts +80 -16
- package/dist/types/audio/audio.d.ts +4 -6
- 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/level/tiled/TMXUtils.d.ts +4 -6
- 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 +10 -18
- 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/stage.d.ts +3 -2
- package/dist/types/state/state.d.ts +11 -11
- package/dist/types/system/device.d.ts +16 -9
- package/dist/types/system/event.d.ts +40 -0
- package/dist/types/system/platform.d.ts +17 -17
- package/dist/types/utils/function.d.ts +1 -2
- package/dist/types/video/canvas/canvas_renderer.d.ts +0 -23
- package/dist/types/video/renderer.d.ts +16 -43
- package/dist/types/video/texture/canvas_texture.d.ts +14 -14
- package/dist/types/video/video.d.ts +4 -38
- 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 +48 -84
- package/package.json +15 -15
- package/src/application/application.js +73 -21
- package/src/application/header.js +1 -1
- package/src/application/resize.js +11 -9
- package/src/application/settings.js +36 -0
- 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 +36 -46
- 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 +4 -4
- 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 +30 -38
- 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 +12 -13
- package/src/state/state.js +2 -61
- package/src/system/device.js +50 -9
- package/src/system/event.js +44 -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 +4 -17
- package/src/video/renderer.js +16 -29
- package/src/video/texture/atlas.js +12 -12
- package/src/video/texture/canvas_texture.js +14 -14
- package/src/video/video.js +7 -28
- 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 +61 -66
- /package/src/{text → renderable/text}/textstyle.js +0 -0
|
@@ -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
|
|
@@ -204,6 +198,7 @@ export default class Renderable extends Rect {
|
|
|
204
198
|
y: boolean;
|
|
205
199
|
};
|
|
206
200
|
_inViewport: boolean;
|
|
201
|
+
_tint: object;
|
|
207
202
|
/**
|
|
208
203
|
* Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container
|
|
209
204
|
* @see Renderable#floating
|
|
@@ -222,7 +217,6 @@ export default class Renderable extends Rect {
|
|
|
222
217
|
* this.tint.setColor(255, 255, 255);
|
|
223
218
|
*/
|
|
224
219
|
get tint(): Color;
|
|
225
|
-
_tint: object | undefined;
|
|
226
220
|
set inViewport(arg: boolean);
|
|
227
221
|
/**
|
|
228
222
|
* Whether the renderable object is visible and within the 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,6 +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";
|
|
414
|
-
import Color from "./../math/color.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
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* a glyph representing a single character in a font
|
|
3
|
+
* @ignore
|
|
4
|
+
*/
|
|
5
|
+
export default class Glyph {
|
|
6
|
+
id: number;
|
|
7
|
+
x: number;
|
|
8
|
+
y: number;
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
u: number;
|
|
12
|
+
v: number;
|
|
13
|
+
u2: number;
|
|
14
|
+
v2: number;
|
|
15
|
+
xoffset: number;
|
|
16
|
+
yoffset: number;
|
|
17
|
+
xadvance: number;
|
|
18
|
+
fixedWidth: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* @ignore
|
|
21
|
+
*/
|
|
22
|
+
getKerning(ch: any): any;
|
|
23
|
+
/**
|
|
24
|
+
* @ignore
|
|
25
|
+
*/
|
|
26
|
+
setKerning(ch: any, value: any): void;
|
|
27
|
+
kerning: {} | undefined;
|
|
28
|
+
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @classdesc
|
|
3
|
+
* a generic system font object.
|
|
4
|
+
* @augments Renderable
|
|
5
|
+
*/
|
|
6
|
+
export default class Text 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} settings.font - a CSS family font name
|
|
12
|
+
* @param {number|string} settings.size - size, or size + suffix (px, em, pt)
|
|
13
|
+
* @param {Color|string} [settings.fillStyle="#000000"] - a CSS color value
|
|
14
|
+
* @param {Color|string} [settings.strokeStyle="#000000"] - a CSS color value
|
|
15
|
+
* @param {number} [settings.lineWidth=0] - 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
|
+
* let font = new me.Text(0, 0, {font: "Arial", size: 8, fillStyle: this.color});
|
|
24
|
+
*/
|
|
25
|
+
constructor(x: number, y: number, settings: {
|
|
26
|
+
font: string;
|
|
27
|
+
size: number | string;
|
|
28
|
+
fillStyle?: string | Color | undefined;
|
|
29
|
+
strokeStyle?: string | Color | undefined;
|
|
30
|
+
lineWidth?: number | undefined;
|
|
31
|
+
textAlign?: string | undefined;
|
|
32
|
+
textBaseline?: string | undefined;
|
|
33
|
+
lineHeight?: number | undefined;
|
|
34
|
+
anchorPoint?: any;
|
|
35
|
+
wordWrapWidth?: number | undefined;
|
|
36
|
+
text?: string | string[] | undefined;
|
|
37
|
+
});
|
|
38
|
+
/** @ignore */
|
|
39
|
+
onResetEvent(x: any, y: any, settings: any): void;
|
|
40
|
+
fillStyle: any;
|
|
41
|
+
strokeStyle: any;
|
|
42
|
+
/**
|
|
43
|
+
* sets the current line width, in pixels, when drawing stroke
|
|
44
|
+
* @public
|
|
45
|
+
* @type {number}
|
|
46
|
+
* @default 0
|
|
47
|
+
*/
|
|
48
|
+
public lineWidth: number | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* Set the default text alignment (or justification),<br>
|
|
51
|
+
* possible values are "left", "right", and "center".<br>
|
|
52
|
+
* @public
|
|
53
|
+
* @type {string}
|
|
54
|
+
* @default "left"
|
|
55
|
+
*/
|
|
56
|
+
public textAlign: string | undefined;
|
|
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 | undefined;
|
|
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 | undefined;
|
|
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 | undefined;
|
|
81
|
+
/**
|
|
82
|
+
* the text to be displayed
|
|
83
|
+
* @private
|
|
84
|
+
*/
|
|
85
|
+
private _text;
|
|
86
|
+
/**
|
|
87
|
+
* the font size (in px)
|
|
88
|
+
* @public
|
|
89
|
+
* @type {number}
|
|
90
|
+
* @default 10
|
|
91
|
+
*/
|
|
92
|
+
public fontSize: number | undefined;
|
|
93
|
+
canvasTexture: object | undefined;
|
|
94
|
+
metrics: TextMetrics | undefined;
|
|
95
|
+
/**
|
|
96
|
+
* make the font bold
|
|
97
|
+
* @returns {Text} this object for chaining
|
|
98
|
+
*/
|
|
99
|
+
bold(): Text;
|
|
100
|
+
font: any;
|
|
101
|
+
/**
|
|
102
|
+
* make the font italic
|
|
103
|
+
* @returns {Text} this object for chaining
|
|
104
|
+
*/
|
|
105
|
+
italic(): Text;
|
|
106
|
+
/**
|
|
107
|
+
* set the font family and size
|
|
108
|
+
* @param {string} font - a CSS font name
|
|
109
|
+
* @param {number|string} [size=10] - size in px, or size + suffix (px, em, pt)
|
|
110
|
+
* @returns {Text} this object for chaining
|
|
111
|
+
* @example
|
|
112
|
+
* font.setFont("Arial", 20);
|
|
113
|
+
* font.setFont("Arial", "1.5em");
|
|
114
|
+
*/
|
|
115
|
+
setFont(font: string, size?: string | number | undefined): Text;
|
|
116
|
+
/**
|
|
117
|
+
* change the text to be displayed
|
|
118
|
+
* @param {number|string|string[]} value - a string, or an array of strings
|
|
119
|
+
* @returns {Text} this object for chaining
|
|
120
|
+
*/
|
|
121
|
+
setText(value?: number | string | string[]): Text;
|
|
122
|
+
glTextureUnit: any;
|
|
123
|
+
/**
|
|
124
|
+
* measure the given text size in pixels
|
|
125
|
+
* @param {CanvasRenderer|WebGLRenderer} renderer - reference to the active renderer
|
|
126
|
+
* @param {string} [text] - the text to be measured
|
|
127
|
+
* @returns {TextMetrics} a TextMetrics object defining the dimensions of the given piece of text
|
|
128
|
+
*/
|
|
129
|
+
measureText(renderer: CanvasRenderer | WebGLRenderer, text?: string | undefined): TextMetrics;
|
|
130
|
+
/**
|
|
131
|
+
* draw a text at the specified coord
|
|
132
|
+
* @param {CanvasRenderer|WebGLRenderer} renderer - Reference to the destination renderer instance
|
|
133
|
+
* @param {string} [text]
|
|
134
|
+
* @param {number} [x]
|
|
135
|
+
* @param {number} [y]
|
|
136
|
+
*/
|
|
137
|
+
draw(renderer: CanvasRenderer | WebGLRenderer, text?: string | undefined, x?: number | undefined, y?: number | undefined): void;
|
|
138
|
+
/**
|
|
139
|
+
* draw a stroke text at the specified coord, as defined by the `lineWidth` and `fillStroke` properties.
|
|
140
|
+
* @deprecated since 15.0.0
|
|
141
|
+
* @param {CanvasRenderer|WebGLRenderer} renderer - Reference to the destination renderer instance
|
|
142
|
+
* @param {string} text
|
|
143
|
+
* @param {number} x
|
|
144
|
+
* @param {number} y
|
|
145
|
+
*/
|
|
146
|
+
drawStroke(renderer: CanvasRenderer | WebGLRenderer, text: string, x: number, y: number): void;
|
|
147
|
+
/**
|
|
148
|
+
* @ignore
|
|
149
|
+
*/
|
|
150
|
+
_drawFont(context: any, text: any, x: any, y: any): TextMetrics | undefined;
|
|
151
|
+
/**
|
|
152
|
+
* Destroy function
|
|
153
|
+
* @ignore
|
|
154
|
+
*/
|
|
155
|
+
destroy(): void;
|
|
156
|
+
}
|
|
157
|
+
import Renderable from "../renderable.js";
|
|
158
|
+
import TextMetrics from "./textmetrics.js";
|
|
159
|
+
import Color from "../../math/color.js";
|