@rpgjs/common 4.0.5 → 4.1.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,29 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [4.1.1](https://github.com/RSamaium/RPG-JS/compare/v4.1.0...v4.1.1) (2023-10-27)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **scene:** click in scene map ([04d56d6](https://github.com/RSamaium/RPG-JS/commit/04d56d6e07c58e2c039732e35ae3b94fc6751fa5))
12
+ * **test:** clear after scene tests ([e9a934c](https://github.com/RSamaium/RPG-JS/commit/e9a934c7fc197079036628a94891c371bae4edb2))
13
+
14
+
15
+
16
+
17
+
18
+ # [4.1.0](https://github.com/RSamaium/RPG-JS/compare/v4.0.5...v4.1.0) (2023-10-20)
19
+
20
+
21
+ ### Features
22
+
23
+ * onDetectInShape and onDetectOutShape hooks in event ([b2c6a2f](https://github.com/RSamaium/RPG-JS/commit/b2c6a2f98b3bcc992deb0473a9fb1699874b6e48))
24
+
25
+
26
+
27
+
28
+
6
29
  ## 4.0.5 (2023-10-18)
7
30
 
8
31
 
@@ -7292,7 +7292,7 @@ class RpgShape extends TiledObjectClass {
7292
7292
  this.playersIn[player.id] = true;
7293
7293
  player.inShapes[this.name] = this;
7294
7294
  await player.execMethod("onInShape", [this]);
7295
- await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onDetect", [player, this], this.fixEvent));
7295
+ await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onDetectInShape", [player, this], this.fixEvent));
7296
7296
  await player.execMethod("onIn", [player], this);
7297
7297
  return true;
7298
7298
  }
@@ -7304,7 +7304,7 @@ class RpgShape extends TiledObjectClass {
7304
7304
  delete this.playersIn[player.id];
7305
7305
  delete player.inShapes[this.name];
7306
7306
  await player.execMethod("onOutShape", [this]);
7307
- await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onUnDetect", [player, this], this.fixEvent));
7307
+ await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onDetectOutShape", [player, this], this.fixEvent));
7308
7308
  await player.execMethod("onOut", [player], this);
7309
7309
  return true;
7310
7310
  }
@@ -9155,7 +9155,8 @@ class EventEmitter {
9155
9155
  else
9156
9156
  ret.push(listener(data));
9157
9157
  }
9158
- } else if (this.listenersOnce[name]) {
9158
+ }
9159
+ if (this.listenersOnce[name]) {
9159
9160
  if (rest)
9160
9161
  ret.push(this.listenersOnce[name](...data));
9161
9162
  else
@@ -9168,9 +9169,18 @@ class EventEmitter {
9168
9169
  return val;
9169
9170
  }));
9170
9171
  }
9171
- off(name) {
9172
- delete this.listeners[name];
9173
- delete this.listenersOnce[name];
9172
+ off(name, listener) {
9173
+ if (!listener) {
9174
+ delete this.listeners[name];
9175
+ delete this.listenersOnce[name];
9176
+ return;
9177
+ }
9178
+ if (this.listeners[name]) {
9179
+ const index = this.listeners[name].indexOf(listener);
9180
+ if (index !== -1) {
9181
+ this.listeners[name].splice(index, 1);
9182
+ }
9183
+ }
9174
9184
  }
9175
9185
  clear() {
9176
9186
  this.listeners = {};
@@ -7296,7 +7296,7 @@
7296
7296
  this.playersIn[player.id] = true;
7297
7297
  player.inShapes[this.name] = this;
7298
7298
  await player.execMethod("onInShape", [this]);
7299
- await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onDetect", [player, this], this.fixEvent));
7299
+ await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onDetectInShape", [player, this], this.fixEvent));
7300
7300
  await player.execMethod("onIn", [player], this);
7301
7301
  return true;
7302
7302
  }
@@ -7308,7 +7308,7 @@
7308
7308
  delete this.playersIn[player.id];
7309
7309
  delete player.inShapes[this.name];
7310
7310
  await player.execMethod("onOutShape", [this]);
7311
- await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onUnDetect", [player, this], this.fixEvent));
7311
+ await ((_a = this.fixEvent) == null ? void 0 : _a.execMethod("onDetectOutShape", [player, this], this.fixEvent));
7312
7312
  await player.execMethod("onOut", [player], this);
7313
7313
  return true;
7314
7314
  }
@@ -9159,7 +9159,8 @@
9159
9159
  else
9160
9160
  ret.push(listener(data));
9161
9161
  }
9162
- } else if (this.listenersOnce[name]) {
9162
+ }
9163
+ if (this.listenersOnce[name]) {
9163
9164
  if (rest)
9164
9165
  ret.push(this.listenersOnce[name](...data));
9165
9166
  else
@@ -9172,9 +9173,18 @@
9172
9173
  return val;
9173
9174
  }));
