melonjs 9.1.0 → 10.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/{LICENSE → LICENSE.md} +0 -0
  2. package/README.md +93 -57
  3. package/dist/melonjs.js +10334 -11179
  4. package/dist/melonjs.min.js +4 -10
  5. package/dist/melonjs.module.d.ts +13206 -0
  6. package/dist/melonjs.module.js +9913 -10872
  7. package/package.json +19 -14
  8. package/src/audio/audio.js +477 -553
  9. package/src/camera/camera2d.js +67 -65
  10. package/src/entity/draggable.js +26 -35
  11. package/src/entity/droptarget.js +17 -14
  12. package/src/entity/entity.js +59 -79
  13. package/src/game.js +194 -204
  14. package/src/index.js +12 -30
  15. package/src/input/gamepad.js +8 -19
  16. package/src/input/keyboard.js +4 -4
  17. package/src/input/pointer.js +14 -12
  18. package/src/input/pointerevent.js +15 -13
  19. package/src/lang/deprecated.js +2 -887
  20. package/src/level/level.js +3 -3
  21. package/src/level/tiled/TMXGroup.js +7 -11
  22. package/src/level/tiled/TMXLayer.js +33 -32
  23. package/src/level/tiled/TMXTileMap.js +15 -19
  24. package/src/level/tiled/TMXTileset.js +5 -5
  25. package/src/level/tiled/TMXUtils.js +3 -3
  26. package/src/level/tiled/renderer/TMXRenderer.js +4 -0
  27. package/src/loader/loader.js +8 -23
  28. package/src/loader/loadingscreen.js +51 -60
  29. package/src/math/matrix3.js +1 -1
  30. package/src/particles/emitter.js +36 -39
  31. package/src/particles/particle.js +27 -12
  32. package/src/particles/particlecontainer.js +17 -16
  33. package/src/physics/body.js +80 -118
  34. package/src/physics/collision.js +5 -235
  35. package/src/physics/detector.js +235 -0
  36. package/src/physics/quadtree.js +14 -14
  37. package/src/physics/world.js +84 -18
  38. package/src/plugin/plugin.js +26 -24
  39. package/src/polyfill/console.js +9 -14
  40. package/src/renderable/GUI.js +48 -62
  41. package/src/renderable/collectable.js +11 -4
  42. package/src/renderable/colorlayer.js +28 -26
  43. package/src/renderable/container.js +120 -96
  44. package/src/renderable/imagelayer.js +94 -93
  45. package/src/renderable/renderable.js +164 -138
  46. package/src/renderable/sprite.js +42 -44
  47. package/src/renderable/trigger.js +24 -17
  48. package/src/shapes/ellipse.js +27 -27
  49. package/src/shapes/line.js +12 -8
  50. package/src/shapes/poly.js +77 -49
  51. package/src/shapes/rectangle.js +193 -268
  52. package/src/state/stage.js +23 -25
  53. package/src/state/state.js +35 -86
  54. package/src/system/device.js +233 -285
  55. package/src/system/event.js +485 -432
  56. package/src/system/pooling.js +61 -54
  57. package/src/system/save.js +17 -16
  58. package/src/system/timer.js +34 -38
  59. package/src/text/bitmaptext.js +44 -46
  60. package/src/text/text.js +39 -34
  61. package/src/tweens/easing.js +0 -2
  62. package/src/tweens/interpolation.js +3 -8
  63. package/src/tweens/tween.js +332 -351
  64. package/src/utils/function.js +6 -8
  65. package/src/utils/utils.js +34 -30
  66. package/src/video/canvas/canvas_renderer.js +13 -8
  67. package/src/video/renderer.js +8 -7
  68. package/src/video/texture.js +8 -8
  69. package/src/video/texture_cache.js +5 -5
  70. package/src/video/video.js +373 -403
  71. package/src/video/webgl/glshader.js +2 -2
  72. package/src/video/webgl/webgl_compositor.js +14 -8
  73. package/src/video/webgl/webgl_renderer.js +21 -19
  74. package/plugins/debug/debugPanel.js +0 -770
  75. package/plugins/debug/font/PressStart2P.fnt +0 -100
  76. package/plugins/debug/font/PressStart2P.ltr +0 -1
  77. package/plugins/debug/font/PressStart2P.png +0 -0
  78. package/plugins/debug/particleDebugPanel.js +0 -303
@@ -1,8 +1,8 @@
1
1
  import utils from "./../utils/utils.js";
