melonjs 14.5.0 → 15.1.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/LICENSE.md +1 -1
- package/README.md +6 -6
- package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +1 -1
- package/dist/melonjs.mjs/_virtual/arraymultimap.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 +7 -3
- package/dist/melonjs.mjs/_virtual/index2.js +1 -1
- package/dist/melonjs.mjs/_virtual/multimap.js +1 -1
- package/dist/melonjs.mjs/_virtual/setmultimap.js +1 -1
- package/dist/melonjs.mjs/application/application.js +27 -17
- package/dist/melonjs.mjs/application/header.js +6 -5
- package/dist/melonjs.mjs/application/resize.js +20 -20
- package/dist/melonjs.mjs/application/settings.js +1 -1
- package/dist/melonjs.mjs/audio/audio.js +18 -20
- package/dist/melonjs.mjs/camera/camera2d.js +10 -10
- package/dist/melonjs.mjs/const.js +1 -1
- package/dist/melonjs.mjs/entity/entity.js +4 -4
- package/dist/melonjs.mjs/geometries/ellipse.js +6 -6
- package/dist/melonjs.mjs/geometries/line.js +9 -9
- package/dist/melonjs.mjs/geometries/path2d.js +56 -56
- package/dist/melonjs.mjs/geometries/point.js +2 -2
- package/dist/melonjs.mjs/geometries/poly.js +29 -29
- package/dist/melonjs.mjs/geometries/rectangle.js +8 -8
- package/dist/melonjs.mjs/geometries/roundrect.js +6 -6
- package/dist/melonjs.mjs/index.js +8 -6
- package/dist/melonjs.mjs/input/gamepad.js +30 -30
- package/dist/melonjs.mjs/input/input.js +2 -2
- package/dist/melonjs.mjs/input/keyboard.js +15 -15
- package/dist/melonjs.mjs/input/pointer.js +2 -2
- package/dist/melonjs.mjs/input/pointerevent.js +59 -59
- package/dist/melonjs.mjs/lang/console.js +3 -3
- package/dist/melonjs.mjs/lang/deprecated.js +2 -2
- package/dist/melonjs.mjs/level/level.js +9 -9
- package/dist/melonjs.mjs/level/tiled/TMXGroup.js +3 -3
- package/dist/melonjs.mjs/level/tiled/TMXLayer.js +31 -31
- package/dist/melonjs.mjs/level/tiled/TMXObject.js +8 -8
- package/dist/melonjs.mjs/level/tiled/TMXTile.js +8 -8
- package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +19 -19
- package/dist/melonjs.mjs/level/tiled/TMXTileset.js +15 -15
- package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +3 -3
- package/dist/melonjs.mjs/level/tiled/TMXUtils.js +46 -41
- package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +30 -30
- package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +21 -21
- package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +10 -10
- package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +2 -2
- package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +6 -6
- 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 +7 -7
- package/dist/melonjs.mjs/loader/loadingscreen.js +2 -2
- package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
- package/dist/melonjs.mjs/loader/parser.js +13 -13
- package/dist/melonjs.mjs/loader/settings.js +3 -3
- package/dist/melonjs.mjs/math/color.js +25 -24
- package/dist/melonjs.mjs/math/math.js +2 -2
- package/dist/melonjs.mjs/math/matrix2.js +22 -22
- package/dist/melonjs.mjs/math/matrix3.js +52 -52
- package/dist/melonjs.mjs/math/observable_vector2.js +12 -12
- package/dist/melonjs.mjs/math/observable_vector3.js +22 -22
- package/dist/melonjs.mjs/math/vector2.js +11 -11
- package/dist/melonjs.mjs/math/vector3.js +21 -21
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/arraymultimap.js +45 -0
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/multimap.js +130 -0
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/arraymultimap.js +1 -1
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/index.js +1 -1
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/multimap.js +1 -1
- package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/setmultimap.js +1 -1
- package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +1 -1
- package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +2 -2
- 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 +5 -5
- package/dist/melonjs.mjs/particles/particle.js +8 -8
- package/dist/melonjs.mjs/particles/settings.js +3 -3
- package/dist/melonjs.mjs/physics/body.js +17 -17
- package/dist/melonjs.mjs/physics/bounds.js +12 -12
- package/dist/melonjs.mjs/physics/collision.js +3 -3
- package/dist/melonjs.mjs/physics/detector.js +14 -14
- package/dist/melonjs.mjs/physics/quadtree.js +19 -19
- package/dist/melonjs.mjs/physics/response.js +1 -1
- package/dist/melonjs.mjs/physics/sat.js +60 -60
- package/dist/melonjs.mjs/physics/world.js +4 -4
- package/dist/melonjs.mjs/plugin/plugin.js +11 -11
- package/dist/melonjs.mjs/renderable/collectable.js +2 -2
- package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
- package/dist/melonjs.mjs/renderable/container.js +77 -59
- package/dist/melonjs.mjs/renderable/dragndrop.js +5 -5
- package/dist/melonjs.mjs/renderable/imagelayer.js +7 -6
- package/dist/melonjs.mjs/renderable/light2d.js +6 -6
- package/dist/melonjs.mjs/renderable/nineslicesprite.js +12 -12
- package/dist/melonjs.mjs/renderable/renderable.js +35 -13
- package/dist/melonjs.mjs/renderable/sprite.js +25 -25
- package/dist/melonjs.mjs/renderable/trigger.js +11 -9
- package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +97 -27
- package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +25 -25
- package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +83 -65
- package/dist/melonjs.mjs/state/stage.js +7 -7
- package/dist/melonjs.mjs/state/state.js +15 -15
- package/dist/melonjs.mjs/system/device.js +3 -3
- package/dist/melonjs.mjs/system/dom.js +1 -1
- package/dist/melonjs.mjs/system/event.js +2 -2
- package/dist/melonjs.mjs/system/platform.js +1 -1
- package/dist/melonjs.mjs/system/pooling.js +9 -9
- package/dist/melonjs.mjs/system/save.js +6 -6
- package/dist/melonjs.mjs/system/timer.js +16 -12
- package/dist/melonjs.mjs/text/bitmaptext.js +20 -20
- package/dist/melonjs.mjs/text/bitmaptextdata.js +22 -22
- package/dist/melonjs.mjs/text/glyph.js +3 -3
- package/dist/melonjs.mjs/text/text.js +63 -92
- package/dist/melonjs.mjs/text/textmetrics.js +15 -15
- package/dist/melonjs.mjs/text/textstyle.js +4 -6
- package/dist/melonjs.mjs/tweens/easing.js +4 -4
- package/dist/melonjs.mjs/tweens/interpolation.js +8 -8
- package/dist/melonjs.mjs/tweens/tween.js +11 -11
- package/dist/melonjs.mjs/utils/agent.js +6 -6
- package/dist/melonjs.mjs/utils/array.js +4 -4
- package/dist/melonjs.mjs/utils/file.js +1 -1
- package/dist/melonjs.mjs/utils/function.js +5 -5
- package/dist/melonjs.mjs/utils/string.js +3 -3
- package/dist/melonjs.mjs/utils/utils.js +16 -16
- package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +41 -119
- package/dist/melonjs.mjs/video/renderer.js +70 -14
- package/dist/melonjs.mjs/video/texture/atlas.js +39 -45
- package/dist/melonjs.mjs/video/texture/cache.js +9 -10
- package/dist/melonjs.mjs/video/texture/canvas_texture.js +63 -3
- package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
- package/dist/melonjs.mjs/video/video.js +2 -2
- package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +23 -19
- package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +80 -80
- package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +77 -0
- package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +252 -0
- package/dist/melonjs.mjs/video/webgl/compositors/webgl_compositor.js +1 -1
- package/dist/melonjs.mjs/video/webgl/glshader.js +7 -7
- package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
- package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +2 -2
- package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
- package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +2 -2
- package/dist/melonjs.mjs/video/webgl/utils/attributes.js +2 -2
- package/dist/melonjs.mjs/video/webgl/utils/precision.js +1 -1
- package/dist/melonjs.mjs/video/webgl/utils/program.js +7 -7
- package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
- package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +4 -4
- package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +188 -181
- package/dist/melonjs.module.js +25040 -25193
- package/dist/types/application/application.d.ts +11 -8
- package/dist/types/audio/audio.d.ts +3 -3
- package/dist/types/entity/entity.d.ts +1 -1
- package/dist/types/index.d.ts +7 -4
- package/dist/types/input/input.d.ts +1 -1
- package/dist/types/input/keyboard.d.ts +1 -1
- package/dist/types/input/pointerevent.d.ts +6 -6
- package/dist/types/level/level.d.ts +2 -2
- package/dist/types/level/tiled/TMXLayer.d.ts +4 -4
- package/dist/types/level/tiled/TMXTileMap.d.ts +2 -2
- package/dist/types/level/tiled/TMXUtils.d.ts +5 -4
- package/dist/types/loader/loader.d.ts +2 -2
- package/dist/types/loader/settings.d.ts +2 -2
- package/dist/types/particles/emitter.d.ts +1 -1
- package/dist/types/physics/collision.d.ts +1 -1
- package/dist/types/physics/detector.d.ts +1 -1
- package/dist/types/plugin/plugin.d.ts +2 -2
- package/dist/types/renderable/container.d.ts +21 -17
- package/dist/types/renderable/renderable.d.ts +6 -0
- package/dist/types/renderable/sprite.d.ts +11 -11
- package/dist/types/renderable/trigger.d.ts +1 -1
- package/dist/types/renderable/ui/uibaseelement.d.ts +28 -6
- package/dist/types/renderable/ui/uispriteelement.d.ts +12 -14
- package/dist/types/renderable/ui/uitextbutton.d.ts +52 -12
- package/dist/types/state/stage.d.ts +1 -1
- package/dist/types/system/device.d.ts +1 -1
- package/dist/types/system/pooling.d.ts +3 -3
- package/dist/types/system/timer.d.ts +5 -5
- package/dist/types/text/bitmaptext.d.ts +1 -1
- package/dist/types/text/text.d.ts +7 -21
- package/dist/types/text/textstyle.d.ts +1 -1
- package/dist/types/utils/array.d.ts +2 -2
- package/dist/types/video/canvas/canvas_renderer.d.ts +8 -81
- package/dist/types/video/renderer.d.ts +48 -4
- package/dist/types/video/texture/atlas.d.ts +3 -3
- package/dist/types/video/texture/canvas_texture.d.ts +40 -0
- package/dist/types/video/webgl/buffer/vertex.d.ts +3 -3
- package/dist/types/video/webgl/compositors/compositor.d.ts +38 -32
- package/dist/types/video/webgl/compositors/primitive_compositor.d.ts +22 -0
- package/dist/types/video/webgl/compositors/quad_compositor.d.ts +72 -0
- package/dist/types/video/webgl/glshader.d.ts +1 -1
- package/dist/types/video/webgl/webgl_renderer.d.ts +47 -37
- package/package.json +16 -17
- package/src/application/application.js +26 -16
- package/src/application/header.js +5 -4
- package/src/application/resize.js +19 -19
- package/src/audio/audio.js +17 -19
- package/src/camera/camera2d.js +9 -9
- package/src/entity/entity.js +3 -3
- package/src/geometries/ellipse.js +5 -5
- package/src/geometries/line.js +8 -8
- package/src/geometries/path2d.js +55 -55
- package/src/geometries/point.js +1 -1
- package/src/geometries/poly.js +28 -28
- package/src/geometries/rectangle.js +7 -7
- package/src/geometries/roundrect.js +5 -5
- package/src/index.js +9 -4
- package/src/input/gamepad.js +29 -29
- package/src/input/input.js +1 -1
- package/src/input/keyboard.js +14 -14
- package/src/input/pointer.js +1 -1
- package/src/input/pointerevent.js +52 -52
- package/src/lang/console.js +2 -2
- package/src/lang/deprecated.js +1 -1
- package/src/level/level.js +8 -8
- package/src/level/tiled/TMXGroup.js +2 -2
- package/src/level/tiled/TMXLayer.js +30 -30
- package/src/level/tiled/TMXObject.js +7 -7
- package/src/level/tiled/TMXTile.js +7 -7
- package/src/level/tiled/TMXTileMap.js +18 -18
- package/src/level/tiled/TMXTileset.js +14 -14
- package/src/level/tiled/TMXTilesetGroup.js +2 -2
- package/src/level/tiled/TMXUtils.js +45 -40
- package/src/level/tiled/renderer/TMXHexagonalRenderer.js +29 -29
- package/src/level/tiled/renderer/TMXIsometricRenderer.js +20 -20
- package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +9 -9
- package/src/level/tiled/renderer/TMXRenderer.js +1 -1
- package/src/level/tiled/renderer/TMXStaggeredRenderer.js +5 -5
- package/src/loader/loader.js +6 -6
- package/src/loader/loadingscreen.js +1 -1
- package/src/loader/parser.js +12 -12
- package/src/loader/settings.js +2 -2
- package/src/math/color.js +24 -23
- package/src/math/math.js +1 -1
- package/src/math/matrix2.js +21 -21
- package/src/math/matrix3.js +51 -51
- package/src/math/observable_vector2.js +11 -11
- package/src/math/observable_vector3.js +21 -21
- package/src/math/vector2.js +10 -10
- package/src/math/vector3.js +20 -20
- package/src/particles/emitter.js +4 -4
- package/src/particles/particle.js +7 -7
- package/src/particles/settings.js +2 -2
- package/src/physics/body.js +16 -16
- package/src/physics/bounds.js +11 -11
- package/src/physics/collision.js +2 -2
- package/src/physics/detector.js +13 -13
- package/src/physics/quadtree.js +18 -18
- package/src/physics/sat.js +59 -59
- package/src/physics/world.js +3 -3
- package/src/plugin/plugin.js +8 -8
- package/src/polyfill/index.js +0 -2
- package/src/renderable/collectable.js +1 -1
- package/src/renderable/container.js +76 -58
- package/src/renderable/dragndrop.js +4 -4
- package/src/renderable/imagelayer.js +6 -5
- package/src/renderable/light2d.js +5 -5
- package/src/renderable/nineslicesprite.js +11 -11
- package/src/renderable/renderable.js +34 -12
- package/src/renderable/sprite.js +24 -24
- package/src/renderable/trigger.js +10 -8
- package/src/renderable/ui/uibaseelement.js +96 -26
- package/src/renderable/ui/uispriteelement.js +24 -24
- package/src/renderable/ui/uitextbutton.js +85 -67
- package/src/state/stage.js +6 -6
- package/src/state/state.js +14 -14
- package/src/system/device.js +2 -2
- package/src/system/event.js +1 -1
- package/src/system/pooling.js +8 -8
- package/src/system/save.js +5 -5
- package/src/system/timer.js +15 -11
- package/src/text/bitmaptext.js +19 -19
- package/src/text/bitmaptextdata.js +21 -21
- package/src/text/glyph.js +2 -2
- package/src/text/text.js +62 -91
- package/src/text/textmetrics.js +14 -14
- package/src/text/textstyle.js +3 -5
- package/src/tweens/easing.js +3 -3
- package/src/tweens/interpolation.js +7 -7
- package/src/tweens/tween.js +10 -10
- package/src/utils/agent.js +5 -5
- package/src/utils/array.js +3 -3
- package/src/utils/function.js +4 -4
- package/src/utils/string.js +2 -2
- package/src/utils/utils.js +15 -15
- package/src/video/canvas/canvas_renderer.js +39 -117
- package/src/video/renderer.js +68 -12
- package/src/video/texture/atlas.js +38 -44
- package/src/video/texture/cache.js +6 -6
- package/src/video/texture/canvas_texture.js +62 -2
- package/src/video/video.js +1 -1
- package/src/video/webgl/buffer/vertex.js +22 -18
- package/src/video/webgl/compositors/compositor.js +79 -80
- package/src/video/webgl/compositors/primitive_compositor.js +68 -0
- package/src/video/webgl/compositors/{webgl_compositor.js → quad_compositor.js} +52 -109
- package/src/video/webgl/glshader.js +6 -6
- package/src/video/webgl/shaders/primitive.vert +2 -5
- package/src/video/webgl/shaders/quad.vert +3 -1
- package/src/video/webgl/utils/attributes.js +1 -1
- package/src/video/webgl/utils/program.js +6 -6
- package/src/video/webgl/utils/uniforms.js +3 -3
- package/src/video/webgl/webgl_renderer.js +186 -179
- package/dist/melonjs.mjs/_virtual/make-built-in.js +0 -10
- package/dist/melonjs.mjs/_virtual/object-define-property.js +0 -10
- package/dist/melonjs.mjs/_virtual/object-get-own-property-descriptor.js +0 -10
- package/dist/melonjs.mjs/_virtual/object-get-own-property-names.js +0 -10
- package/dist/melonjs.mjs/_virtual/object-get-own-property-symbols.js +0 -10
- package/dist/melonjs.mjs/_virtual/object-property-is-enumerable.js +0 -10
- package/dist/melonjs.mjs/_virtual/shared.js +0 -10
- package/dist/melonjs.mjs/game.js +0 -29
- package/dist/melonjs.mjs/polyfill/console.js +0 -18
- package/dist/melonjs.mjs/polyfill/performance.js +0 -27
- package/dist/melonjs.mjs/polyfill/requestAnimationFrame.js +0 -46
- package/dist/melonjs.mjs/polyfill/roundrect.js +0 -242
- package/dist/melonjs.mjs/renderable/re_container.js +0 -1016
- package/dist/melonjs.mjs/video/utils/resize.js +0 -116
- package/dist/melonjs.mjs/video/webgl/webgl_compositor.js +0 -494
- package/src/polyfill/performance.js +0 -20
- package/src/polyfill/requestAnimationFrame.js +0 -39
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine -
|
|
2
|
+
* melonJS Game Engine - v15.1.0
|
|
3
3
|
* http://www.melonjs.org
|
|
4
4
|
* melonjs is licensed under the MIT License.
|
|
5
5
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -27,7 +27,7 @@ let Interpolation = {
|
|
|
27
27
|
/** @ignore */
|
|
28
28
|
Linear: function ( v, k ) {
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
let m = v.length - 1, f = m * k, i = Math.floor( f ), fn = Interpolation.Utils.Linear;
|
|
31
31
|
|
|
32
32
|
if ( k < 0 ) return fn( v[ 0 ], v[ 1 ], f );
|
|
33
33
|
if ( k > 1 ) return fn( v[ m ], v[ m - 1 ], m - f );
|
|
@@ -38,7 +38,7 @@ let Interpolation = {
|
|
|
38
38
|
/** @ignore */
|
|
39
39
|
Bezier: function ( v, k ) {
|
|
40
40
|
|
|
41
|
-
|
|
41
|
+
let b = 0, n = v.length - 1, pw = Math.pow, bn = Interpolation.Utils.Bernstein, i;
|
|
42
42
|
|
|
43
43
|
for ( i = 0; i <= n; i++ ) {
|
|
44
44
|
b += pw( 1 - k, n - i ) * pw( k, i ) * v[ i ] * bn( n, i );
|
|
@@ -50,7 +50,7 @@ let Interpolation = {
|
|
|
50
50
|
/** @ignore */
|
|
51
51
|
CatmullRom: function ( v, k ) {
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
let m = v.length - 1, f = m * k, i = Math.floor( f ), fn = Interpolation.Utils.CatmullRom;
|
|
54
54
|
|
|
55
55
|
if ( v[ 0 ] === v[ m ] ) {
|
|
56
56
|
|
|
@@ -79,18 +79,18 @@ let Interpolation = {
|
|
|
79
79
|
/** @ignore */
|
|
80
80
|
Bernstein: function ( n, i ) {
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
let fc = Interpolation.Utils.Factorial;
|
|
83
83
|
return fc( n ) / fc( i ) / fc( n - i );
|
|
84
84
|
|
|
85
85
|
},
|
|
86
86
|
/* @ignore */
|
|
87
87
|
Factorial: ( function () {
|
|
88
88
|
|
|
89
|
-
|
|
89
|
+
let a = [ 1 ];
|
|
90
90
|
|
|
91
91
|
return function ( n ) {
|
|
92
92
|
|
|
93
|
-
|
|
93
|
+
let s = 1, i;
|
|
94
94
|
if ( a[ n ] ) return a[ n ];
|
|
95
95
|
for ( i = n; i > 1; i-- ) s *= i;
|
|
96
96
|
a[ n ] = s;
|
|
@@ -102,7 +102,7 @@ let Interpolation = {
|
|
|
102
102
|
/** @ignore */
|
|
103
103
|
CatmullRom: function ( p0, p1, p2, p3, t ) {
|
|
104
104
|
|
|
105
|
-
|
|
105
|
+
let v0 = ( p2 - p0 ) * 0.5, v1 = ( p3 - p1 ) * 0.5, t2 = t * t, t3 = t * t2;
|
|
106
106
|
return ( 2 * p1 - 2 * p2 + v0 + v1 ) * t3 + ( - 3 * p1 + 3 * p2 - 2 * v0 - v1 ) * t2 + v0 * t + p1;
|
|
107
107
|
}
|
|
108
108
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine -
|
|
2
|
+
* melonJS Game Engine - v15.1.0
|
|
3
3
|
* http://www.melonjs.org
|
|
4
4
|
* melonjs is licensed under the MIT License.
|
|
5
5
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -89,7 +89,7 @@ import { Interpolation } from './interpolation.js';
|
|
|
89
89
|
this.isRenderable = false;
|
|
90
90
|
|
|
91
91
|
// Set all starting values present on the target object
|
|
92
|
-
for (
|
|
92
|
+
for ( let field in object ) {
|
|
93
93
|
if (typeof object !== "object") {
|
|
94
94
|
this._valuesStart[ field ] = parseFloat(object[field]);
|
|
95
95
|
}
|
|
@@ -181,7 +181,7 @@ import { Interpolation } from './interpolation.js';
|
|
|
181
181
|
|
|
182
182
|
this._startTime = time + this._delayTime;
|
|
183
183
|
|
|
184
|
-
for (
|
|
184
|
+
for ( let property in this._valuesEnd ) {
|
|
185
185
|
|
|
186
186
|
// check if an Array was provided as property value
|
|
187
187
|
if ( this._valuesEnd[ property ] instanceof Array ) {
|
|
@@ -357,9 +357,9 @@ import { Interpolation } from './interpolation.js';
|
|
|
357
357
|
// the original Tween implementation expect
|
|
358
358
|
// a timestamp and not a time delta
|
|
359
359
|
this._tweenTimeTracker = (game.lastUpdate > this._tweenTimeTracker) ? game.lastUpdate : this._tweenTimeTracker + dt;
|
|
360
|
-
|
|
360
|
+
let time = this._tweenTimeTracker;
|
|
361
361
|
|
|
362
|
-
|
|
362
|
+
let property;
|
|
363
363
|
|
|
364
364
|
if ( time < this._startTime ) {
|
|
365
365
|
|
|
@@ -379,15 +379,15 @@ import { Interpolation } from './interpolation.js';
|
|
|
379
379
|
|
|
380
380
|
}
|
|
381
381
|
|
|
382
|
-
|
|
382
|
+
let elapsed = ( time - this._startTime ) / this._duration;
|
|
383
383
|
elapsed = elapsed > 1 ? 1 : elapsed;
|
|
384
384
|
|
|
385
|
-
|
|
385
|
+
let value = this._easingFunction( elapsed );
|
|
386
386
|
|
|
387
387
|
for ( property in this._valuesEnd ) {
|
|
388
388
|
|
|
389
|
-
|
|
390
|
-
|
|
389
|
+
let start = this._valuesStart[ property ] || 0;
|
|
390
|
+
let end = this._valuesEnd[ property ];
|
|
391
391
|
|
|
392
392
|
if ( end instanceof Array ) {
|
|
393
393
|
|
|
@@ -431,7 +431,7 @@ import { Interpolation } from './interpolation.js';
|
|
|
431
431
|
}
|
|
432
432
|
|
|
433
433
|
if (this._yoyo) {
|
|
434
|
-
|
|
434
|
+
let tmp = this._valuesStartRepeat[ property ];
|
|
435
435
|
this._valuesStartRepeat[ property ] = this._valuesEnd[ property ];
|
|
436
436
|
this._valuesEnd[ property ] = tmp;
|
|
437
437
|
}
|
|
@@ -457,7 +457,7 @@ import { Interpolation } from './interpolation.js';
|
|
|
457
457
|
|
|
458
458
|
}
|
|
459
459
|
|
|
460
|
-
for (
|
|
460
|
+
for ( let i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i ++ ) {
|
|
461
461
|
|
|
462
462
|
this._chainedTweens[ i ].start( time );
|
|
463
463
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine -
|
|
2
|
+
* melonJS Game Engine - v15.1.0
|
|
3
3
|
* http://www.melonjs.org
|
|
4
4
|
* melonjs is licensed under the MIT License.
|
|
5
5
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -33,11 +33,11 @@ function prefixed(name, obj) {
|
|
|
33
33
|
return obj[name];
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
let uc_name = capitalize(name);
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
let result;
|
|
39
39
|
vendors.some((vendor) => {
|
|
40
|
-
|
|
40
|
+
let name = vendor + uc_name;
|
|
41
41
|
return (result = (name in obj) ? obj[name] : undefined);
|
|
42
42
|
});
|
|
43
43
|
return result;
|
|
@@ -60,10 +60,10 @@ function setPrefixed(name, value, obj) {
|
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
let uc_name = capitalize(name);
|
|
64
64
|
|
|
65
65
|
vendors.some((vendor) => {
|
|
66
|
-
|
|
66
|
+
let name = vendor + uc_name;
|
|
67
67
|
if (name in obj) {
|
|
68
68
|
obj[name] = value;
|
|
69
69
|
return true;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine -
|
|
2
|
+
* melonJS Game Engine - v15.1.0
|
|
3
3
|
* http://www.melonjs.org
|
|
4
4
|
* melonjs is licensed under the MIT License.
|
|
5
5
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -20,12 +20,12 @@ import { random as random$1, weightedRandom as weightedRandom$1 } from '../math/
|
|
|
20
20
|
* @param {Array} arr - array from which to remove an object
|
|
21
21
|
* @param {object} obj - to be removed
|
|
22
22
|
* @returns {Array} the modified Array
|
|
23
|
-
*
|
|
23
|
+
* let arr = [ "foo", "bar", "baz" ];
|
|
24
24
|
* // remove "foo" from the array
|
|
25
25
|
* me.utils.array.remove(arr, "foo");
|
|
26
26
|
*/
|
|
27
27
|
function remove(arr, obj) {
|
|
28
|
-
|
|
28
|
+
let i = Array.prototype.indexOf.call(arr, obj);
|
|
29
29
|
if (i !== -1) {
|
|
30
30
|
Array.prototype.splice.call(arr, i, 1);
|
|
31
31
|
}
|
|
@@ -41,7 +41,7 @@ function remove(arr, obj) {
|
|
|
41
41
|
* @returns {any} random member of array
|
|
42
42
|
* @example
|
|
43
43
|
* // Select a random array element
|
|
44
|
-
*
|
|
44
|
+
* let arr = [ "foo", "bar", "baz" ];
|
|
45
45
|
* console.log(me.utils.array.random(arr));
|
|
46
46
|
*/
|
|
47
47
|
function random(arr) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine -
|
|
2
|
+
* melonJS Game Engine - v15.1.0
|
|
3
3
|
* http://www.melonjs.org
|
|
4
4
|
* melonjs is licensed under the MIT License.
|
|
5
5
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -41,15 +41,15 @@ function defer(func, thisArg, ...args) {
|
|
|
41
41
|
* @returns {Function} the function that will be throttled
|
|
42
42
|
*/
|
|
43
43
|
function throttle(fn, delay, no_trailing) {
|
|
44
|
-
|
|
44
|
+
let last = globalThis.performance.now(), deferTimer;
|
|
45
45
|
// `no_trailing` defaults to false.
|
|
46
46
|
if (typeof no_trailing !== "boolean") {
|
|
47
47
|
no_trailing = false;
|
|
48
48
|
}
|
|
49
49
|
return function () {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
let now = globalThis.performance.now();
|
|
51
|
+
let elasped = now - last;
|
|
52
|
+
let args = arguments;
|
|
53
53
|
if (elasped < delay) {
|
|
54
54
|
if (no_trailing === false) {
|
|
55
55
|
// hold on to it
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine -
|
|
2
|
+
* melonJS Game Engine - v15.1.0
|
|
3
3
|
* http://www.melonjs.org
|
|
4
4
|
* melonjs is licensed under the MIT License.
|
|
5
5
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -46,7 +46,7 @@ function isNumeric(str) {
|
|
|
46
46
|
* @returns {boolean} true if the string is either true or false
|
|
47
47
|
*/
|
|
48
48
|
function isBoolean(str) {
|
|
49
|
-
|
|
49
|
+
const trimmed = str.trim();
|
|
50
50
|
return (trimmed === "true") || (trimmed === "false");
|
|
51
51
|
}
|
|
52
52
|
|
|
@@ -59,7 +59,7 @@ function isBoolean(str) {
|
|
|
59
59
|
* @returns {string} the converted hexadecimal value
|
|
60
60
|
*/
|
|
61
61
|
function toHex(str) {
|
|
62
|
-
|
|
62
|
+
let res = "", c = 0;
|
|
63
63
|
while (c < str.length) {
|
|
64
64
|
res += str.charCodeAt(c++).toString(16);
|
|
65
65
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine -
|
|
2
|
+
* melonJS Game Engine - v15.1.0
|
|
3
3
|
* http://www.melonjs.org
|
|
4
4
|
* melonjs is licensed under the MIT License.
|
|
5
5
|
* http://www.opensource.org/licenses/mit-license
|
|
@@ -18,10 +18,10 @@ import * as _function from './function.js';
|
|
|
18
18
|
*/
|
|
19
19
|
|
|
20
20
|
// guid default value
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
let GUID_base = "";
|
|
22
|
+
let GUID_index = 0;
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
let utils = {
|
|
25
25
|
|
|
26
26
|
agent : agent,
|
|
27
27
|
array : array,
|
|
@@ -47,12 +47,12 @@ var utils = {
|
|
|
47
47
|
* }
|
|
48
48
|
*/
|
|
49
49
|
checkVersion : function (first, second) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
50
|
+
let a = first.split(".");
|
|
51
|
+
let b = second.split(".");
|
|
52
|
+
let len = Math.min(a.length, b.length);
|
|
53
|
+
let result = 0;
|
|
54
54
|
|
|
55
|
-
for (
|
|
55
|
+
for (let i = 0; i < len; i++) {
|
|
56
56
|
if ((result = +a[i] - +b[i])) {
|
|
57
57
|
break;
|
|
58
58
|
}
|
|
@@ -76,15 +76,15 @@ var utils = {
|
|
|
76
76
|
* @property {string} [debugToggleKey="s"] show/hide the debug panel (if preloaded)
|
|
77
77
|
* @example
|
|
78
78
|
* // http://www.example.com/index.html#debug&hitbox=true&mytag=value
|
|
79
|
-
*
|
|
79
|
+
* let UriFragment = me.utils.getUriFragment();
|
|
80
80
|
* console.log(UriFragment["mytag"]); //> "value"
|
|
81
81
|
*/
|
|
82
82
|
getUriFragment : function (url) {
|
|
83
|
-
|
|
83
|
+
let hash = {};
|
|
84
84
|
|
|
85
85
|
if (typeof url === "undefined") {
|
|
86
86
|
if (typeof globalThis.document !== "undefined") {
|
|
87
|
-
|
|
87
|
+
let location = globalThis.document.location;
|
|
88
88
|
|
|
89
89
|
if (location && location.hash) {
|
|
90
90
|
url = location.hash;
|
|
@@ -98,7 +98,7 @@ var utils = {
|
|
|
98
98
|
}
|
|
99
99
|
} else {
|
|
100
100
|
// never cache if a url is passed as parameter
|
|
101
|
-
|
|
101
|
+
let index = url.indexOf("#");
|
|
102
102
|
if (index !== -1) {
|
|
103
103
|
url = url.slice(index, url.length);
|
|
104
104
|
} else {
|
|
@@ -108,9 +108,9 @@ var utils = {
|
|
|
108
108
|
|
|
109
109
|
// parse the url
|
|
110
110
|
url.slice(1).split("&").filter((value) => value !== "").forEach((value) => {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
let kv = value.split("=");
|
|
112
|
+
let k = kv.shift();
|
|
113
|
+
let v = kv.join("=");
|
|
114
114
|
hash[k] = v || true;
|
|
115
115
|
});
|
|
116
116
|
|