9174
9175
  }
9175
- off(name) {
9176
- delete this.listeners[name];
9177
- delete this.listenersOnce[name];
9176
+ off(name, listener) {
9177
+ if (!listener) {
9178
+ delete this.listeners[name];
9179
+ delete this.listenersOnce[name];
9180
+ return;
9181
+ }
9182
+ if (this.listeners[name]) {
9183
+ const index = this.listeners[name].indexOf(listener);
9184
+ if (index !== -1) {
9185
+ this.listeners[name].splice(index, 1);
9186
+ }
9187
+ }
9178
9188
  }
9179
9189
  clear() {
9180
9190
  this.listeners = {};
@@ -5,6 +5,6 @@ export declare class EventEmitter {
5
5
  once(name: string, cb: Function): EventEmitter;
6
6
  on(name: string, cb: Function): EventEmitter;
7
7
  emit(name: string, data?: any, rest?: boolean): Promise<any[]>;
8
- off(name: string): void;
8
+ off(name: string, listener?: Function): void;
9
9
  clear(): void;
10
10
  }
@@ -27,7 +27,7 @@ export class EventEmitter {
27
27
  ret.push(listener(data));
28
28
  }
29
29
  }
30
- else if (this.listenersOnce[name]) {
30
+ if (this.listenersOnce[name]) {
31
31
  if (rest)
32
32
  ret.push(this.listenersOnce[name](...data));
33
33
  else
@@ -40,9 +40,18 @@ export class EventEmitter {
40
40
  return val;
41
41
  }));
42
42
  }