2
- import event from "./../system/event.js";
2
+ import * as event from "./../system/event.js";
3
3
  import state from "./../state/state.js";
4
4
  import loader from "./../loader/loader.js";
5
- import game from "./../game.js";
5
+ import * as game from "./../game.js";
6
6
  import TMXTileMap from "./tiled/TMXTileMap.js";
7
7
 
8
8
 
@@ -32,7 +32,7 @@ function safeLoadLevel(levelId, options, restart) {
32
32
  loadTMXLevel(levelId, options.container, options.flatten, options.setViewportBounds);
33
33
 
34
34
  // publish the corresponding message
35
- event.publish(event.LEVEL_LOADED, [ levelId ]);
35
+ event.emit(event.LEVEL_LOADED, levelId);
36
36
 
37
37
  // fire the callback
38
38
  options.onLoaded(levelId);
@@ -77,26 +77,22 @@ export default class TMXGroup {
77
77
  applyTMXProperties(this, data);
78
78
 
79
79
  // parse all child objects/layers
80
- var self = this;
81
-
82
80
  if (data.objects) {
83
- var _objects = data.objects;
84
- _objects.forEach(function (object) {
85
- object.tintcolor = self.tintcolor;
86
- self.objects.push(new TMXObject(map, object, z));
81
+ data.objects.forEach((object) => {
82
+ object.tintcolor = this.tintcolor;
83
+ this.objects.push(new TMXObject(map, object, z));
87
84
  });
88
85
  }
89
86
 
90
87
  if (data.layers) {
91
- var _layers = data.layers;
92
- _layers.forEach(function (data) {
88
+ data.layers.forEach((data) => {
93
89
  var layer = new TMXLayer(map, data, map.tilewidth, map.tileheight, map.orientation, map.tilesets, z++);
94
90
  // set a renderer
95
91
  layer.setRenderer(map.getRenderer());
96
92
  // resize container accordingly
97
- self.width = Math.max(self.width, layer.width);
98
- self.height = Math.max(self.height, layer.height);
99
- self.objects.push(layer);
93
+ this.width = Math.max(this.width, layer.width);
94
+ this.height = Math.max(this.height, layer.height);
95
+ this.objects.push(layer);
100
96
  });
101
97
  }
102
98
  }
@@ -1,10 +1,10 @@
1
- import video from "./../../video/video.js";
1
+ import { createCanvas } from "./../../video/video.js";
2
2
  import pool from "./../../system/pooling.js";
3
3
  import * as TMXUtils from "./TMXUtils.js";
4
4
  import Tile from "./TMXTile.js";
5
5
  import Renderable from "./../../renderable/renderable.js";
6
6
  import CanvasRenderer from "./../../video/canvas/canvas_renderer";
7
- import game from "./../../game.js";
7
+ import { world } from "./../../game.js";
8
8
 
9
9
  /**
10
10
  * Create required arrays for the given layer object
@@ -77,13 +77,13 @@ function preRenderLayer(layer, renderer) {
77
77
  * @param {me.TMXTilesetGroup} tilesets tileset as defined in Tiled
78
78
  * @param {Number} z z-index position
79
79
  */
80
- var TMXLayer = Renderable.extend({
80
+ class TMXLayer extends Renderable {
81
81
  /**
82
82
  * @ignore
83
83
  */
84
- init: function (map, data, tilewidth, tileheight, orientation, tilesets, z) {
84
+ constructor(map, data, tilewidth, tileheight, orientation, tilesets, z) {
85
85
  // super constructor
86
- this._super(Renderable, "init", [0, 0, 0, 0]);
86
+ super(0, 0, 0, 0);
87
87
 
88
88
  // tile width & height
89
89
  this.tilewidth = data.tilewidth || tilewidth;
@@ -176,7 +176,7 @@ var TMXLayer = Renderable.extend({
176
176
 
177
177
  // check for the correct rendering method
178
178
  if (typeof (this.preRender) === "undefined") {
179
- this.preRender = game.world.preRender;
179
+ this.preRender = world.preRender;
180
180
  }
181
181
 
182
182
  // set a renderer
@@ -191,11 +191,11 @@ var TMXLayer = Renderable.extend({
191
191
  data.compression
192
192
  )
193
193
  );
194
- },
194
+ }
195
195
 
196
196
 
197
197
  // called when the layer is added to the game world or a container
198
- onActivateEvent : function () {
198
+ onActivateEvent() {
199
199
 
200
200
  if (this.animatedTilesets === undefined) {
201
201
  this.animatedTilesets = [];
@@ -224,21 +224,21 @@ var TMXLayer = Renderable.extend({
224
224
  // if pre-rendering method is use, create an offline canvas/renderer
225
225
  if ((this.preRender === true) && (!this.canvasRenderer)) {
226
226
  this.canvasRenderer = new CanvasRenderer({
227
- canvas : video.createCanvas(this.width, this.height),
227
+ canvas : createCanvas(this.width, this.height),
228
228
  widht : this.width,
229
229
  heigth : this.height,
230
230
  transparent : true
231
231
  });
232
232
  preRenderLayer(this, this.canvasRenderer);
233
233
  }
234
- },
234
+ }
235
235
 
236
236
  // called when the layer is removed from the game world or a container
237
- onDeactivateEvent : function () {
237
+ onDeactivateEvent() {
238
238
  // clear all allocated objects
239
239
  //this.layerData = undefined;
240
240
  this.animatedTilesets = undefined;
241
- },
241
+ }
242
242
 
243
243
  /**
244
244
  * Set the TMX renderer for this layer object
@@ -252,9 +252,9 @@ var TMXLayer = Renderable.extend({
252
252
  * var layer = new me.TMXLayer(...);
253
253
  * layer.setRenderer(map.getRenderer());
254
254
  */
255
- setRenderer : function (renderer) {
255
+ setRenderer(renderer) {
256
256
  this.renderer = renderer;
257
- },
257
+ }
258
258
 
259
259
  /**
260
260
  * Return the layer current renderer object
@@ -264,9 +264,9 @@ var TMXLayer = Renderable.extend({
264
264
  * @function
265
265
  * @return {me.TMXRenderer} renderer
266
266
  */
267
- getRenderer : function () {
267
+ getRenderer() {
268
268
  return this.renderer;
269
- },
269
+ }
270
270
 
271
271
 
272
272
  /**
@@ -279,10 +279,10 @@ var TMXLayer = Renderable.extend({
279
279
  * @param {Number} y Y coordinate (in world/pixels coordinates)
280
280
  * @return {Number} TileId or null if there is no Tile at the given position
281
281
  */
282
- getTileId : function (x, y) {
282
+ getTileId(x, y) {
283
283
  var tile = this.getTile(x, y);
284
284
  return (tile ? tile.tileId : null);
285
- },
285
+ }
286
286
 
287
287
  /**
288
288
  * Return the Tile object at the specified position
@@ -299,7 +299,7 @@ var TMXLayer = Renderable.extend({
299
299
  * // get the tile object corresponding to the latest pointer position
300
300
  * var tile = layer.getTile(me.input.pointer.pos.x, me.input.pointer.pos.y);
301
301
  */
302
- getTile : function (x, y) {
302
+ getTile(x, y) {
303
303
  var tile = null;
304
304
 
305
305
  if (this.contains(x, y)) {
@@ -308,7 +308,7 @@ var TMXLayer = Renderable.extend({
308
308
  pool.push(coord);
309
309
  }
310
310
  return tile;
311
- },
311
+ }
312
312
 
313
313
  /**
314
314
  * assign the given Tile object to the specified position
@@ -321,10 +321,10 @@ var TMXLayer = Renderable.extend({
321
321
  * @param {Number} y Y coordinate (in world/pixels coordinates)
322
322
  * @return {me.Tile} the tile object
323
323
  */
324
- setTile : function (tile, x, y) {
324
+ setTile(tile, x, y) {
325
325
  this.layerData[x][y] = tile;
326
326
  return tile;
327
- },
327
+ }
328
328
 
329
329
  /**
330
330
  * return a new the Tile object corresponding to the given tile id
@@ -337,13 +337,13 @@ var TMXLayer = Renderable.extend({
337
337
  * @param {Number} y Y coordinate (in world/pixels coordinates)
338
338
  * @return {me.Tile} the tile object
339
339
  */
340
- getTileById : function (tileId, x, y) {
340
+ getTileById(tileId, x, y) {
341
341
  if (!this.tileset.contains(tileId)) {
342
342
  // look for the corresponding tileset
343
343
  this.tileset = this.tilesets.getTilesetByGid(tileId);
344
344
  }
345
345
  return new Tile(x, y, tileId, this.tileset);
346
- },
346
+ }
347
347
 
348
348
  /**
349
349
  * Return the Tile object at the specified tile coordinates
@@ -359,7 +359,7 @@ var TMXLayer = Renderable.extend({
359
359
  * // return the first tile at offset 0, 0
360
360
  * var tile = layer.cellAt(0, 0);
361
361
  */
362
- cellAt : function (x, y, boundsCheck) {
362
+ cellAt(x, y, boundsCheck) {
363
363
  var _x = ~~x;
364
364
  var _y = ~~y;
365
365
 
@@ -370,7 +370,7 @@ var TMXLayer = Renderable.extend({
370
370
  } else {
371
371
  return null;
372
372
  }
373
- },
373
+ }
374
374
 
375
375
  /**
376
376
  * clear the tile at the specified position
@@ -386,20 +386,20 @@ var TMXLayer = Renderable.extend({
386
386
  * layer.clearTile(x, y);
387
387
  * });
388
388
  */
389
- clearTile : function (x, y) {
389
+ clearTile(x, y) {
390
390
  // clearing tile
391
391
  this.layerData[x][y] = null;
392
392
  // erase the corresponding area in the canvas
393
393
  if (this.preRender) {
394
394
  this.canvasRenderer.clearRect(x * this.tilewidth, y * this.tileheight, this.tilewidth, this.tileheight);
395
395
  }
396
- },
396
+ }
397
397
 
398
398
  /**
399
399
  * update animations in a tileset layer
400
400
  * @ignore
401
401
  */
402
- update : function (dt) {
402
+ update(dt) {
403
403
  if (this.isAnimated) {
404
404
  var result = false;
405
405
  for (var i = 0; i < this.animatedTilesets.length; i++) {
@@ -409,13 +409,13 @@ var TMXLayer = Renderable.extend({
409
409
  }
410
410
 
411
411
  return false;
412
- },
412
+ }
413
413
 
414
414
  /**
415
415
  * draw a tileset layer
416
416
  * @ignore
417
417
  */
418
- draw : function (renderer, rect) {
418
+ draw(renderer, rect) {
419
419
  // use the offscreen canvas
420
420
  if (this.preRender) {
421
421
  var width = Math.min(rect.width, this.width);
@@ -436,5 +436,6 @@ var TMXLayer = Renderable.extend({
436
436
  this.getRenderer().drawTileLayer(renderer, this, rect);
437
437
  }
438
438
  }
439
- });
439
+ };
440
+
440
441
  export default TMXLayer;
@@ -1,6 +1,6 @@
1
1
  import pool from "./../../system/pooling.js";
2
- import event from "./../../system/event.js";
3
- import game from "./../../game.js";
2
+ import * as event from "./../../system/event.js";
3
+ import { viewport } from "./../../game.js";
4
4
  import collision from "./../../physics/collision.js";
5
5
  import Body from "./../../physics/body.js";
6
6
  import TMXOrthogonalRenderer from "./renderer/TMXOrthogonalRenderer.js";
@@ -19,9 +19,6 @@ import Rect from "./../../shapes/rectangle.js";
19
19
  // constant to identify the collision object layer
20
20
  var COLLISION_GROUP = "collision";
21
21
 
22
- // onresize handler
23
- var onresize_handler = null;
24
-
25
22
  /**
26
23
  * set a compatible renderer object
27
24
  * for the specified map
@@ -297,7 +294,6 @@ export default class TMXTileMap {
297
294
 
298
295
  // to automatically increment z index
299
296
  var zOrder = 0;
300
- var self = this;
301
297
 
302
298
  // Tileset information
303
299
  if (!this.tilesets) {
@@ -308,9 +304,9 @@ export default class TMXTileMap {
308
304
  // parse all tileset objects
309
305
  if (typeof (data.tilesets) !== "undefined") {
310
306
  var tilesets = data.tilesets;
311
- tilesets.forEach(function (tileset) {
307
+ tilesets.forEach((tileset) => {
312
308
  // add the new tileset
313
- self.tilesets.add(readTileset(tileset));
309
+ this.tilesets.add(readTileset(tileset));
314
310
  });
315
311
  }
316
312
 
@@ -338,24 +334,24 @@ export default class TMXTileMap {
338
334
  ));
339
335
  }
340
336
 
341
- data.layers.forEach(function (layer) {
337
+ data.layers.forEach((layer) => {
342
338
  switch (layer.type) {
343
339
  case "imagelayer":
344
- self.layers.push(readImageLayer(self, layer, zOrder++));
340
+ this.layers.push(readImageLayer(this, layer, zOrder++));
345
341
  break;
346
342
 
347
343
  case "tilelayer":
348
- self.layers.push(readLayer(self, layer, zOrder++));
344
+ this.layers.push(readLayer(this, layer, zOrder++));
349
345
  break;
350
346
 
351
347
  // get the object groups information
352
348
  case "objectgroup":
353
- self.objectGroups.push(readObjectGroup(self, layer, zOrder++));
349
+ this.objectGroups.push(readObjectGroup(this, layer, zOrder++));
354
350
  break;
355
351
 
356
352
  // get the object groups information
357
353
  case "group":
358
- self.objectGroups.push(readObjectGroup(self, layer, zOrder++));
354
+ this.objectGroups.push(readObjectGroup(this, layer, zOrder++));
359
355
  break;
360
356
 
361
357
  default:
@@ -412,7 +408,7 @@ export default class TMXTileMap {
412
408
  // callback funtion for the viewport resize event
413
409
  function _setBounds(width, height) {
414
410
  // adjust the viewport bounds if level is smaller
415
- game.viewport.setBounds(
411
+ viewport.setBounds(
416
412
  0, 0,
417
413
  Math.max(levelBounds.width, width),
418
414
  Math.max(levelBounds.height, height)
@@ -427,13 +423,11 @@ export default class TMXTileMap {
427
423
  }
428
424
 
429
425
  if (setViewportBounds === true) {
426
+ event.off(event.VIEWPORT_ONRESIZE, _setBounds);
430
427
  // force viewport bounds update
431
- _setBounds(game.viewport.width, game.viewport.height);
428
+ _setBounds(viewport.width, viewport.height);
432
429
  // Replace the resize handler
433
- if (onresize_handler) {
434
- event.unsubscribe(onresize_handler);
435
- }
436
- onresize_handler = event.subscribe(event.VIEWPORT_ONRESIZE, _setBounds);
430
+ event.on(event.VIEWPORT_ONRESIZE, _setBounds, this);
437
431
  }
438
432
 
439
433
  // set back auto-sort and auto-depth
@@ -523,6 +517,7 @@ export default class TMXTileMap {
523
517
  // check if a me.Tile object is embedded
524
518
  obj = settings.tile.getRenderable(settings);
525
519
  obj.body = new Body(obj, settings.shapes || new Rect(0, 0, this.width, this.height));
520
+ obj.body.setStatic(true);
526
521
  // set the obj z order
527
522
  obj.pos.setMuted(settings.x, settings.y, settings.z);
528
523
  } else {
@@ -545,6 +540,7 @@ export default class TMXTileMap {
545
540
  obj.type = settings.type;
546
541
  obj.id = settings.id;
547
542
  obj.body = new Body(obj, settings.shapes || new Rect(0, 0, obj.width, obj.height));
543
+ obj.body.setStatic(true);
548
544
  obj.resize(obj.body.getBounds().width, obj.body.getBounds().height);
549
545
  }
550
546
  // set the obj z order
@@ -1,6 +1,6 @@
1
1
  import Vector2d from "./../../math/vector2.js";
2
- import video from "./../../video/video.js";
3
- import utils from "./../../utils/utils.js";
2
+ import { renderer } from "./../../video/video.js";
3
+ import * as fileUtil from "./../../utils/file.js";
4
4
  import timer from "./../../system/timer.js";
5
5
  import loader from "./../../loader/loader.js";
6
6
 
@@ -29,10 +29,10 @@ export default class TMXTileset {
29
29
  // check if an external tileset is defined
30
30
  if (typeof(tileset.source) !== "undefined") {
31
31
  var src = tileset.source;
32
- var ext = utils.file.getExtension(src);
32
+ var ext = fileUtil.getExtension(src);
33
33
  if (ext === "tsx" || ext === "json") {
34
34
  // load the external tileset (TSX/JSON)
35
- tileset = loader.getTMX(utils.file.getBasename(src));
35
+ tileset = loader.getTMX(fileUtil.getBasename(src));
36
36
  if (!tileset) {
37
37
  throw new Error(src + " external TSX/JSON tileset not found");
38
38
  }
@@ -143,7 +143,7 @@ export default class TMXTileset {
143
143
  }
144
144
 
145
145
  // create a texture atlas for the given tileset
146
- this.texture = video.renderer.cache.get(this.image, {
146
+ this.texture = renderer.cache.get(this.image, {
147
147
  framewidth : this.tilewidth,
148
148
  frameheight : this.tileheight,
149
149
  margin : this.margin,
@@ -1,4 +1,4 @@
1
- import utils from "./../../utils/utils.js";
1
+ import * as stringUtil from "./../../utils/string.js";
2
2
 
3
3
  /**
4
4
  * set and interpret a TMX property value
@@ -25,11 +25,11 @@ function setTMXValue(name, type, value) {
25
25
 
26
26
  default :
27
27
  // try to parse it anyway
28
- if (!value || utils.string.isBoolean(value)) {
28
+ if (!value || stringUtil.isBoolean(value)) {
29
29
  // if value not defined or boolean
30
30
  value = value ? (value === "true") : true;
31
31
  }
32
- else if (utils.string.isNumeric(value)) {
32
+ else if (stringUtil.isNumeric(value)) {
33
33
  // check if numeric
34
34
  value = Number(value);
35
35
  }
@@ -1,3 +1,5 @@
1
+ /* eslint-disable no-unused-vars */
2
+
1
3
  import pool from "./../../../system/pooling.js";
2
4
  import TMXLayer from "./../TMXLayer.js";
3
5
  import Bounds from "./../../../physics/Bounds.js";
@@ -118,3 +120,5 @@ class TMXRenderer {
118
120
  };
119
121
 
120
122
  export default TMXRenderer;
123
+
124
+ /* eslint-enable no-unused-vars */
@@ -1,7 +1,7 @@
1
- import utils from "./../utils/utils.js";
2
- import event from "./../system/event.js";
1
+ import * as fileUtil from "./../utils/file.js";
2
+ import * as event from "./../system/event.js";
3
3
  import device from "./../system/device.js";
4
- import audio from "./../audio/audio.js";
4
+ import * as audio from "./../audio/audio.js";
5
5
  import state from "./../state/state.js";
6
6
  import level from "./../level/level.js";
7
7
  import * as TMXUtils from "./../level/tiled/TMXUtils.js";
@@ -38,7 +38,7 @@ function checkLoadStatus(onload) {
38
38
  var callback = onload || loader.onload;
39
39
  setTimeout(function () {
40
40
  callback();
41
- event.publish(event.LOADER_COMPLETE);
41
+ event.emit(event.LOADER_COMPLETE);
42
42
  }, 300);
43
43
  }
44
44
  else {
@@ -91,7 +91,7 @@ function preloadFontFace(data, onload, onerror) {
91
91
  document.body.style.fontFamily = data.name;
92
92
  // onloaded callback
93
93
  onload();
94
- }, function (e) {
94
+ }, function () {
95
95
  // rejected
96
96
  onerror(data.name);
97
97
  });
@@ -122,7 +122,7 @@ function preloadTMX(tmxData, onload, onerror) {
122
122
 
123
123
  var xmlhttp = new XMLHttpRequest();
124
124
  // check the data format ('tmx', 'json')
125
- var format = utils.file.getExtension(tmxData.src);
125
+ var format = fileUtil.getExtension(tmxData.src);
126
126
 
127
127
  if (xmlhttp.overrideMimeType) {
128
128
  if (format === "json") {
@@ -385,7 +385,7 @@ var loader = {
385
385
  // pass the load progress in percent, as parameter
386
386
  this.onProgress(progress, res);
387
387
  }
388
- event.publish(event.LOADER_PROGRESS, [progress, res]);
388
+ event.emit(event.LOADER_PROGRESS, progress, res);
389
389
  },
390
390
 
391
391
  /**
@@ -732,7 +732,7 @@ var loader = {
732
732
  */
733
733
  getImage(image) {
734
734
  // force as string and extract the base name
735
- image = utils.file.getBasename("" + image);
735
+ image = fileUtil.getBasename("" + image);
736
736
  if (image in imgList) {
737
737
  // return the corresponding Image object
738
738
  return imgList[image];
@@ -756,21 +756,6 @@ var loader = {
756
756
  return jsonList[elt];
757
757
  }
758
758
  return null;
759
- },
760
-
761
- /**
762
- * Return the loading progress in percent
763
- * @name getLoadProgress
764
- * @memberOf me.loader
765
- * @public
766
- * @function
767
- * @deprecated use callback instead
768
- * @see me.loader.onProgress
769
- * @see me.event.LOADER_PROGRESS
770
- * @return {Number}
771
- */
772
- getLoadProgress() {
773
- return loadCount / resourceCount;
774
759
  }
775
760
 
776
761
  };