@rpgjs/common 3.3.2 → 4.0.0-beta.10

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 (80) hide show
  1. package/LICENSE +19 -0
  2. package/lib/AbstractObject.d.ts +3 -2
  3. package/lib/AbstractObject.js +296 -323
  4. package/lib/AbstractObject.js.map +1 -1
  5. package/lib/Color.js +1 -5
  6. package/lib/Color.js.map +1 -1
  7. package/lib/Event.js +2 -6
  8. package/lib/Event.js.map +1 -1
  9. package/lib/EventEmitter.js +3 -7
  10. package/lib/EventEmitter.js.map +1 -1
  11. package/lib/Game.js +73 -85
  12. package/lib/Game.js.map +1 -1
  13. package/lib/Hit.js +21 -28
  14. package/lib/Hit.js.map +1 -1
  15. package/lib/Logger.js +2 -7
  16. package/lib/Logger.js.map +1 -1
  17. package/lib/Map.d.ts +1 -0
  18. package/lib/Map.js +29 -53
  19. package/lib/Map.js.map +1 -1
  20. package/lib/Module.d.ts +2 -2
  21. package/lib/Module.js +84 -97
  22. package/lib/Module.js.map +1 -1
  23. package/lib/Player.d.ts +1 -0
  24. package/lib/Player.js +4 -7
  25. package/lib/Player.js.map +1 -1
  26. package/lib/Plugin.d.ts +4 -3
  27. package/lib/Plugin.js +14 -14
  28. package/lib/Plugin.js.map +1 -1
  29. package/lib/Scheduler.js +14 -21
  30. package/lib/Scheduler.js.map +1 -1
  31. package/lib/Shape.d.ts +1 -1
  32. package/lib/Shape.js +39 -52
  33. package/lib/Shape.js.map +1 -1
  34. package/lib/Utils.d.ts +4 -1
  35. package/lib/Utils.js +38 -53
  36. package/lib/Utils.js.map +1 -1
  37. package/lib/Vector2d.js +3 -8
  38. package/lib/Vector2d.js.map +1 -1
  39. package/lib/VirtualGrid.d.ts +1 -1
  40. package/lib/VirtualGrid.js +5 -12
  41. package/lib/VirtualGrid.js.map +1 -1
  42. package/lib/Worker.js +2 -10
  43. package/lib/Worker.js.map +1 -1
  44. package/lib/WorldMaps.d.ts +3 -1
  45. package/lib/WorldMaps.js +29 -15
  46. package/lib/WorldMaps.js.map +1 -1
  47. package/lib/gui/PrebuiltGui.js +2 -5
  48. package/lib/gui/PrebuiltGui.js.map +1 -1
  49. package/lib/index.d.ts +3 -1
  50. package/lib/index.js +24 -69
  51. package/lib/index.js.map +1 -1
  52. package/lib/transports/io.js +5 -9
  53. package/lib/transports/io.js.map +1 -1
  54. package/lib/workers/move.js +26 -42
  55. package/lib/workers/move.js.map +1 -1
  56. package/package.json +9 -11
  57. package/src/AbstractObject.ts +915 -0
  58. package/src/Color.ts +29 -0
  59. package/src/DefaultInput.ts +26 -0
  60. package/src/Event.ts +3 -0
  61. package/src/EventEmitter.ts +52 -0
  62. package/src/Game.ts +150 -0
  63. package/src/Hit.ts +70 -0
  64. package/src/Logger.ts +7 -0
  65. package/src/Map.ts +335 -0
  66. package/src/Module.ts +108 -0
  67. package/src/Player.ts +30 -0
  68. package/src/Plugin.ts +91 -0
  69. package/src/Scheduler.ts +88 -0
  70. package/src/Shape.ts +300 -0
  71. package/src/Utils.ts +168 -0
  72. package/src/Vector2d.ts +70 -0
  73. package/src/VirtualGrid.ts +78 -0
  74. package/src/Worker.ts +17 -0
  75. package/src/WorldMaps.ts +204 -0
  76. package/src/gui/PrebuiltGui.ts +27 -0
  77. package/src/index.ts +24 -0
  78. package/src/transports/io.ts +91 -0
  79. package/src/workers/move.ts +61 -0
  80. package/tsconfig.json +25 -0