43
- off(name) {
44
- delete this.listeners[name];
45
- delete this.listenersOnce[name];
43
+ off(name, listener) {
44
+ if (!listener) {
45
+ delete this.listeners[name];
46
+ delete this.listenersOnce[name];
47
+ return;
48
+ }
49
+ if (this.listeners[name]) {
50
+ const index = this.listeners[name].indexOf(listener);
51
+ if (index !== -1) {
52
+ this.listeners[name].splice(index, 1);
53
+ }
54
+ }
46
55
  }
47
56
  clear() {
48
57
  this.listeners = {};
@@ -1 +1 @@
1
- {"version":3,"file":"EventEmitter.js","sourceRoot":"","sources":["../src/EventEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,OAAO,YAAY;IAAzB;QACY,cAAS,GAEb,EAAE,CAAA;QAEE,kBAAa,GAEjB,EAAE,CAAA;IA8CV,CAAC;IA5CG,GAAG,CAAC,IAAY;QACZ,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAC/D,CAAC;IAED,IAAI,CAAC,IAAY,EAAE,EAAY;QAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QAC7B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,EAAE,CAAC,IAAY,EAAE,EAAY;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QACpD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC7B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,IAAI,CAAC,IAAY,EAAE,IAAU,EAAE,OAAgB,KAAK;QAChD,MAAM,GAAG,GAAQ,EAAE,CAAA;QACnB,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACtB,KAAK,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBACvC,IAAI,IAAI;oBAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;;oBAChC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;aAChC;SACJ;aACI,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YAC/B,IAAI,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;;gBAChD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;SAChD;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACjB,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;aAC9B;YACD,OAAO,GAAG,CAAA;QACd,CAAC,CAAC,CAAC,CAAA;IACP,CAAC;IAED,GAAG,CAAC,IAAY;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC3B,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,KAAK;QACD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA;QACnB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;IAC3B,CAAC;CACJ"}
1
+ {"version":3,"file":"EventEmitter.js","sourceRoot":"","sources":["../src/EventEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,OAAO,YAAY;IAAzB;QACY,cAAS,GAEb,EAAE,CAAA;QAEE,kBAAa,GAEjB,EAAE,CAAA;IAuDV,CAAC;IArDG,GAAG,CAAC,IAAY;QACZ,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAC/D,CAAC;IAED,IAAI,CAAC,IAAY,EAAE,EAAY;QAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QAC7B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,EAAE,CAAC,IAAY,EAAE,EAAY;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QACpD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC7B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,IAAI,CAAC,IAAY,EAAE,IAAU,EAAE,OAAgB,KAAK;QAChD,MAAM,GAAG,GAAQ,EAAE,CAAA;QACnB,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACtB,KAAK,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBACvC,IAAI,IAAI;oBAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;;oBAChC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;aAChC;SACJ;QACD,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YAC1B,IAAI,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;;gBAChD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;SAChD;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACjB,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;aAC9B;YACD,OAAO,GAAG,CAAA;QACd,CAAC,CAAC,CAAC,CAAA;IACP,CAAC;IAED,GAAG,CAAC,IAAY,EAAE,QAAmB;QACjC,IAAI,CAAC,QAAQ,EAAE;YACX,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAC3B,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YAC/B,OAAM;SACT;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;YACpD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBACd,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;aACxC;SACJ;IACL,CAAC;IAED,KAAK;QACD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA;QACnB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;IAC3B,CAAC;CACJ"}
package/lib/Shape.js CHANGED
@@ -184,7 +184,7 @@ export class RpgShape extends TiledObjectClass {
184
184
  this.playersIn[player.id] = true;
185
185
  player.inShapes[this.name] = this;
186
186
  await player.execMethod('onInShape', [this]);
187
- await this.fixEvent?.execMethod('onDetect', [player, this], this.fixEvent);
187
+ await this.fixEvent?.execMethod('onDetectInShape', [player, this], this.fixEvent);
188
188
  await player.execMethod('onIn', [player], this);
189
189
  return true;
190
190
  }
@@ -195,7 +195,7 @@ export class RpgShape extends TiledObjectClass {
195
195
  delete this.playersIn[player.id];
196
196
  delete player.inShapes[this.name];
197
197
  await player.execMethod('onOutShape', [this]);
198
- await this.fixEvent?.execMethod('onUnDetect', [player, this], this.fixEvent);
198
+ await this.fixEvent?.execMethod('onDetectOutShape', [player, this], this.fixEvent);
199
199
  await player.execMethod('onOut', [player], this);
200
200
  return true;
201
201
  }
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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpgjs/common",
3
- "version": "4.0.5",
3
+ "version": "4.1.1",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -23,9 +23,9 @@
23
23
  "sat": "^0.9.0",
24
24
  "workerpool": "^6.4.0"
25
25
  },
26
- "gitHead": "072461871b2aacf7759b3148668328d36587c8b7",
26
+ "gitHead": "ceeb9ab141792c821ccf779a4c94495f808c4744",
27
27
  "devDependencies": {
28
- "@rpgjs/compiler": "^4.0.5",
28
+ "@rpgjs/compiler": "^4.1.1",
29
29
  "typescript": "^5.0.4"
30
30
  },
31
31
  "type": "module"
@@ -32,7 +32,7 @@ export class EventEmitter {
32
32
  else ret.push(listener(data))
33
33
  }
34
34
  }
35
- else if (this.listenersOnce[name]) {
35
+ if (this.listenersOnce[name]) {
36
36
  if (rest) ret.push(this.listenersOnce[name](...data))
37
37
  else ret.push(this.listenersOnce[name](data))
38
38
  }
@@ -44,9 +44,18 @@ export class EventEmitter {
44
44
  }))
45
45
  }
46
46
 
47
- off(name: string) {
48
- delete this.listeners[name]
49
- delete this.listenersOnce[name]
47
+ off(name: string, listener?: Function) {
48
+ if (!listener) {
49
+ delete this.listeners[name]
50
+ delete this.listenersOnce[name]
51
+ return
52
+ }
53
+ if (this.listeners[name]) {
54
+ const index = this.listeners[name].indexOf(listener)
55
+ if (index !== -1) {
56
+ this.listeners[name].splice(index, 1)
57
+ }
58
+ }
50
59
  }
51
60
 
52
61
  clear() {
package/src/Shape.ts CHANGED
@@ -221,7 +221,7 @@ export class RpgShape extends TiledObjectClass {
221
221
  this.playersIn[player.id] = true
222
222
  player.inShapes[this.name] = this
223
223
  await player.execMethod('onInShape', [this])
224
- await this.fixEvent?.execMethod('onDetect', [player, this], this.fixEvent)
224
+ await this.fixEvent?.execMethod('onDetectInShape', [player, this], this.fixEvent)
225
225
  await player.execMethod('onIn', [player], this)
226
226
  return true
227
227
  }
@@ -233,7 +233,7 @@ export class RpgShape extends TiledObjectClass {
233
233
  delete this.playersIn[player.id]
234
234
  delete player.inShapes[this.name]
235
235
  await player.execMethod('onOutShape', [this])
236
- await this.fixEvent?.execMethod('onUnDetect', [player, this], this.fixEvent)
236
+ await this.fixEvent?.execMethod('onDetectOutShape', [player, this], this.fixEvent)
237
237
  await player.execMethod('onOut', [player], this)
238
238
  return true
239
239
  }