melonjs 16.0.0 → 16.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/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 +1 -1
- package/dist/melonjs.mjs/application/header.js +1 -1
- package/dist/melonjs.mjs/application/resize.js +1 -1
- package/dist/melonjs.mjs/application/settings.js +1 -1
- package/dist/melonjs.mjs/audio/audio.js +4 -2
- package/dist/melonjs.mjs/camera/camera2d.js +1 -1
- package/dist/melonjs.mjs/const.js +1 -1
- package/dist/melonjs.mjs/geometries/ellipse.js +1 -1
- package/dist/melonjs.mjs/geometries/line.js +1 -1
- package/dist/melonjs.mjs/geometries/path2d.js +1 -1
- package/dist/melonjs.mjs/geometries/point.js +1 -1
- package/dist/melonjs.mjs/geometries/poly.js +1 -1
- package/dist/melonjs.mjs/geometries/rectangle.js +1 -1
- package/dist/melonjs.mjs/geometries/roundrect.js +1 -1
- package/dist/melonjs.mjs/geometries/toarccanvas.js +1 -1
- package/dist/melonjs.mjs/index.js +2 -2
- 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 +1 -1
- package/dist/melonjs.mjs/input/pointer.js +1 -1
- package/dist/melonjs.mjs/input/pointerevent.js +1 -1
- package/dist/melonjs.mjs/lang/console.js +1 -1
- package/dist/melonjs.mjs/lang/deprecated.js +1 -1
- 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 +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXObject.js +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXTile.js +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXTileset.js +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +1 -1
- package/dist/melonjs.mjs/level/tiled/TMXUtils.js +1 -1
- package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
- package/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +1 -1
- package/dist/melonjs.mjs/loader/cache.js +5 -2
- package/dist/melonjs.mjs/loader/loader.js +58 -9
- 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/parsers/binary.js +1 -1
- package/dist/melonjs.mjs/loader/parsers/fetchdata.js +1 -1
- package/dist/melonjs.mjs/loader/parsers/fontface.js +1 -1
- package/dist/melonjs.mjs/loader/parsers/image.js +1 -1
- package/dist/melonjs.mjs/loader/parsers/json.js +1 -1
- package/dist/melonjs.mjs/loader/parsers/script.js +1 -1
- package/dist/melonjs.mjs/loader/parsers/tmx.js +1 -1
- package/dist/melonjs.mjs/loader/parsers/video.js +98 -0
- package/dist/melonjs.mjs/loader/settings.js +5 -4
- package/dist/melonjs.mjs/math/color.js +1 -1
- package/dist/melonjs.mjs/math/math.js +1 -1
- package/dist/melonjs.mjs/math/matrix2.js +1 -1
- package/dist/melonjs.mjs/math/matrix3.js +1 -1
- package/dist/melonjs.mjs/math/observable_vector2.js +1 -1
- package/dist/melonjs.mjs/math/observable_vector3.js +1 -1
- package/dist/melonjs.mjs/math/vector2.js +1 -1
- package/dist/melonjs.mjs/math/vector3.js +1 -1
- 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 +1 -1
- package/dist/melonjs.mjs/particles/particle.js +1 -1
- package/dist/melonjs.mjs/particles/settings.js +1 -1
- package/dist/melonjs.mjs/physics/body.js +1 -1
- package/dist/melonjs.mjs/physics/bounds.js +1 -1
- package/dist/melonjs.mjs/physics/collision.js +1 -1
- package/dist/melonjs.mjs/physics/detector.js +1 -1
- package/dist/melonjs.mjs/physics/quadtree.js +1 -1
- package/dist/melonjs.mjs/physics/response.js +1 -1
- package/dist/melonjs.mjs/physics/sat.js +1 -1
- package/dist/melonjs.mjs/physics/world.js +1 -1
- package/dist/melonjs.mjs/plugin/plugin.js +3 -3
- package/dist/melonjs.mjs/renderable/collectable.js +1 -1
- package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
- package/dist/melonjs.mjs/renderable/container.js +1 -1
- package/dist/melonjs.mjs/renderable/draggable.js +1 -1
- package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
- package/dist/melonjs.mjs/renderable/entity/entity.js +1 -1
- package/dist/melonjs.mjs/renderable/imagelayer.js +1 -1
- package/dist/melonjs.mjs/renderable/light2d.js +1 -1
- package/dist/melonjs.mjs/renderable/nineslicesprite.js +1 -5
- package/dist/melonjs.mjs/renderable/renderable.js +1 -1
- package/dist/melonjs.mjs/renderable/sprite.js +135 -80
- package/dist/melonjs.mjs/renderable/text/bitmaptext.js +1 -1
- package/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +1 -1
- package/dist/melonjs.mjs/renderable/text/glyph.js +1 -1
- package/dist/melonjs.mjs/renderable/text/text.js +1 -1
- package/dist/melonjs.mjs/renderable/text/textmetrics.js +1 -1
- package/dist/melonjs.mjs/renderable/text/textstyle.js +1 -1
- package/dist/melonjs.mjs/renderable/trigger.js +1 -1
- package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +1 -1
- package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +1 -1
- package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +1 -1
- package/dist/melonjs.mjs/state/stage.js +1 -1
- package/dist/melonjs.mjs/state/state.js +1 -1
- package/dist/melonjs.mjs/system/device.js +45 -2
- package/dist/melonjs.mjs/system/dom.js +1 -1
- package/dist/melonjs.mjs/system/event.js +1 -1
- package/dist/melonjs.mjs/system/platform.js +1 -1
- package/dist/melonjs.mjs/system/pooling.js +1 -1
- package/dist/melonjs.mjs/system/save.js +1 -1
- package/dist/melonjs.mjs/system/timer.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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/melonjs.mjs/video/renderer.js +1 -1
- package/dist/melonjs.mjs/video/texture/atlas.js +1 -1
- package/dist/melonjs.mjs/video/texture/cache.js +4 -4
- package/dist/melonjs.mjs/video/texture/canvas_texture.js +1 -1
- package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
- package/dist/melonjs.mjs/video/video.js +1 -1
- package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +1 -1
- package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +1 -1
- package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +1 -1
- package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +4 -3
- package/dist/melonjs.mjs/video/webgl/glshader.js +1 -1
- 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 +1 -1
- 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 +4 -3
- package/dist/melonjs.module.js +339 -104
- package/dist/types/loader/cache.d.ts +1 -0
- package/dist/types/loader/loader.d.ts +37 -8
- package/dist/types/loader/parsers/video.d.ts +9 -0
- package/dist/types/loader/settings.d.ts +3 -3
- package/dist/types/renderable/nineslicesprite.d.ts +12 -0
- package/dist/types/renderable/sprite.d.ts +41 -40
- package/dist/types/system/device.d.ts +16 -0
- package/dist/types/video/webgl/compositors/quad_compositor.d.ts +2 -1
- package/package.json +3 -3
- package/src/audio/audio.js +3 -1
- package/src/loader/cache.js +3 -0
- package/src/loader/loader.js +57 -7
- package/src/loader/parsers/video.js +89 -0
- package/src/loader/settings.js +4 -3
- package/src/renderable/nineslicesprite.js +0 -4
- package/src/renderable/sprite.js +134 -79
- package/src/system/device.js +43 -0
- package/src/video/texture/cache.js +3 -3
- package/src/video/webgl/compositors/quad_compositor.js +3 -2
- package/src/video/webgl/webgl_renderer.js +3 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine - v16.
|
|
2
|
+
* melonJS Game Engine - v16.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
|
|
@@ -158,7 +158,9 @@ function load(sound, onloadcb, onerrorcb) {
|
|
|
158
158
|
audioTracks[sound.name] = new howler.Howl({
|
|
159
159
|
src : urls,
|
|
160
160
|
volume : howler.Howler.volume(),
|
|
161
|
-
|
|
161
|
+
autoplay : sound.autoplay === true,
|
|
162
|
+
loop : sound.loop = true,
|
|
163
|
+
html5 : sound.stream === true || sound.html5 === true,
|
|
162
164
|
xhrWithCredentials : withCredentials,
|
|
163
165
|
onloaderror() {
|
|
164
166
|
soundLoadError.call(this, sound.name, onerrorcb);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine - v16.
|
|
2
|
+
* melonJS Game Engine - v16.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
|
|
@@ -112,7 +112,7 @@ import { initKeyboardEvent } from './input/keyboard.js';
|
|
|
112
112
|
* @name version
|
|
113
113
|
* @type {string}
|
|
114
114
|
*/
|
|
115
|
-
const version = "16.
|
|
115
|
+
const version = "16.1.0";
|
|
116
116
|
|
|
117
117
|
/**
|
|
118
118
|
* a flag indicating that melonJS is fully initialized
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine - v16.
|
|
2
|
+
* melonJS Game Engine - v16.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
|
|
@@ -21,4 +21,7 @@ let binList = {};
|
|
|
21
21
|
// contains all the JSON files
|
|
22
22
|
let jsonList = {};
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
// contains all the video files
|
|
25
|
+
let videoList = {};
|
|
26
|
+
|
|
27
|
+
export { binList, imgList, jsonList, tmxList, videoList };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* melonJS Game Engine - v16.
|
|
2
|
+
* melonJS Game Engine - v16.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
|
|
@@ -9,13 +9,14 @@ import { getBasename } from '../utils/file.js';
|
|
|
9
9
|
import { emit, LOADER_COMPLETE, LOADER_PROGRESS, LOADER_ERROR } from '../system/event.js';
|
|
10
10
|
import { unload as unload$1, unloadAll as unloadAll$1, load as load$1 } from '../audio/audio.js';
|
|
11
11
|
import state from '../state/state.js';
|
|
12
|
-
import { tmxList, jsonList, imgList, binList } from './cache.js';
|
|
12
|
+
import { videoList, tmxList, jsonList, imgList, binList } from './cache.js';
|
|
13
13
|
import { preloadImage } from './parsers/image.js';
|
|
14
14
|
import { preloadFontFace } from './parsers/fontface.js';
|
|
15
15
|
import { preloadTMX } from './parsers/tmx.js';
|
|
16
16
|
import { preloadJSON } from './parsers/json.js';
|
|
17
17
|
import { preloadBinary } from './parsers/binary.js';
|
|
18
18
|
import { preloadJavascript } from './parsers/script.js';
|
|
19
|
+
import { preloadVideo } from './parsers/video.js';
|
|
19
20
|
import { baseURL } from './settings.js';
|
|
20
21
|
export { crossOrigin, nocache, setBaseURL, setNocache, withCredentials } from './settings.js';
|
|
21
22
|
import { warning } from '../lang/console.js';
|
|
@@ -89,6 +90,7 @@ function initParsers() {
|
|
|
89
90
|
setParser("tsx", preloadTMX);
|
|
90
91
|
setParser("audio", load$1);
|
|
91
92
|
setParser("fontface", preloadFontFace);
|
|
93
|
+
setParser("video", preloadVideo);
|
|
92
94
|
parserInitialized = true;
|
|
93
95
|
}
|
|
94
96
|
|
|
@@ -153,10 +155,12 @@ function onLoadingError(res) {
|
|
|
153
155
|
* an asset definition to be used with the loader
|
|
154
156
|
* @typedef {object} loader.Asset
|
|
155
157
|
* @property {string} name - name of the asset
|
|
156
|
-
* @property {string} type - the type of the asset ("audio"|"binary"|"image"|"json"|"js"|"tmx"|"tmj"|"tsx"|"tsj"|"fontface")
|
|
158
|
+
* @property {string} type - the type of the asset ("audio"|"binary"|"image"|"json"|"js"|"tmx"|"tmj"|"tsx"|"tsj"|"fontface"|"video")
|
|
157
159
|
* @property {string} [src] - path and/or file name of the resource (for audio assets only the path is required)
|
|
158
160
|
* @property {string} [data] - TMX data if not provided through a src url
|
|
159
|
-
* @property {boolean} [stream=false] - Set to true to
|
|
161
|
+
* @property {boolean} [stream=false] - Set to true to not to wait for large audio or video file to be downloaded before playing.
|
|
162
|
+
* @property {boolean} [autoplay=false] - Set to true to automatically start playing audio or video when loaded or added to a scene (using autoplay might require user iteraction to enable it)
|
|
163
|
+
* @property {boolean} [loop=false] - Set to true to automatically loop the audio or video when playing
|
|
160
164
|
* @see loader.preload
|
|
161
165
|
* @see loader.load
|
|
162
166
|
* @example
|
|
@@ -186,6 +190,8 @@ function onLoadingError(res) {
|
|
|
186
190
|
* {name: "plugin", type: "js", src: "data/js/plugin.js"}
|
|
187
191
|
* // Font Face
|
|
188
192
|
* { name: "'kenpixel'", type: "fontface", src: "url('data/font/kenvector_future.woff2')" }
|
|
193
|
+
* // video resources
|
|
194
|
+
* {name: "intro", type: "video", src: "data/video/"}
|
|
189
195
|
*/
|
|
190
196
|
|
|
191
197
|
/**
|
|
@@ -254,7 +260,11 @@ function setParser(type, parserFn) {
|
|
|
254
260
|
* // JavaScript file
|
|
255
261
|
* {name: "plugin", type: "js", src: "data/js/plugin.js"},
|
|
256
262
|
* // Font Face
|
|
257
|
-
* {
|
|
263
|
+
* {name: "'kenpixel'", type: "fontface", src: "url('data/font/kenvector_future.woff2')"},
|
|
264
|
+
* // video resources
|
|
265
|
+
* {name: "intro", type: "video", src: "data/video/"},
|
|
266
|
+
* // base64 encoded video asset
|
|
267
|
+
* me.loader.load({name: "avatar", type:"video", src: "data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZ..."};
|
|
258
268
|
* ];
|
|
259
269
|
* ...
|
|
260
270
|
* // set all resources to be loaded
|
|
@@ -324,6 +334,12 @@ function reload(src) {
|
|
|
324
334
|
* me.loader.load({name: "avatar", type:"image", src: "data/avatar.png"}, () => this.onload(), () => this.onerror());
|
|
325
335
|
* // load a base64 image asset
|
|
326
336
|
* me.loader.load({name: "avatar", type:"image", src: "data:image/png;base64,iVBORw0KAAAQAAAAEACA..."};
|
|
337
|
+
* // load a base64 video asset
|
|
338
|
+
* me.loader.load({
|
|
339
|
+
* name: "avatar",
|
|
340
|
+
* type:"video",
|
|
341
|
+
* src: "data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZ.."
|
|
342
|
+
* };
|
|
327
343
|
* // start loading music
|
|
328
344
|
* me.loader.load({
|
|
329
345
|
* name : "bgmusic",
|
|
@@ -407,6 +423,14 @@ function unload(asset) {
|
|
|
407
423
|
case "audio":
|
|
408
424
|
return unload$1(asset.name);
|
|
409
425
|
|
|
426
|
+
case "video":
|
|
427
|
+
if (!(asset.name in videoList)) {
|
|
428
|
+
return false;
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
delete videoList[asset.name];
|
|
432
|
+
return true;
|
|
433
|
+
|
|
410
434
|
default:
|
|
411
435
|
throw new Error("unload : unknown or invalid resource type : " + asset.type);
|
|
412
436
|
}
|
|
@@ -450,7 +474,7 @@ function unloadAll() {
|
|
|
450
474
|
}
|
|
451
475
|
}
|
|
452
476
|
|
|
453
|
-
// unload all
|
|
477
|
+
// unload all json resources
|
|
454
478
|
for (name in jsonList) {
|
|
455
479
|
if (jsonList.hasOwnProperty(name)) {
|
|
456
480
|
unload({
|
|
@@ -460,6 +484,16 @@ function unloadAll() {
|
|
|
460
484
|
}
|
|
461
485
|
}
|
|
462
486
|
|
|
487
|
+
// unload all video resources
|
|
488
|
+
for (name in videoList) {
|
|
489
|
+
if (videoList.hasOwnProperty(name)) {
|
|
490
|
+
unload({
|
|
491
|
+
"name" : name,
|
|
492
|
+
"type" : "json"
|
|
493
|
+
});
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
|
|
463
497
|
// unload all audio resources
|
|
464
498
|
unloadAll$1();
|
|
465
499
|
}
|
|
@@ -513,8 +547,8 @@ function getImage(image) {
|
|
|
513
547
|
/**
|
|
514
548
|
* return the specified JSON Object
|
|
515
549
|
* @memberof loader
|
|
516
|
-
* @param {string} elt - name of the json file
|
|
517
|
-
* @returns {
|
|
550
|
+
* @param {string} elt - name of the json file
|
|
551
|
+
* @returns {JSON}
|
|
518
552
|
*/
|
|
519
553
|
function getJSON(elt) {
|
|
520
554
|
// force as string
|
|
@@ -525,4 +559,19 @@ function getJSON(elt) {
|
|
|
525
559
|
return null;
|
|
526
560
|
}
|
|
527
561
|
|
|
528
|
-
|
|
562
|
+
/**
|
|
563
|
+
* return the specified Video Object
|
|
564
|
+
* @memberof loader
|
|
565
|
+
* @param {string} elt - name of the video file
|
|
566
|
+
* @returns {HTMLVideoElement}
|
|
567
|
+
*/
|
|
568
|
+
function getVideo(elt) {
|
|
569
|
+
// force as string
|
|
570
|
+
elt = "" + elt;
|
|
571
|
+
if (elt in videoList) {
|
|
572
|
+
return videoList[elt];
|
|
573
|
+
}
|
|
574
|
+
return null;
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
export { baseURL, getBinary, getImage, getJSON, getTMX, getVideo, load, onError, onProgress, onload, preload, reload, setParser, unload, unloadAll };
|