package/lib/Scheduler.js CHANGED
@@ -1,13 +1,7 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Scheduler = void 0;
7
- const rxjs_1 = require("rxjs");
8
- const EventEmitter_1 = require("./EventEmitter");
9
- const Utils_1 = __importDefault(require("./Utils"));
10
- class Scheduler extends EventEmitter_1.EventEmitter {
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { EventEmitter } from './EventEmitter';
3
+ import Utils from './Utils';
4
+ export class Scheduler extends EventEmitter {
11
5
  constructor() {
12
6
  super(...arguments);
13
7
  this.fps = 60;
@@ -16,7 +10,7 @@ class Scheduler extends EventEmitter_1.EventEmitter {
16
10
  this.timestamp = 0;
17
11
  this.requestedDelay = 0;
18
12
  this.lastTimestamp = 0;
19
- this._tick = new rxjs_1.BehaviorSubject({
13
+ this._tick = new BehaviorSubject({
20
14
  timestamp: 0,
21
15
  deltaTime: 0,
22
16
  frame: 0,
@@ -28,13 +22,13 @@ class Scheduler extends EventEmitter_1.EventEmitter {
28
22
  }
29
23
  nextTick(timestamp) {
30
24
  this.lastTimestamp = this.lastTimestamp || this.timestamp; // first
31
- this.deltaTime = Utils_1.default.preciseNow() - this.timestamp;
25
+ this.deltaTime = Utils.preciseNow() - this.timestamp;
32
26
  this.timestamp = timestamp;
33
27
  this._tick.next({
34
28
  timestamp: this.timestamp,
35
29
  deltaTime: this.deltaTime,
36
30
  frame: this.frame,
37
- deltaRatio: ~~this.deltaTime / ~~Utils_1.default.fps2ms(this.fps)
31
+ deltaRatio: ~~this.deltaTime / ~~Utils.fps2ms(this.fps)
38
32
  });
39
33
  this.lastTimestamp = this.timestamp;
40
34
  this.frame++;
@@ -51,14 +45,14 @@ class Scheduler extends EventEmitter_1.EventEmitter {
51
45
  if (options.delay)
52
46
  this.requestedDelay = options.delay;
53
47
  const requestAnimationFrame = (fn) => {
54
- if (Utils_1.default.isBrowser()) {
48
+ if (Utils.isBrowser()) {
55
49
  window.requestAnimationFrame(fn.bind(this));
56
50
  }
57
51
  else {
58
52
  setTimeout(() => {
59
53
  this.requestedDelay = 0;
60
- fn(Utils_1.default.preciseNow());
61
- }, Utils_1.default.fps2ms(this.fps) + this.requestedDelay);
54
+ fn(Utils.preciseNow());
55
+ }, Utils.fps2ms(this.fps) + this.requestedDelay);
62
56
  }
63
57
  };
64
58
  if (!this.maxFps) {
@@ -69,12 +63,12 @@ class Scheduler extends EventEmitter_1.EventEmitter {
69
63
  requestAnimationFrame(loop);
70
64
  }
71
65
  else {
72
- const msInterval = Utils_1.default.fps2ms(this.maxFps);
73
- let now = Utils_1.default.preciseNow();
74
- let then = Utils_1.default.preciseNow();
66
+ const msInterval = Utils.fps2ms(this.maxFps);
67
+ let now = Utils.preciseNow();
68
+ let then = Utils.preciseNow();
75
69
  const loop = (timestamp) => {
76
70
  requestAnimationFrame(loop);
77
- now = Utils_1.default.preciseNow();
71
+ now = Utils.preciseNow();
78
72
  const elapsed = now - then;
79
73
  if (elapsed > msInterval) {
80
74
  then = now - (elapsed % msInterval);
@@ -86,5 +80,4 @@ class Scheduler extends EventEmitter_1.EventEmitter {
86
80
  return this;
87
81
  }
88
82
  }
89
- exports.Scheduler = Scheduler;
90
83
  //# sourceMappingURL=Scheduler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Scheduler.js","sourceRoot":"","sources":["../src/Scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Scheduler.js","sourceRoot":"","sources":["../src/Scheduler.ts"],"names":[],"mappings":"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"}
package/lib/Shape.d.ts CHANGED
@@ -6,7 +6,7 @@ export declare enum ShapePositioning {
6
6
  Default = "default",
7
7
  Center = "center"
8
8
  }
9
- declare type ShapeObject = TiledObjectClass & {
9
+ type ShapeObject = TiledObjectClass & {
10
10
  onIn?(player: RpgCommonPlayer): any;
11
11
  onOut?(player: RpgCommonPlayer): any;
12
12
  fixEvent?: RpgCommonPlayer;
package/lib/Shape.js CHANGED
@@ -1,28 +1,16 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.RpgShape = exports.ShapePositioning = void 0;
13
- const Hit_1 = require("./Hit");
14
- const tiled_1 = require("@rpgjs/tiled");
15
- const types_1 = require("@rpgjs/types");
16
- const Vector2d_1 = require("./Vector2d");
17
- var ShapePositioning;
1
+ import { Hit, HitType } from './Hit';
2
+ import { TiledObjectClass } from '@rpgjs/tiled';
3
+ import { PlayerType } from '@rpgjs/types';
4
+ import { Vector2d } from './Vector2d';
5
+ export var ShapePositioning;
18
6
  (function (ShapePositioning) {
19
7
  ShapePositioning["Default"] = "default";
20
8
  ShapePositioning["Center"] = "center";
21
- })(ShapePositioning = exports.ShapePositioning || (exports.ShapePositioning = {}));
22
- class RpgShape extends tiled_1.TiledObjectClass {
9
+ })(ShapePositioning || (ShapePositioning = {}));
10
+ export class RpgShape extends TiledObjectClass {
23
11
  constructor(obj) {
24
12
  super();
25
- this.type = Hit_1.HitType.Box;
13
+ this.type = HitType.Box;
26
14
  this.class = '';
27
15
  /**
28
16
  * Get/Set name
@@ -132,7 +120,7 @@ class RpgShape extends tiled_1.TiledObjectClass {
132
120
  this.setPos('y', val);
133
121
  }
134
122
  get position() {
135
- return new Vector2d_1.Vector2d(this.x, this.y, this.z);
123
+ return new Vector2d(this.x, this.y, this.z);
136
124
  }
137
125
  /**
138
126
  * Get/Set properties
@@ -142,19 +130,19 @@ class RpgShape extends tiled_1.TiledObjectClass {
142
130
  * @memberof Shape
143
131
  */
144
132
  isEvent() {
145
- return this.type == types_1.PlayerType.Event;
133
+ return this.type == PlayerType.Event;
146
134
  }
147
135
  set(obj) {
148
- const hit = Hit_1.Hit.getHitbox(obj);
136
+ const hit = Hit.getHitbox(obj);
149
137
  Object.assign(this, hit);
150
- const objClone = Object.assign({}, obj);
138
+ const objClone = { ...obj };
151
139
  // Delete dimension and position because already managed and given by the hitbox above
152
140
  ['width', 'height', 'x', 'y'].forEach((prop) => Reflect.deleteProperty(objClone, prop));
153
141
  Object.assign(this, objClone);
154
142
  const findPoint = (prop, isMin) => {
155
143
  return this.hitbox.points.sort((a, b) => isMin ? a[prop] - b[prop] : b[prop] - a[prop])[0][prop];
156
144
  };
157
- if (this.type == Hit_1.HitType.Polygon) {
145
+ if (this.type == HitType.Polygon) {
158
146
  this.hitbox.minX = findPoint('x', true);
159
147
  this.hitbox.maxX = findPoint('x', false);
160
148
  this.hitbox.minY = findPoint('y', true);
@@ -168,7 +156,11 @@ class RpgShape extends tiled_1.TiledObjectClass {
168
156
  const color = this.getProperty('color');
169
157
  const image = this.getProperty('image');
170
158
  if (color) {
171
- this.components = [{ id: 'color', value: color }];
159
+ this.components = [{
160
+ id: 'shape', value: {
161
+ fill: color
162
+ }
163
+ }];
172
164
  return;
173
165
  }
174
166
  if (image) {
@@ -187,29 +179,25 @@ class RpgShape extends tiled_1.TiledObjectClass {
187
179
  getType() {
188
180
  return this.class || this.type;
189
181
  }
190
- in(player) {
191
- return __awaiter(this, void 0, void 0, function* () {
192
- if (!this.playerIsIn(player)) {
193
- this.playersIn[player.id] = true;
194
- player.inShapes[this.name] = this;
195
- yield player.execMethod('onInShape', [this]);
196
- yield player.execMethod('onIn', [player], this);
197
- return true;
198
- }
199
- return false;
200
- });
182
+ async in(player) {
183
+ if (!this.playerIsIn(player)) {
184
+ this.playersIn[player.id] = true;
185
+ player.inShapes[this.name] = this;
186
+ await player.execMethod('onInShape', [this]);
187
+ await player.execMethod('onIn', [player], this);
188
+ return true;
189
+ }
190
+ return false;
201
191
  }
202
- out(player) {
203
- return __awaiter(this, void 0, void 0, function* () {
204
- if (this.playerIsIn(player)) {
205
- delete this.playersIn[player.id];
206
- delete player.inShapes[this.name];
207
- yield player.execMethod('onOutShape', [this]);
208
- yield player.execMethod('onOut', [player], this);
209
- return true;
210
- }
211
- return false;
212
- });
192
+ async out(player) {
193
+ if (this.playerIsIn(player)) {
194
+ delete this.playersIn[player.id];
195
+ delete player.inShapes[this.name];
196
+ await player.execMethod('onOutShape', [this]);
197
+ await player.execMethod('onOut', [player], this);
198
+ return true;
199
+ }
200
+ return false;
213
201
  }
214
202
  /**
215
203
  * Whether the player is in this shape
@@ -223,7 +211,7 @@ class RpgShape extends tiled_1.TiledObjectClass {
223
211
  return !!this.playersIn[player.id];
224
212
  }
225
213
  isShapePosition() {
226
- return this.type !== Hit_1.HitType.Box && this.type !== Hit_1.HitType.Circle && this.type !== Hit_1.HitType.Polygon;
214
+ return this.type !== HitType.Box && this.type !== HitType.Circle && this.type !== HitType.Polygon;
227
215
  }
228
216
  /**
229
217
  * Recover the player with the shape. You must have used the `attachShape()` method on the player
@@ -243,7 +231,7 @@ class RpgShape extends tiled_1.TiledObjectClass {
243
231
  * @returns { minX: number, minY: number, maxX: number, maxY: number }
244
232
  */
245
233
  getSizeBox(margin = 0) {
246
- if (this.type == Hit_1.HitType.Circle) {
234
+ if (this.type == HitType.Circle) {
247
235
  const radius = this.hitbox.r;
248
236
  return {
249
237
  minX: this.x - radius - margin,
@@ -252,7 +240,7 @@ class RpgShape extends tiled_1.TiledObjectClass {
252
240
  maxY: this.y + radius + margin
253
241
  };
254
242
  }
255
- if (this.type == Hit_1.HitType.Polygon) {
243
+ if (this.type == HitType.Polygon) {
256
244
  return {
257
245
  minX: this.x + this.hitbox.minX - margin,
258
246
  maxX: this.x + this.hitbox.maxX + margin,
@@ -268,5 +256,4 @@ class RpgShape extends tiled_1.TiledObjectClass {
268
256
  };
269
257
  }
270
258
  }
271
- exports.RpgShape = RpgShape;
272
259
  //# sourceMappingURL=Shape.js.map
package/lib/Shape.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Shape.js","sourceRoot":"","sources":["../src/Shape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Shape.js","sourceRoot":"","sources":["../src/Shape.ts"],"names":[],"mappings":"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"}
package/lib/Utils.d.ts CHANGED
@@ -18,7 +18,10 @@ export declare function generateUID(): string;
18
18
  export declare function createConstructor<T>(...propNames: any[]): T;
19
19
  export declare function sharedArrayBuffer(): any;
20
20
  export declare function toRadians(angle: number): number;
21
- export declare function hexaToNumber(hexa: string): number;
21
+ export declare function hexaToNumber(hexa: string): {
22
+ value: number;
23
+ alpha: number;
24
+ };
22
25
  export declare function extractId(path: string): string | null;
23
26
  export declare function basename(path: string): string;
24
27
  export declare function fps2ms(fps: number): number;
package/lib/Utils.js CHANGED
@@ -1,66 +1,49 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.preciseNow = exports.fps2ms = exports.basename = exports.extractId = exports.hexaToNumber = exports.toRadians = exports.sharedArrayBuffer = exports.createConstructor = exports.generateUID = exports.applyMixins = exports.arrayEquals = exports.capitalize = exports.intersection = exports.arrayFlat = exports.arrayUniq = exports.isInstanceOf = exports.isString = exports.isObject = exports.isArray = exports.isPromise = exports.isClass = exports.isFunction = exports.isBrowser = exports.random = void 0;
4
- function random(min, max) {
1
+ export function random(min, max) {
5
2
  return Math.floor(Math.random() * (max - min + 1) + min);
6
3
  }
7
- exports.random = random;
8
- function isBrowser() {
4
+ export function isBrowser() {
9
5
  return typeof window !== 'undefined';
10
6
  }
11
- exports.isBrowser = isBrowser;
12
- function isFunction(val) {
7
+ export function isFunction(val) {
13
8
  return {}.toString.call(val) === '[object Function]';
14
9
  }
15
- exports.isFunction = isFunction;
16
- function isClass(func) {
10
+ export function isClass(func) {
17
11
  return typeof func === 'function'
18
12
  && /^class\s/.test(Function.prototype.toString.call(func));
19
13
  }
20
- exports.isClass = isClass;
21
- function isPromise(val) {
14
+ export function isPromise(val) {
22
15
  return isInstanceOf(val, Promise);
23
16
  }
24
- exports.isPromise = isPromise;
25
- function isArray(val) {
17
+ export function isArray(val) {
26
18
  return isInstanceOf(val, Array);
27
19
  }
28
- exports.isArray = isArray;
29
- function isObject(val) {
20
+ export function isObject(val) {
30
21
  return typeof val == 'object' && val != null && !isArray(val);
31
22
  }
32
- exports.isObject = isObject;
33
- function isString(val) {
23
+ export function isString(val) {
34
24
  return typeof val == 'string';
35
25
  }
36
- exports.isString = isString;
37
- function isInstanceOf(val, _class) {
26
+ export function isInstanceOf(val, _class) {
38
27
  return val instanceof _class;
39
28
  }
40
- exports.isInstanceOf = isInstanceOf;
41
- function arrayUniq(array) {
29
+ export function arrayUniq(array) {
42
30
  return [...new Set(array)];
43
31
  }
44
- exports.arrayUniq = arrayUniq;
45
- function arrayFlat(array) {
32
+ export function arrayFlat(array) {
46
33
  return array.reduce((acc, val) => acc.concat(val), []);
47
34
  }
48
- exports.arrayFlat = arrayFlat;
49
- function intersection([start1, end1], [start2, end2]) {
35
+ export function intersection([start1, end1], [start2, end2]) {
50
36
  return (start1 >= start2 && start1 <= end2) || (start2 >= start1 && start2 < end1);
51
37
  }
52
- exports.intersection = intersection;
53
- function capitalize(s) {
38
+ export function capitalize(s) {
54
39
  if (typeof s !== 'string')
55
40
  return '';
56
41
  return s.charAt(0).toUpperCase() + s.slice(1);
57
42
  }
58
- exports.capitalize = capitalize;
59
- function arrayEquals(a, b) {
43
+ export function arrayEquals(a, b) {
60
44
  return a.length === b.length && a.every((v, i) => v === b[i]);
61
45
  }
62
- exports.arrayEquals = arrayEquals;
63
- function applyMixins(derivedCtor, baseCtors) {
46
+ export function applyMixins(derivedCtor, baseCtors) {
64
47
  baseCtors.forEach((baseCtor) => {
65
48
  Object.getOwnPropertyNames(baseCtor.prototype).forEach((name) => {
66
49
  const baseCtorName = Object.getOwnPropertyDescriptor(baseCtor.prototype, name);
@@ -71,16 +54,14 @@ function applyMixins(derivedCtor, baseCtors) {
71
54
  });
72
55
  });
73
56
  }
74
- exports.applyMixins = applyMixins;
75
- function generateUID() {
57
+ export function generateUID() {
76
58
  let firstPart = (Math.random() * 46656) | 0;
77
59
  let secondPart = (Math.random() * 46656) | 0;
78
60
  firstPart = ("000" + firstPart.toString(36)).slice(-3);
79
61
  secondPart = ("000" + secondPart.toString(36)).slice(-3);
80
62
  return firstPart + secondPart;
81
63
  }
82
- exports.generateUID = generateUID;
83
- function createConstructor(...propNames) {
64
+ export function createConstructor(...propNames) {
84
65
  return class {
85
66
  constructor(...propValues) {
86
67
  propNames.forEach((name, idx) => {
@@ -89,8 +70,7 @@ function createConstructor(...propNames) {
89
70
  }
90
71
  };
91
72
  }
92
- exports.createConstructor = createConstructor;
93
- function sharedArrayBuffer() {
73
+ export function sharedArrayBuffer() {
94
74
  let buffer;
95
75
  if (typeof SharedArrayBuffer != 'undefined') {
96
76
  buffer = SharedArrayBuffer;
@@ -100,35 +80,40 @@ function sharedArrayBuffer() {
100
80
  }
101
81
  return buffer;
102
82
  }
103
- exports.sharedArrayBuffer = sharedArrayBuffer;
104
- function toRadians(angle) {
83
+ export function toRadians(angle) {
105
84
  return angle * (Math.PI / 180);
106
85
  }
107
- exports.toRadians = toRadians;
108
- function hexaToNumber(hexa) {
109
- return parseInt(hexa.replace('#', ''), 16);
86
+ export function hexaToNumber(hexa) {
87
+ let val = hexa.replace('#', '');
88
+ let alpha = 1;
89
+ if (val.length === 3) {
90
+ val = val.split('').map((v) => v + v).join('');
91
+ }
92
+ if (val.length === 8) {
93
+ alpha = parseInt(val.substring(0, 2), 16) / 255;
94
+ val = val.substring(2);
95
+ }
96
+ return {
97
+ value: parseInt(val, 16),
98
+ alpha
99
+ };
110
100
  }
111
- exports.hexaToNumber = hexaToNumber;
112
- function extractId(path) {
101
+ export function extractId(path) {
113
102
  const id = path.match(/([a-zA-Z0-9-_$!]+)\.[a-z]+$/i);
114
103
  if (!id)
115
104
  return null;
116
105
  return id[1];
117
106
  }
118
- exports.extractId = extractId;
119
- function basename(path) {
107
+ export function basename(path) {
120
108
  return path.substring(path.lastIndexOf('/') + 1);
121
109
  }
122
- exports.basename = basename;
123
- function fps2ms(fps) {
110
+ export function fps2ms(fps) {
124
111
  return 1000 / fps;
125
112
  }
126
- exports.fps2ms = fps2ms;
127
- function preciseNow() {
113
+ export function preciseNow() {
128
114
  return typeof performance !== 'undefined' ? performance.now() : Date.now();
129
115
  }
130
- exports.preciseNow = preciseNow;
131
- exports.default = {
116
+ export default {
132
117
  random,
133
118
  isBrowser,
134
119
  isPromise,
package/lib/Utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../src/Utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../src/Utils.ts"],"names":[],"mappings":"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"}
package/lib/Vector2d.js CHANGED
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Vector2dZero = exports.Vector2d = void 0;
4
- class Vector2d {
1
+ export class Vector2d {
5
2
  constructor(x, y, z = 0) {
6
3
  this.x = x;
7
4
  this.y = y;
@@ -36,7 +33,7 @@ class Vector2d {
36
33
  distanceWith(vector) {
37
34
  const dx = this.x - vector.x;
38
35
  const dy = this.y - vector.y;
39
- return Math.sqrt(Math.pow(dx, 2) + Math.pow(dy, 2));
36
+ return Math.sqrt(dx ** 2 + dy ** 2);
40
37
  }
41
38
  magnitude() {
42
39
  return Math.sqrt(this.x * this.x + this.y * this.y);
@@ -58,11 +55,9 @@ class Vector2d {
58
55
  this.z !== vector.z;
59
56
  }
60
57
  }
61
- exports.Vector2d = Vector2d;
62
- class Vector2dZero extends Vector2d {
58
+ export class Vector2dZero extends Vector2d {
63
59
  constructor() {
64
60
  super(0, 0);
65
61
  }
66
62
  }
67
- exports.Vector2dZero = Vector2dZero;
68
63
  //# sourceMappingURL=Vector2d.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Vector2d.js","sourceRoot":"","sources":["../src/Vector2d.ts"],"names":[],"mappings":";;;AAAA,MAAa,QAAQ;IACjB,YAAmB,CAAS,EAAS,CAAS,EAAS,IAAY,CAAC;QAAjD,MAAC,GAAD,CAAC,CAAQ;QAAS,MAAC,GAAD,CAAC,CAAQ;QAAS,MAAC,GAAD,CAAC,CAAY;IAAG,CAAC;IAExE,GAAG,CAAC,MAAgB;QAChB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACjB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,GAAG,CAAC,MAAgB;QAChB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,QAAQ,CAAC,MAAgB;QACrB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,QAAQ,CAAC,MAAc;QACnB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAc;QACjB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,YAAY,CAAC,MAAgB;QACzB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAA,EAAE,EAAI,CAAC,CAAA,GAAG,SAAA,EAAE,EAAI,CAAC,CAAA,CAAC,CAAA;IACvC,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,IAAI;QACA,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAC/C,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,OAAO,CAAC,MAAgB;QACpB,OAAO,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YAC1B,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAA;IACvB,CAAC;IAED,kBAAkB,CAAC,MAAgB;QAC/B,OAAO,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YAC1B,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAA;IACvB,CAAC;CACJ;AA/DD,4BA+DC;AAED,MAAa,YAAa,SAAQ,QAAQ;IACtC;QACI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACf,CAAC;CACJ;AAJD,oCAIC"}
1
+ {"version":3,"file":"Vector2d.js","sourceRoot":"","sources":["../src/Vector2d.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,QAAQ;IACjB,YAAmB,CAAS,EAAS,CAAS,EAAS,IAAY,CAAC;QAAjD,MAAC,GAAD,CAAC,CAAQ;QAAS,MAAC,GAAD,CAAC,CAAQ;QAAS,MAAC,GAAD,CAAC,CAAY;IAAG,CAAC;IAExE,GAAG,CAAC,MAAgB;QAChB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACjB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,GAAG,CAAC,MAAgB;QAChB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,QAAQ,CAAC,MAAgB;QACrB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;QAClB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,QAAQ,CAAC,MAAc;QACnB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAc;QACjB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,IAAI,CAAC,CAAC,IAAI,MAAM,CAAA;QAChB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,YAAY,CAAC,MAAgB;QACzB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;IACvC,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,IAAI;QACA,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAC/C,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,OAAO,CAAC,MAAgB;QACpB,OAAO,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YAC1B,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAA;IACvB,CAAC;IAED,kBAAkB,CAAC,MAAgB;QAC/B,OAAO,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YAC1B,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YACnB,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAA;IACvB,CAAC;CACJ;AAED,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACtC;QACI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACf,CAAC;CACJ"}
@@ -1,4 +1,4 @@
1
- export declare type Box = {
1
+ export type Box = {
2
2
  minX: number;
3
3
  minY: number;
4
4
  maxX: number;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VirtualGrid = void 0;
4
- class VirtualGrid {
1
+ export class VirtualGrid {
5
2
  constructor(nbCellWidth, cellWidth, cellHeight) {
6
3
  this.nbCellWidth = nbCellWidth;
7
4
  this.cellWidth = cellWidth;
@@ -41,17 +38,15 @@ class VirtualGrid {
41
38
  getObjectsById(id) {
42
39
  let objects = [];
43
40
  const cells = this.inverseCells.get(id);
44
- cells === null || cells === void 0 ? void 0 : cells.forEach((index) => {
41
+ cells?.forEach((index) => {
45
42
  objects = [...objects, ...this.cells.get(index) || []];
46
43
  });
47
44
  return new Set(objects);
48
45
  }
49
46
  clearObjectInCells(id) {
50
- var _a;
51
47
  if (this.inverseCells.has(id)) {
52
- (_a = this.inverseCells.get(id)) === null || _a === void 0 ? void 0 : _a.forEach((cellIndex) => {
53
- var _a;
54
- (_a = this.cells.get(cellIndex)) === null || _a === void 0 ? void 0 : _a.delete(id);
48
+ this.inverseCells.get(id)?.forEach((cellIndex) => {
49
+ this.cells.get(cellIndex)?.delete(id);
55
50
  });
56
51
  this.inverseCells.delete(id);
57
52
  }
@@ -60,16 +55,14 @@ class VirtualGrid {
60
55
  this.clearObjectInCells(id);
61
56
  const cells = new Set();
62
57
  this.getCells(box, (index) => {
63
- var _a;
64
58
  cells.add(index);
65
59
  const memoryCells = this.cells.get(index);
66
60
  if (!memoryCells) {
67
61
  this.cells.set(index, new Set());
68
62
  }
69
- (_a = this.cells.get(index)) === null || _a === void 0 ? void 0 : _a.add(id);
63
+ this.cells.get(index)?.add(id);
70
64
  });
71
65
  this.inverseCells.set(id, cells);
72
66
  }
73
67
  }
74
- exports.VirtualGrid = VirtualGrid;
75
68
  //# sourceMappingURL=VirtualGrid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualGrid.js","sourceRoot":"","sources":["../src/VirtualGrid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VirtualGrid.js","sourceRoot":"","sources":["../src/VirtualGrid.ts"],"names":[],"mappings":"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"}