@rpgjs/common 3.0.0-beta.6 → 3.0.0-beta.7

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/lib/Event.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  import { RpgCommonPlayer } from './Player';
2
- export default class Event extends RpgCommonPlayer {
2
+ export declare class RpgCommonEvent extends RpgCommonPlayer {
3
3
  }
package/lib/Event.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RpgCommonEvent = void 0;
3
4
  const Player_1 = require("./Player");
4
- class Event extends Player_1.RpgCommonPlayer {
5
+ class RpgCommonEvent extends Player_1.RpgCommonPlayer {
5
6
  }
6
- exports.default = Event;
7
+ exports.RpgCommonEvent = RpgCommonEvent;
7
8
  //# sourceMappingURL=Event.js.map
package/lib/Event.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Event.js","sourceRoot":"","sources":["../src/Event.ts"],"names":[],"mappings":";;AACA,qCAA0C;AAE1C,MAAqB,KAAM,SAAQ,wBAAe;CAEjD;AAFD,wBAEC"}
1
+ {"version":3,"file":"Event.js","sourceRoot":"","sources":["../src/Event.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,MAAa,cAAe,SAAQ,wBAAe;CAAG;AAAtD,wCAAsD"}
package/lib/Game.d.ts CHANGED
@@ -1,21 +1,21 @@
1
1
  import { EventEmitter } from './EventEmitter';
2
2
  import { RpgCommonPlayer } from './Player';
3
3
  import { GameWorker } from './Worker';
4
- export default class Game extends EventEmitter {
5
- private side;
4
+ export declare enum GameSide {
5
+ Server = "server",
6
+ Client = "client",
7
+ Worker = "worker"
8
+ }
9
+ export declare class RpgCommonGame extends EventEmitter {
10
+ side: GameSide;
6
11
  events: any;
7
12
  world: any;
8
- playerId: string;
9
- standalone: boolean;
10
- clientEngine: any;
11
- renderer: any;
12
- _playerClass: any;
13
- constructor(side: string);
13
+ constructor(side: GameSide);
14
14
  get isWorker(): boolean;
15
15
  start(world: any): void;
16
16
  createWorkers(options: any): GameWorker;
17
17
  addObject(_class: any, playerId?: string): any;
18
18
  addPlayer(playerClass: any, playerId?: string): any;
19
19
  addEvent(eventClass: any, eventId?: string): any;
20
- processInput(playerId: string): RpgCommonPlayer;
20
+ processInput<RpgPlayer extends RpgCommonPlayer>(playerId: string): Promise<RpgPlayer>;
21
21
  }
package/lib/Game.js CHANGED
@@ -1,12 +1,28 @@
1
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
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RpgCommonGame = exports.GameSide = void 0;
3
13
  const Utils_1 = require("./Utils");
4
14
  const EventEmitter_1 = require("./EventEmitter");
5
15
  const Player_1 = require("./Player");
6
16
  const Input_1 = require("./Input");
7
17
  const Plugin_1 = require("./Plugin");
8
18
  const Worker_1 = require("./Worker");
9
- class Game extends EventEmitter_1.EventEmitter {
19
+ var GameSide;
20
+ (function (GameSide) {
21
+ GameSide["Server"] = "server";
22
+ GameSide["Client"] = "client";
23
+ GameSide["Worker"] = "worker";
24
+ })(GameSide = exports.GameSide || (exports.GameSide = {}));
25
+ class RpgCommonGame extends EventEmitter_1.EventEmitter {
10
26
  constructor(side) {
11
27
  super();
12
28
  this.side = side;
@@ -42,35 +58,36 @@ class Game extends EventEmitter_1.EventEmitter {
42
58
  return event;
43
59
  }
44
60
  processInput(playerId) {
45
- const player = this.world.getObject(playerId);
46
- if (!player)
47
- return player;
48
- if (!player.canMove)
49
- return player;
50
- const routesMove = [];
51
- while (player.pendingMove.length > 0) {
52
- const inputData = player.pendingMove.shift();
53
- let { input, deltaTimeInt } = inputData;
54
- let moving = false;
55
- if (input == Input_1.Control.Action) {
56
- player.triggerCollisionWith(Player_1.RpgCommonPlayer.ACTIONS.ACTION);
57
- }
58
- else if (input == Player_1.Direction.Left ||
59
- input == Player_1.Direction.Right ||
60
- input == Player_1.Direction.Up ||
61
- input == Player_1.Direction.Down) {
62
- moving = true;
63
- const isMove = player.moveByDirection(+input, deltaTimeInt || 1);
64
- if (isMove) {
65
- routesMove.push(inputData);
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ const player = this.world.getObject(playerId);
63
+ if (!player)
64
+ return player;
65
+ if (!player.canMove)
66
+ return player;
67
+ const routesMove = [];
68
+ while (player.pendingMove.length > 0) {
69
+ const inputData = player.pendingMove.shift();
70
+ let { input, deltaTimeInt } = inputData;
71
+ let moving = false;
72
+ if (input == Input_1.Control.Action) {
73
+ player.triggerCollisionWith(Player_1.RpgCommonPlayer.ACTIONS.ACTION);
66
74
  }
67
- }
68
- // TODO, is Worker
69
- if (this.side == 'server')
75
+ else if (input == Player_1.Direction.Left ||
76
+ input == Player_1.Direction.Right ||
77
+ input == Player_1.Direction.Up ||
78
+ input == Player_1.Direction.Down) {
79
+ moving = true;
80
+ const isMove = yield player.moveByDirection(+input, deltaTimeInt || 1);
81
+ if (isMove) {
82
+ routesMove.push(inputData);
83
+ }
84
+ }
85
+ // TODO, is Worker
70
86
  Plugin_1.RpgPlugin.emit('Server.onInput', [player, Object.assign(Object.assign({}, inputData), { moving })], true);
71
- }
72
- return player;
87
+ }
88
+ return player;
89
+ });
73
90
  }
74
91
  }
75
- exports.default = Game;
92
+ exports.RpgCommonGame = RpgCommonGame;
76
93
  //# sourceMappingURL=Game.js.map
package/lib/Game.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Game.js","sourceRoot":"","sources":["../src/Game.ts"],"names":[],"mappings":";;AAAA,mCAA8C;AAC9C,iDAA6C;AAC7C,qCAAqD;AACrD,mCAAiC;AACjC,qCAAoC;AACpC,qCAAqC;AAErC,MAAqB,IAAK,SAAQ,2BAAY;IAY1C,YAAoB,IAAY;QAC5B,KAAK,EAAE,CAAA;QADS,SAAI,GAAJ,IAAI,CAAQ;QAE5B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA,CAAC,+BAA+B;IACpD,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,KAAK;QACP,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAED,aAAa,CAAC,OAAY;QACtB,OAAO,IAAI,mBAAU,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAED,SAAS,CAAC,MAAM,EAAE,QAAiB;QAC/B,IAAI,KAAK,CAAA;QACT,IAAI,CAAC,QAAQ;YAAE,QAAQ,GAAG,mBAAW,EAAE,CAAA;QACvC,IAAI,eAAO,CAAC,MAAM,CAAC,EAAE;YACjB,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;SACrC;aACI;YACD,KAAK,GAAG,MAAM,CAAA;SACjB;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,SAAS,CAAC,WAAW,EAAE,QAAiB;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QACpD,OAAO,MAAM,CAAA;IACjB,CAAC;IAED,QAAQ,CAAC,UAAU,EAAE,OAAgB;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACjD,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,YAAY,CAAC,QAAgB;QACzB,MAAM,MAAM,GAAoB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAE9D,IAAI,CAAC,MAAM;YAAE,OAAO,MAAM,CAAA;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,MAAM,CAAA;QAElC,MAAM,UAAU,GAAQ,EAAE,CAAA;QAE1B,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAClC,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;YAC5C,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,SAAgB,CAAA;YAC9C,IAAI,MAAM,GAAG,KAAK,CAAA;YAElB,IAAI,KAAK,IAAI,eAAO,CAAC,MAAM,EAAE;gBACzB,MAAM,CAAC,oBAAoB,CAAC,wBAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;aAC9D;iBACI,IACD,KAAK,IAAI,kBAAS,CAAC,IAAI;gBACvB,KAAK,IAAI,kBAAS,CAAC,KAAK;gBACxB,KAAK,IAAI,kBAAS,CAAC,EAAE;gBACrB,KAAK,IAAI,kBAAS,CAAC,IAAI,EACzB;gBACE,MAAM,GAAG,IAAI,CAAA;gBACb,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC,CAAA;gBAChE,IAAI,MAAM,EAAE;oBACR,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;iBAC7B;aACJ;YACD,kBAAkB;YAClB,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ;gBAAE,kBAAS,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,MAAM,kCAC5D,SAAS,KACZ,MAAM,IACR,EAAE,IAAI,CAAC,CAAA;SAEZ;QACD,OAAO,MAAM,CAAA;IACjB,CAAC;CACJ;AAxFD,uBAwFC"}
1
+ {"version":3,"file":"Game.js","sourceRoot":"","sources":["../src/Game.ts"],"names":[],"mappings":"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"}
package/lib/Hit.d.ts CHANGED
@@ -3,9 +3,14 @@ export interface HitObject {
3
3
  ellipse?: boolean;
4
4
  gid?: number;
5
5
  height: number;
6
- polygon?: any[];
6
+ polygon?: {
7
+ x: number;
8
+ y: number;
9
+ }[];
7
10
  polyline?: any[];
8
- properties?: object;
11
+ properties?: {
12
+ [key: string]: any;
13
+ };
9
14
  rotation?: number;
10
15
  visible?: boolean;
11
16
  width: number;
@@ -20,9 +25,11 @@ declare class HitClass {
20
25
  x: number;
21
26
  y: number;
22
27
  }): {
23
- properties: object | undefined;
24
- hitbox: any;
25
- type: any;
28
+ properties: {
29
+ [key: string]: any;
30
+ } | undefined;
31
+ hitbox: SAT;
32
+ type: string;
26
33
  name: string | undefined;
27
34
  };
28
35
  testPolyCollision(type: string, hit1: SAT, hit2: SAT): boolean;
package/lib/Hit.js CHANGED
@@ -5,6 +5,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Hit = void 0;
7
7
  const sat_1 = __importDefault(require("sat"));
8
+ const Utils_1 = require("./Utils");
9
+ var HitType;
10
+ (function (HitType) {
11
+ HitType["Box"] = "box";
12
+ HitType["Circle"] = "circle";
13
+ HitType["Polygon"] = "polygon";
14
+ })(HitType || (HitType = {}));
8
15
  class HitClass {
9
16
  createObjectHitbox(x, y, z, w, h) {
10
17
  return new sat_1.default.Box(new sat_1.default.Vector(x, y - z), w, h);
@@ -16,15 +23,16 @@ class HitClass {
16
23
  const x = obj.x + offset.x;
17
24
  const y = obj.y + offset.y;
18
25
  if (obj.ellipse) {
19
- type = 'circle';
20
- hitbox = new sat_1.default.Circle(new sat_1.default.Vector(x, y), obj.width);
26
+ type = HitType.Circle;
27
+ const radius = obj.width / 2;
28
+ hitbox = new sat_1.default.Circle(new sat_1.default.Vector(x + radius, y + radius), radius);
21
29
  }
22
30
  else if (obj.polygon) {
23
- type = 'polygon';
31
+ type = HitType.Polygon;
24
32
  hitbox = new sat_1.default.Polygon(new sat_1.default.Vector(x, y), obj.polygon.map(pos => new sat_1.default.Vector(+pos.x, +pos.y)));
25
33
  }
26
34
  else if (!obj.polygon && obj.width > 0 && obj.height > 0) {
27
- type = 'box';
35
+ type = HitType.Box;
28
36
  hitbox = new sat_1.default.Box(new sat_1.default.Vector(x, y), obj.width, obj.height);
29
37
  }
30
38
  else {
@@ -40,15 +48,19 @@ class HitClass {
40
48
  }
41
49
  testPolyCollision(type, hit1, hit2) {
42
50
  let collided = false;
51
+ if (Utils_1.isInstanceOf(hit1, sat_1.default.Box))
52
+ hit1 = hit1.toPolygon();
53
+ if (Utils_1.isInstanceOf(hit2, sat_1.default.Box))
54
+ hit2 = hit2.toPolygon();
43
55
  switch (type) {
44
- case 'box':
45
- collided = sat_1.default.testPolygonPolygon(hit1.toPolygon(), hit2.toPolygon());
56
+ case HitType.Box:
57
+ collided = sat_1.default.testPolygonPolygon(hit1, hit2);
46
58
  break;
47
- case 'circle':
48
- collided = sat_1.default.testPolygonCircle(hit1.toPolygon(), hit2);
59
+ case HitType.Circle:
60
+ collided = sat_1.default.testPolygonCircle(hit1, hit2);
49
61
  break;
50
- case 'polygon':
51
- collided = sat_1.default.testPolygonPolygon(hit1, hit2.toPolygon());
62
+ case HitType.Polygon:
63
+ collided = sat_1.default.testPolygonPolygon(hit1, hit2);
52
64
  break;
53
65
  }
54
66
  return collided;
package/lib/Hit.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Hit.js","sourceRoot":"","sources":["../src/Hit.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAqB;AAkBrB,MAAM,QAAQ;IAEV,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QACpE,OAAO,IAAI,aAAG,CAAC,GAAG,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACtD,CAAC;IAED,SAAS,CAAC,GAAc,EAAE,MAAiC;QACvD,IAAI,MAAM,EAAE,IAAI,CAAA;QAChB,IAAI,CAAC,MAAM;YAAE,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QACpC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC1B,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC1B,IAAI,GAAG,CAAC,OAAO,EAAE;YACb,IAAI,GAAG,QAAQ,CAAA;YACf,MAAM,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;SAC3D;aACI,IAAI,GAAG,CAAC,OAAO,EAAE;YAClB,IAAI,GAAG,SAAS,CAAA;YAChB,MAAM,GAAG,IAAI,aAAG,CAAC,OAAO,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SACzG;aACI,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACtD,IAAI,GAAG,KAAK,CAAA;YACZ,MAAM,GAAG,IAAI,aAAG,CAAC,GAAG,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;SACpE;aACI;YACD,MAAM,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YAC7B,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;SAClB;QACD,OAAO;YACH,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM;YACN,IAAI;YACJ,IAAI,EAAE,GAAG,CAAC,IAAI;SACjB,CAAA;IACL,CAAC;IAED,iBAAiB,CAAC,IAAY,EAAE,IAAS,EAAE,IAAS;QAChD,IAAI,QAAQ,GAAG,KAAK,CAAA;QACpB,QAAQ,IAAI,EAAE;YACV,KAAK,KAAK;gBACN,QAAQ,GAAG,aAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;gBACzE,MAAK;YACL,KAAK,QAAQ;gBACT,QAAQ,GAAG,aAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,CAAA;gBAC5D,MAAK;YACL,KAAK,SAAS;gBACV,QAAQ,GAAG,aAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;gBAC7D,MAAK;SACR;QACD,OAAO,QAAQ,CAAA;IACnB,CAAC;CACJ;AAGY,QAAA,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAA"}
1
+ {"version":3,"file":"Hit.js","sourceRoot":"","sources":["../src/Hit.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAqB;AACrB,mCAAsC;AAoBtC,IAAK,OAIJ;AAJD,WAAK,OAAO;IACR,sBAAW,CAAA;IACX,4BAAiB,CAAA;IACjB,8BAAmB,CAAA;AACvB,CAAC,EAJI,OAAO,KAAP,OAAO,QAIX;AAED,MAAM,QAAQ;IAEV,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QACpE,OAAO,IAAI,aAAG,CAAC,GAAG,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACtD,CAAC;IAED,SAAS,CAAC,GAAc,EAAE,MAAiC;QAQvD,IAAI,MAAM,EAAE,IAAI,CAAA;QAChB,IAAI,CAAC,MAAM;YAAE,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QACpC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC1B,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QAC1B,IAAI,GAAG,CAAC,OAAO,EAAE;YACb,IAAI,GAAG,OAAO,CAAC,MAAM,CAAA;YACrB,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAA;YAC5B,MAAM,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,MAAM,CAAC,CAAA;SAC1E;aACI,IAAI,GAAG,CAAC,OAAO,EAAE;YAClB,IAAI,GAAG,OAAO,CAAC,OAAO,CAAA;YACtB,MAAM,GAAG,IAAI,aAAG,CAAC,OAAO,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SACzG;aACI,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACtD,IAAI,GAAG,OAAO,CAAC,GAAG,CAAA;YAClB,MAAM,GAAG,IAAI,aAAG,CAAC,GAAG,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;SACpE;aACI;YACD,MAAM,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YAC7B,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;SAClB;QACD,OAAO;YACH,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM;YACN,IAAI;YACJ,IAAI,EAAE,GAAG,CAAC,IAAI;SACjB,CAAA;IACL,CAAC;IAED,iBAAiB,CAAC,IAAY,EAAE,IAAS,EAAE,IAAS;QAChD,IAAI,QAAQ,GAAG,KAAK,CAAA;QACpB,IAAI,oBAAY,CAAC,IAAI,EAAE,aAAG,CAAC,GAAG,CAAC;YAAE,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;QACxD,IAAI,oBAAY,CAAC,IAAI,EAAE,aAAG,CAAC,GAAG,CAAC;YAAE,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;QACxD,QAAQ,IAAI,EAAE;YACV,KAAK,OAAO,CAAC,GAAG;gBACZ,QAAQ,GAAG,aAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACjD,MAAK;YACL,KAAK,OAAO,CAAC,MAAM;gBACf,QAAQ,GAAG,aAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBAChD,MAAK;YACL,KAAK,OAAO,CAAC,OAAO;gBAChB,QAAQ,GAAG,aAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACjD,MAAK;SACR;QACD,OAAO,QAAQ,CAAA;IACnB,CAAC;CACJ;AAEY,QAAA,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAA"}
package/lib/Map.d.ts CHANGED
@@ -65,7 +65,14 @@ export default class RpgCommonMap {
65
65
  * */
66
66
  layers: LayerInfo[];
67
67
  private shapes;
68
+ /**
69
+ * Memorize the maps so you don't have to make a new request or open a file each time you load a map
70
+ */
68
71
  static get buffer(): Map<any, any>;
72
+ /**
73
+ * In RPG mode, to avoid confusion with buffer, we have a new variable to memorize the maps
74
+ */
75
+ static get bufferClient(): Map<any, any>;
69
76
  load(data: any): void;
70
77
  /**
71
78
  * @title Width of the map in pixels
package/lib/Map.js CHANGED
@@ -5,6 +5,7 @@ const Shape_1 = require("./Shape");
5
5
  const Hit_1 = require("./Hit");
6
6
  const VirtualGrid_1 = require("./VirtualGrid");
7
7
  const buffer = new Map();
8
+ const bufferClient = new Map();
8
9
  class RpgCommonMap {
9
10
  constructor() {
10
11
  this.width = 0;
@@ -35,9 +36,18 @@ class RpgCommonMap {
35
36
  this.layers = [];
36
37
  this.shapes = [];
37
38
  }
39
+ /**
40
+ * Memorize the maps so you don't have to make a new request or open a file each time you load a map
41
+ */
38
42
  static get buffer() {
39
43
  return buffer;
40
44
  }
45
+ /**
46
+ * In RPG mode, to avoid confusion with buffer, we have a new variable to memorize the maps
47
+ */
48
+ static get bufferClient() {
49
+ return bufferClient;
50
+ }
41
51
  load(data) {
42
52
  this.data = data;
43
53
  this.width = data.width;
package/lib/Map.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Map.js","sourceRoot":"","sources":["../src/Map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Map.js","sourceRoot":"","sources":["../src/Map.ts"],"names":[],"mappings":";;AACA,mCAAqE;AACrE,mCAAkC;AAClC,+BAA2B;AAC3B,+CAA2C;AAE3C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAE,CAAA;AACxB,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;AAiC9B,MAAqB,YAAY;IAAjC;QAYI,UAAK,GAAW,CAAC,CAAA;QACjB,WAAM,GAAW,CAAC,CAAA;QAElB;;;;;;aAMK;QACL,cAAS,GAAW,CAAC,CAAA;QAEpB;;;;;;YAMI;QACL,eAAU,GAAW,CAAC,CAAA;QAEtB;;;;;;aAMK;QACL,WAAM,GAAgB,EAAE,CAAA;QAChB,WAAM,GAAe,EAAE,CAAA;IAiWnC,CAAC;IA/VG;;OAEG;IACH,MAAM,KAAK,MAAM;QACb,OAAO,MAAM,CAAA;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,KAAK,YAAY;QACnB,OAAO,YAAY,CAAA;IACvB,CAAC;IAED,IAAI,CAAC,IAAI;QACL,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;QAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,yBAAW,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACjF,IAAI,CAAC,cAAc,EAAE,CAAA;IACzB,CAAC;IAED;;;;;;SAMK;IACL,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAA;IACtC,CAAC;IAED;;;;;;SAMK;IACL,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IACxC,CAAC;IAED;;;;;;SAMK;IACL,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAED,cAAc;QACV,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,KAAK,CAAC,IAAI,IAAI,QAAQ;gBAAE,SAAQ;YACpC,KAAK,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE;gBAC3B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;aACxB;SACJ;IACL,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;IACxD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,WAAW,CAAC,GAAc;QACtB,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,mBAAW,EAAE,CAAW,CAAA;QAChD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,CAAA;QACrC,MAAM,KAAK,GAAG,IAAI,gBAAQ,CAAC,GAAG,CAAC,CAAA;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACvB,4BAA4B;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAC,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CAAC,IAAY;QACpB,uCAAuC;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;IACjE,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,kBAAkB,CAAC,MAA+B;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAClD,IAAI,UAAU,CAAC,MAAM,EAAE;YACnB,MAAM,KAAK,GAAG,UAAU,CAAC,cAAM,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,GAAC,CAAC,CAAC,CAAC,CAAA;YACxD,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAA;SACjG;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAED,OAAO,CAAC,CAAS,EAAE,CAAS,EAAE,WAA+C,EAAE,QAAa;QAOxF,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACzC,IAAI,QAAQ,CAAA;QACZ,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,gBAAQ,CAAC,WAAW,CAAC,EAAE;YACvB,QAAQ,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW,CAAA;SAClD;aACI;YACD,QAAQ,GAAG,WAAW,CAAA;SACzB;QACD,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,SAAQ;YAC9B,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAA;YAClC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;SACnD;QACD,OAAO;YACH,CAAC;YACD,CAAC;YACD,KAAK,EAAE,WAAW;SACrB,CAAA;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,YAAY,CAAC,CAAS,EAAE,CAAS,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAA;IAC9F,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,cAAc,CAAC,SAAiB,EAAE,UAA4B,CAAC,CAAC,EAAE,CAAC,CAAC;QAChE,MAAM,KAAK,GAAU,EAAE,CAAA;QACvB,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,KAAK,CAAC,IAAI,IAAI,MAAM,EAAE;gBACtB,SAAQ;aACX;YACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACrC,IAAI,CAAC,MAAM,EAAE;gBACT,SAAQ;aACX;YACD,IAAI,CAAC,MAAM,CAAC,UAAU;gBAAE,MAAM,CAAC,UAAU,GAAG,EAAE,CAAA;YAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACxD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;YACjC,IAAI,CAAC,EAAE,aAAa,CAAA;YACpB,IAAI,MAAM,KAAK,SAAS,EAAE;gBACtB,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;aACjD;iBACI,IAAI,KAAK,KAAK,SAAS,EAAE;gBAC1B,CAAC,GAAG,KAAK,CAAA;aACZ;YACD,IAAI,CAAC,KAAK,SAAS,EAAE;gBACjB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAA;gBACjC,aAAa,GAAG,oBAAY,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;aAC1E;YACD,IAAI,aAAa,KAAK,SAAS,EAAE;gBAC7B,IAAI,aAAa;oBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;aACxC;iBACI;gBACD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;aACrB;SACJ;QACD,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAC,CAAC,CAAC,CAAA;QACzC,IAAI,CAAC,WAAW,EAAE;YACd,OAAO;gBACH,KAAK;gBACL,YAAY,EAAE,IAAI;gBAClB,SAAS,EAAE,KAAK;gBAChB,YAAY,EAAE,EAAE;gBAChB,SAAS;aACZ,CAAA;SACJ;QACD,MAAM,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,SAAS,CAAA;QACrD,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,CAAA;QAChD,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,CAAA;QAChD,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,CAAA;QAC7C,OAAO;YACH,KAAK;YACL,YAAY;YACZ,SAAS;YACT,YAAY;YACZ,WAAW;YACX,SAAS;SACZ,CAAA;IACL,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,qBAAqB,CAAC,CAAS,EAAE,CAAS;QAItC,OAAO;YACH,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS;YAClD,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU;SACvD,CAAA;IACL,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,iBAAiB,CAAC,CAAS,EAAE,CAAS,EAAE,IAAsB,CAAC,CAAC,EAAE,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACjD,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,EAAE,CAAS,EAAE,CAAS,EAAE,IAAsB,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChD,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE;gBAClC,MAAM,GAAG,GAAG,SAAG,CAAC,SAAS,CAAC,MAAM,EAAE;oBAC9B,CAAC,EAAE,OAAO,CAAC,CAAC;oBACZ,CAAC,EAAE,OAAO,CAAC,CAAC;iBACf,CAAC,CAAA;gBACF,MAAM,QAAQ,GAAG,SAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;gBACpE,IAAI,QAAQ,EAAE;oBACV,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;iBAC3B;aACJ;SACJ;QACD,OAAO,IAAI,CAAA;IACf,CAAC;CAEJ;AA1YD,+BA0YC"}
package/lib/Player.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { RpgShape } from './Shape';
2
2
  import SAT from 'sat';
3
- import Map, { TileInfo } from './Map';
3
+ import { TileInfo } from './Map';
4
+ import { RpgCommonGame } from '.';
4
5
  export declare type Position = {
5
6
  x: number;
6
7
  y: number;
@@ -16,6 +17,12 @@ export declare enum Direction {
16
17
  DownLeft = 3.5,
17
18
  UpLeft = 2.5
18
19
  }
20
+ export declare const LiteralDirection: {
21
+ 1: string;
22
+ 2: string;
23
+ 3: string;
24
+ 4: string;
25
+ };
19
26
  export declare enum PlayerType {
20
27
  Player = "player",
21
28
  Event = "event"
@@ -33,10 +40,10 @@ export declare class RpgCommonPlayer {
33
40
  direction: number;
34
41
  private collisionWith;
35
42
  private _collisionWithTiles;
36
- data: any;
37
43
  hitbox: SAT.Box;
38
44
  pendingMove: {
39
45
  input: string;
46
+ frame: number;
40
47
  }[];
41
48
  /**
42
49
  * Display/Hide the GUI attached to this sprite
@@ -57,7 +64,7 @@ export declare class RpgCommonPlayer {
57
64
  RUN: number;
58
65
  ACTION: number;
59
66
  };
60
- constructor(gameEngine: any, playerId: string);
67
+ constructor(gameEngine: RpgCommonGame, playerId: string);
61
68
  get id(): string;
62
69
  set id(str: string);
63
70
  updateInVirtualGrid(): void;
@@ -75,7 +82,6 @@ export declare class RpgCommonPlayer {
75
82
  set posX(val: any);
76
83
  set posY(val: any);
77
84
  set posZ(val: any);
78
- get mapInstance(): Map;
79
85
  /**
80
86
  *
81
87
  * Recovers all the colliding tiles of the current player
@@ -158,16 +164,6 @@ export declare class RpgCommonPlayer {
158
164
  get wHitbox(): any;
159
165
  get hHitbox(): any;
160
166
  private directionToAngle;
161
- defineNextPosition(direction: number, deltaTimeInt: number): Position;
162
- setPosition({ x, y, tileX, tileY }: {
163
- x: any;
164
- y: any;
165
- tileX: any;
166
- tileY: any;
167
- }, move?: boolean): void;
168
- triggerCollisionWith(type?: number): void;
169
- zCollision(other: any): boolean;
170
- moveByDirection(direction: Direction, deltaTimeInt: number): boolean;
171
167
  /**
172
168
  * Retrieves a tile and checks if the player has a collision
173
169
  *
@@ -211,7 +207,7 @@ export declare class RpgCommonPlayer {
211
207
  * @memberof RpgSpriteLogic
212
208
  */
213
209
  getTile(x: number, y: number, z?: number, hitbox?: SAT.Box): TileInfo;
214
- isCollided(nextPosition: Position): boolean;
210
+ isCollided(nextPosition: Position): Promise<boolean>;
215
211
  /**
216
212
  * Attach a shape to the player (and allow interaction with it)
217
213
  *
@@ -253,8 +249,6 @@ export declare class RpgCommonPlayer {
253
249
  * @memberof RpgSpriteLogic
254
250
  */
255
251
  getShapes(): RpgShape[];
256
- collisionWithShape(shape: RpgShape, player: RpgCommonPlayer, nextPosition?: Position): boolean;
257
- move(nextPosition: Position, testCollision?: boolean): boolean;
258
252
  /**
259
253
  * Retrieves all shapes where the player is located
260
254
  *
@@ -305,12 +299,6 @@ export declare class RpgCommonPlayer {
305
299
  * This is the ratio between the height or width of the tile and the speed of the player.
306
300
  */
307
301
  get nbPixelInTile(): any;
308
- getSizeMaxShape(x?: number, y?: number): {
309
- minX: number;
310
- minY: number;
311
- maxX: number;
312
- maxY: number;
313
- };
314
302
  }
315
303
  export interface RpgCommonPlayer {
316
304
  readonly type: string;
package/lib/Player.js CHANGED
@@ -1,15 +1,25 @@
1
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
+ };
2
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
13
  };
5
14
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.RpgCommonPlayer = exports.PlayerType = exports.Direction = void 0;
15
+ exports.RpgCommonPlayer = exports.PlayerType = exports.LiteralDirection = exports.Direction = void 0;
7
16
  const Utils_1 = require("./Utils");
8
17
  const Hit_1 = require("./Hit");
9
18
  const Shape_1 = require("./Shape");
10
19
  const sat_1 = __importDefault(require("sat"));
11
20
  const Map_1 = __importDefault(require("./Map"));
12
21
  const Plugin_1 = require("./Plugin");
22
+ const Game_1 = require("./Game");
13
23
  const ACTIONS = { IDLE: 0, RUN: 1, ACTION: 2 };
14
24
  var Direction;
15
25
  (function (Direction) {
@@ -22,6 +32,12 @@ var Direction;
22
32
  Direction[Direction["DownLeft"] = 3.5] = "DownLeft";
23
33
  Direction[Direction["UpLeft"] = 2.5] = "UpLeft";
24
34
  })(Direction = exports.Direction || (exports.Direction = {}));
35
+ exports.LiteralDirection = {
36
+ 1: 'up',
37
+ 2: 'right',
38
+ 3: 'down',
39
+ 4: 'left'
40
+ };
25
41
  var PlayerType;
26
42
  (function (PlayerType) {
27
43
  PlayerType["Player"] = "player";
@@ -39,6 +55,7 @@ class RpgCommonPlayer {
39
55
  this.direction = 3;
40
56
  this.collisionWith = [];
41
57
  this._collisionWithTiles = [];
58
+ /** @internal */
42
59
  this.data = {};
43
60
  this.pendingMove = [];
44
61
  this.inShapes = {};
@@ -99,7 +116,11 @@ class RpgCommonPlayer {
99
116
  set posZ(val) {
100
117
  this.position.z = val;
101
118
  }
119
+ /** @internal */
102
120
  get mapInstance() {
121
+ if (this.gameEngine.side == Game_1.GameSide.Client) {
122
+ return Map_1.default.bufferClient.get(this.map);
123
+ }
103
124
  return Map_1.default.buffer.get(this.map);
104
125
  }
105
126
  /**
@@ -207,6 +228,7 @@ class RpgCommonPlayer {
207
228
  const angle = (direction < 2 ? +direction + 2 : direction - 2) * 90;
208
229
  return Utils_1.toRadians(angle);
209
230
  }
231
+ /** @internal */
210
232
  defineNextPosition(direction, deltaTimeInt) {
211
233
  const angle = this.directionToAngle(direction);
212
234
  const computePosition = (prop) => {
@@ -219,6 +241,7 @@ class RpgCommonPlayer {
219
241
  z: this.position.z
220
242
  };
221
243
  }
244
+ /** @internal */
222
245
  setPosition({ x, y, tileX, tileY }, move = true) {
223
246
  const { tileWidth, tileHeight } = this.mapInstance;
224
247
  if (x !== undefined)
@@ -230,6 +253,7 @@ class RpgCommonPlayer {
230
253
  if (tileY !== undefined)
231
254
  this.posY = tileY * tileHeight;
232
255
  }
256
+ /** @internal */
233
257
  triggerCollisionWith(type) {
234
258
  for (let collisionWith of this.collisionWith) {
235
259
  const { properties } = collisionWith;
@@ -245,11 +269,13 @@ class RpgCommonPlayer {
245
269
  }
246
270
  }
247
271
  }
272
+ /** @internal */
248
273
  zCollision(other) {
249
274
  const z = this.position.z;
250
275
  const otherZ = other.position.z;
251
276
  return Utils_1.intersection([z, z + this.height], [otherZ, otherZ + other.height]);
252
277
  }
278
+ /** @internal */
253
279
  moveByDirection(direction, deltaTimeInt) {
254
280
  const nextPosition = this.defineNextPosition(direction, deltaTimeInt);
255
281
  return this.move(nextPosition);
@@ -301,84 +327,91 @@ class RpgCommonPlayer {
301
327
  return map.getTile(hitbox || this.hitbox, x, y, [z, this.height]);
302
328
  }
303
329
  isCollided(nextPosition) {
304
- this.collisionWith = [];
305
- this._collisionWithTiles = [];
306
- const map = this.mapInstance;
307
- const hitbox = Hit_1.Hit.createObjectHitbox(nextPosition.x, nextPosition.y, 0, this.hitbox.w, this.hitbox.h);
308
- if (!map) {
309
- return true;
310
- }
311
- if (nextPosition.x < 0) {
312
- this.posX = 0;
313
- return true;
314
- }
315
- if (nextPosition.y < 0) {
316
- this.posY = 0;
317
- return true;
318
- }
319
- if (nextPosition.x > map.widthPx - this.hitbox.w) {
320
- this.posX = map.widthPx - this.hitbox.w;
321
- return true;
322
- }
323
- if (nextPosition.y > map.heightPx - this.hitbox.h) {
324
- this.posY = map.heightPx - this.hitbox.h;
325
- return true;
326
- }
327
- const tileCollision = (x, y) => {
328
- const tile = this.getTile(x, y, nextPosition.z, hitbox);
329
- if (tile.hasCollision) {
330
- this._collisionWithTiles.push(tile);
330
+ return __awaiter(this, void 0, void 0, function* () {
331
+ this.collisionWith = [];
332
+ this._collisionWithTiles = [];
333
+ const map = this.mapInstance;
334
+ const prevMapId = this.map;
335
+ const hitbox = Hit_1.Hit.createObjectHitbox(nextPosition.x, nextPosition.y, 0, this.hitbox.w, this.hitbox.h);
336
+ if (!map) {
331
337
  return true;
332
338
  }
333
- return false;
334
- };
335
- if (tileCollision(nextPosition.x, nextPosition.y) ||
336
- tileCollision(nextPosition.x + this.hitbox.w, nextPosition.y) ||
337
- tileCollision(nextPosition.x, nextPosition.y + this.hitbox.h) ||
338
- tileCollision(nextPosition.x + this.hitbox.w, nextPosition.y + this.hitbox.h)) {
339
- return true;
340
- }
341
- const events = this.gameEngine.world.getObjectsOfGroup(this.map, this);
342
- const objects = map.grid.getObjectsByBox(this.getSizeMaxShape(nextPosition.x, nextPosition.y));
343
- for (let objectId of objects) {
344
- // client side: read "object" propertie
345
- if (!events[objectId])
346
- continue;
347
- const event = events[objectId]['object'] || events[objectId];
348
- if (event.id == this.id)
349
- continue;
350
- if (!this.zCollision(event))
351
- continue;
352
- const collided = Hit_1.Hit.testPolyCollision('box', hitbox, event.hitbox);
353
- for (let shape of this.shapes) {
354
- this.collisionWithShape(shape, event);
339
+ if (nextPosition.x < 0) {
340
+ this.posX = 0;
341
+ return true;
355
342
  }
356
- for (let shape of event.shapes) {
357
- event.collisionWithShape(shape, this);
343
+ if (nextPosition.y < 0) {
344
+ this.posY = 0;
345
+ return true;
358
346
  }
359
- if (collided) {
360
- this.collisionWith.push(event);
361
- this.triggerCollisionWith();
362
- let throughOtherPlayer = false;
363
- if (event.type == PlayerType.Player && this.type == PlayerType.Player) {
364
- if (!(event.throughOtherPlayer || this.throughOtherPlayer)) {
365
- return true;
366
- }
367
- else {
368
- throughOtherPlayer = true;
347
+ if (nextPosition.x > map.widthPx - this.hitbox.w) {
348
+ this.posX = map.widthPx - this.hitbox.w;
349
+ return true;
350
+ }
351
+ if (nextPosition.y > map.heightPx - this.hitbox.h) {
352
+ this.posY = map.heightPx - this.hitbox.h;
353
+ return true;
354
+ }
355
+ const tileCollision = (x, y) => {
356
+ const tile = this.getTile(x, y, nextPosition.z, hitbox);
357
+ if (tile.hasCollision) {
358
+ this._collisionWithTiles.push(tile);
359
+ return true;
360
+ }
361
+ return false;
362
+ };
363
+ if (tileCollision(nextPosition.x, nextPosition.y) ||
364
+ tileCollision(nextPosition.x + this.hitbox.w, nextPosition.y) ||
365
+ tileCollision(nextPosition.x, nextPosition.y + this.hitbox.h) ||
366
+ tileCollision(nextPosition.x + this.hitbox.w, nextPosition.y + this.hitbox.h)) {
367
+ return true;
368
+ }
369
+ const events = this.gameEngine.world.getObjectsOfGroup(this.map, this);
370
+ const objects = map.grid.getObjectsByBox(this.getSizeMaxShape(nextPosition.x, nextPosition.y));
371
+ for (let objectId of objects) {
372
+ // client side: read "object" propertie
373
+ if (!events[objectId])
374
+ continue;
375
+ const event = events[objectId]['object'] || events[objectId];
376
+ if (event.id == this.id)
377
+ continue;
378
+ if (!this.zCollision(event))
379
+ continue;
380
+ const collided = Hit_1.Hit.testPolyCollision('box', hitbox, event.hitbox);
381
+ for (let shape of this.shapes) {
382
+ yield this.collisionWithShape(shape, event);
383
+ }
384
+ for (let shape of event.shapes) {
385
+ yield event.collisionWithShape(shape, this);
386
+ }
387
+ if (collided) {
388
+ this.collisionWith.push(event);
389
+ this.triggerCollisionWith();
390
+ let throughOtherPlayer = false;
391
+ if (event.type == PlayerType.Player && this.type == PlayerType.Player) {
392
+ if (!(event.throughOtherPlayer || this.throughOtherPlayer)) {
393
+ return true;
394
+ }
395
+ else {
396
+ throughOtherPlayer = true;
397
+ }
369
398
  }
399
+ if (!throughOtherPlayer && (!(event.through || this.through)))
400
+ return true;
370
401
  }
371
- if (!throughOtherPlayer && (!(event.through || this.through)))
402
+ }
403
+ const shapes = map.getShapes();
404
+ for (let shape of shapes) {
405
+ const bool = yield this.collisionWithShape(shape, this, nextPosition);
406
+ if (bool)
372
407
  return true;
373
408
  }
374
- }
375
- const shapes = map.getShapes();
376
- for (let shape of shapes) {
377
- const bool = this.collisionWithShape(shape, this, nextPosition);
378
- if (bool)
409
+ // if there is a change of map after a move, the moves are not changed
410
+ if (prevMapId != this.map) {
379
411
  return true;
380
- }
381
- return false;
412
+ }
413
+ return false;
414
+ });
382
415
  }
383
416
  /**
384
417
  * Attach a shape to the player (and allow interaction with it)
@@ -422,63 +455,69 @@ class RpgCommonPlayer {
422
455
  getShapes() {
423
456
  return this.shapes;
424
457
  }
458
+ /** @internal */
425
459
  collisionWithShape(shape, player, nextPosition) {
426
- const { collision, z } = shape.properties;
427
- if (shape.isShapePosition())
428
- return false;
429
- if (z !== undefined && !this.zCollision({
430
- position: { z },
431
- height: this.mapInstance.tileHeight
432
- })) {
460
+ return __awaiter(this, void 0, void 0, function* () {
461
+ const { collision, z } = shape.properties;
462
+ if (shape.isShapePosition())
463
+ return false;
464
+ if (z !== undefined && !this.zCollision({
465
+ position: { z },
466
+ height: this.mapInstance.tileHeight
467
+ })) {
468
+ return false;
469
+ }
470
+ let { position, hitbox } = player;
471
+ if (nextPosition)
472
+ position = nextPosition;
473
+ const hitboxObj = Hit_1.Hit.createObjectHitbox(position.x, position.y, position.z, hitbox.w, hitbox.h);
474
+ let collided = Hit_1.Hit.testPolyCollision(shape.type, hitboxObj, shape.hitbox);
475
+ if (collided) {
476
+ this.collisionWith.push(shape);
477
+ // TODO: in shape after map load
478
+ if (!collision)
479
+ yield shape.in(this);
480
+ this.triggerCollisionWith();
481
+ if (collision)
482
+ return true;
483
+ }
484
+ else {
485
+ yield shape.out(this);
486
+ }
433
487
  return false;
434
- }
435
- let { position, hitbox } = player;
436
- if (nextPosition)
437
- position = nextPosition;
438
- const hitboxObj = Hit_1.Hit.createObjectHitbox(position.x, position.y, position.z, hitbox.w, hitbox.h);
439
- let collided = Hit_1.Hit.testPolyCollision(shape.type, hitboxObj, shape.hitbox);
440
- if (collided) {
441
- this.collisionWith.push(shape);
442
- // TODO: in shape after map load
443
- if (!collision)
444
- shape.in(this);
445
- this.triggerCollisionWith();
446
- if (collision)
447
- return true;
448
- }
449
- else {
450
- shape.out(this);
451
- }
452
- return false;
488
+ });
453
489
  }
490
+ /** @internal */
454
491
  move(nextPosition, testCollision = true) {
455
- {
456
- const { x, y } = this.position;
457
- const { x: nx, y: ny } = nextPosition;
458
- const diff = Math.abs(x - nx) > Math.abs(y - ny);
459
- if (diff) {
460
- if (nx > x) {
461
- this.changeDirection(Direction.Right);
492
+ return __awaiter(this, void 0, void 0, function* () {
493
+ {
494
+ const { x, y } = this.position;
495
+ const { x: nx, y: ny } = nextPosition;
496
+ const diff = Math.abs(x - nx) > Math.abs(y - ny);
497
+ if (diff) {
498
+ if (nx > x) {
499
+ this.changeDirection(Direction.Right);
500
+ }
501
+ else {
502
+ this.changeDirection(Direction.Left);
503
+ }
462
504
  }
463
505
  else {
464
- this.changeDirection(Direction.Left);
506
+ if (ny > y) {
507
+ this.changeDirection(Direction.Down);
508
+ }
509
+ else {
510
+ this.changeDirection(Direction.Up);
511
+ }
465
512
  }
466
513
  }
467
- else {
468
- if (ny > y) {
469
- this.changeDirection(Direction.Down);
470
- }
471
- else {
472
- this.changeDirection(Direction.Up);
473
- }
514
+ const collided = testCollision && !(yield this.isCollided(nextPosition));
515
+ if (collided) {
516
+ this.position = nextPosition;
517
+ yield Plugin_1.RpgPlugin.emit(Plugin_1.HookServer.PlayerMove, this);
474
518
  }
475
- }
476
- const collided = testCollision && !this.isCollided(nextPosition);
477
- if (collided) {
478
- this.position = nextPosition;
479
- Plugin_1.RpgPlugin.emit(Plugin_1.HookServer.PlayerMove, this);
480
- }
481
- return true;
519
+ return true;
520
+ });
482
521
  }
483
522
  /**
484
523
  * Retrieves all shapes where the player is located
@@ -544,14 +583,15 @@ class RpgCommonPlayer {
544
583
  switch (direction) {
545
584
  case Direction.Down:
546
585
  case Direction.Up:
547
- return this.mapInstance.tileHeight / this.speed;
586
+ return Math.floor(this.mapInstance.tileHeight / this.speed);
548
587
  case Direction.Left:
549
588
  case Direction.Right:
550
- return this.mapInstance.tileWidth / this.speed;
589
+ return Math.floor(this.mapInstance.tileWidth / this.speed);
551
590
  default:
552
591
  return NaN;
553
592
  }
554
593
  }
594
+ /** @internal */
555
595
  getSizeMaxShape(x, y) {
556
596
  const _x = x || this.position.x;
557
597
  const _y = y || this.position.y;
@@ -579,7 +619,10 @@ class RpgCommonPlayer {
579
619
  maxY
580
620
  };
581
621
  }
582
- execMethod(methodName, methodData, instance) { }
622
+ /** @internal */
623
+ execMethod(methodName, methodData, instance) {
624
+ return __awaiter(this, void 0, void 0, function* () { });
625
+ }
583
626
  }
584
627
  exports.RpgCommonPlayer = RpgCommonPlayer;
585
628
  //# sourceMappingURL=Player.js.map
package/lib/Player.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Player.js","sourceRoot":"","sources":["../src/Player.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Player.js","sourceRoot":"","sources":["../src/Player.ts"],"names":[],"mappings":"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"}
package/lib/Plugin.d.ts CHANGED
@@ -45,6 +45,9 @@ export declare enum HookClient {
45
45
  WindowResize = "Client.WindowResize",
46
46
  SpriteMove = "Client.SpriteMove"
47
47
  }
48
+ /**
49
+ * @deprecated
50
+ */
48
51
  export declare class PluginSystem extends EventEmitter {
49
52
  private loadPlugins;
50
53
  loadServerPlugins(plugins: any, shared: any): void;
package/lib/Plugin.js CHANGED
@@ -45,7 +45,9 @@ var HookClient;
45
45
  HookClient["WindowResize"] = "Client.WindowResize";
46
46
  HookClient["SpriteMove"] = "Client.SpriteMove";
47
47
  })(HookClient = exports.HookClient || (exports.HookClient = {}));
48
- // deprecated
48
+ /**
49
+ * @deprecated
50
+ */
49
51
  class PluginSystem extends EventEmitter_1.EventEmitter {
50
52
  loadPlugins(plugins, shared, type) {
51
53
  if (!plugins)
package/lib/Plugin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../src/Plugin.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAC7C,mCAAiC;AAMjC,IAAY,UAeX;AAfD,WAAY,UAAU;IAClB,oCAAsB,CAAA;IACtB,kCAAoB,CAAA;IACpB,oDAAsC,CAAA;IACtC,0DAA4C,CAAA;IAC5C,sCAAwB,CAAA;IACxB,gDAAkC,CAAA;IAClC,4CAA8B,CAAA;IAC9B,gDAAkC,CAAA;IAClC,kDAAoC,CAAA;IACpC,gDAAkC,CAAA;IAClC,0CAA4B,CAAA;IAC5B,gDAAkC,CAAA;IAClC,kDAAoC,CAAA;IACpC,8CAAgC,CAAA;AACpC,CAAC,EAfW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAerB;AAED,IAAY,UA0BX;AA1BD,WAAY,UAAU;IAClB,oCAAsB,CAAA;IACtB,kCAAoB,CAAA;IACpB,4CAA8B,CAAA;IAC9B,8CAAgC,CAAA;IAChC,sDAAwC,CAAA;IAExC,sDAAwC,CAAA;IACxC,sCAAwB,CAAA;IACxB,0CAA4B,CAAA;IAC5B,4CAA8B,CAAA;IAE9B,8DAAgD,CAAA;IAChD,4DAA8C,CAAA;IAC9C,wDAA0C,CAAA;IAC1C,sDAAwC,CAAA;IACxC,sDAAwC,CAAA;IACxC,4CAA8B,CAAA;IAC9B,4DAA8C,CAAA;IAE9C,4CAA8B,CAAA;IAC9B,kDAAoC,CAAA;IACpC,kDAAoC,CAAA;IACpC,oDAAsC,CAAA;IACtC,kDAAoC,CAAA;IACpC,8CAAgC,CAAA;AACpC,CAAC,EA1BW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QA0BrB;AAED,aAAa;AACb,MAAa,YAAa,SAAQ,2BAAY;IAClC,WAAW,CAAC,OAAiB,EAAE,MAAW,EAAE,IAAY;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE;YACxB,IAAI,CAAC,MAAM;gBAAE,SAAQ;YACrB,IAAI,IAAI,GAAQ,EAAE,CAAA;YAClB,IAAI,CAAC,eAAO,CAAC,MAAM,CAAC,EAAE;gBAClB,IAAI,GAAG,CAAC,MAAM,CAAC,CAAA;aAClB;iBACI;gBACD,IAAI,GAAG,MAAM,CAAA;aAChB;YACD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;YAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,SAAQ;YACzB,IAAI,CAAC,IAAI,CAAC,iBACN,SAAS,EAAT,iBAAS,IACN,MAAM,GACV,OAAO,CAAC,CAAA;SACd;IACL,CAAC;IAED,iBAAiB,CAAC,OAAO,EAAE,MAAM;QAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC/C,CAAC;IAED,iBAAiB,CAAC,OAAO,EAAE,MAAM;QAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC/C,CAAC;CACJ;AA5BD,oCA4BC;AAEY,QAAA,SAAS,GAAG,IAAI,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../src/Plugin.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAC7C,mCAAiC;AAMjC,IAAY,UAeX;AAfD,WAAY,UAAU;IAClB,oCAAsB,CAAA;IACtB,kCAAoB,CAAA;IACpB,oDAAsC,CAAA;IACtC,0DAA4C,CAAA;IAC5C,sCAAwB,CAAA;IACxB,gDAAkC,CAAA;IAClC,4CAA8B,CAAA;IAC9B,gDAAkC,CAAA;IAClC,kDAAoC,CAAA;IACpC,gDAAkC,CAAA;IAClC,0CAA4B,CAAA;IAC5B,gDAAkC,CAAA;IAClC,kDAAoC,CAAA;IACpC,8CAAgC,CAAA;AACpC,CAAC,EAfW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAerB;AAED,IAAY,UA0BX;AA1BD,WAAY,UAAU;IAClB,oCAAsB,CAAA;IACtB,kCAAoB,CAAA;IACpB,4CAA8B,CAAA;IAC9B,8CAAgC,CAAA;IAChC,sDAAwC,CAAA;IAExC,sDAAwC,CAAA;IACxC,sCAAwB,CAAA;IACxB,0CAA4B,CAAA;IAC5B,4CAA8B,CAAA;IAE9B,8DAAgD,CAAA;IAChD,4DAA8C,CAAA;IAC9C,wDAA0C,CAAA;IAC1C,sDAAwC,CAAA;IACxC,sDAAwC,CAAA;IACxC,4CAA8B,CAAA;IAC9B,4DAA8C,CAAA;IAE9C,4CAA8B,CAAA;IAC9B,kDAAoC,CAAA;IACpC,kDAAoC,CAAA;IACpC,oDAAsC,CAAA;IACtC,kDAAoC,CAAA;IACpC,8CAAgC,CAAA;AACpC,CAAC,EA1BW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QA0BrB;AAED;;GAEG;AACH,MAAa,YAAa,SAAQ,2BAAY;IAClC,WAAW,CAAC,OAAiB,EAAE,MAAW,EAAE,IAAY;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE;YACxB,IAAI,CAAC,MAAM;gBAAE,SAAQ;YACrB,IAAI,IAAI,GAAQ,EAAE,CAAA;YAClB,IAAI,CAAC,eAAO,CAAC,MAAM,CAAC,EAAE;gBAClB,IAAI,GAAG,CAAC,MAAM,CAAC,CAAA;aAClB;iBACI;gBACD,IAAI,GAAG,MAAM,CAAA;aAChB;YACD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;YAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,SAAQ;YACzB,IAAI,CAAC,IAAI,CAAC,iBACN,SAAS,EAAT,iBAAS,IACN,MAAM,GACV,OAAO,CAAC,CAAA;SACd;IACL,CAAC;IAED,iBAAiB,CAAC,OAAO,EAAE,MAAM;QAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC/C,CAAC;IAED,iBAAiB,CAAC,OAAO,EAAE,MAAM;QAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC/C,CAAC;CACJ;AA5BD,oCA4BC;AAEY,QAAA,SAAS,GAAG,IAAI,YAAY,EAAE,CAAA"}
package/lib/Shape.d.ts CHANGED
@@ -83,8 +83,8 @@ export declare class RpgShape {
83
83
  set properties(val: any);
84
84
  isEvent(): boolean;
85
85
  set(obj: ShapeObject): void;
86
- in(player: RpgCommonPlayer): boolean;
87
- out(player: RpgCommonPlayer): boolean;
86
+ in(player: RpgCommonPlayer): Promise<boolean>;
87
+ out(player: RpgCommonPlayer): Promise<boolean>;
88
88
  /**
89
89
  * Whether the player is in this shape
90
90
  *
package/lib/Shape.js CHANGED
@@ -1,7 +1,21 @@
1
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
2
14
  Object.defineProperty(exports, "__esModule", { value: true });
3
15
  exports.RpgShape = exports.ShapePositioning = void 0;
4
16
  const Hit_1 = require("./Hit");
17
+ const Utils_1 = require("./Utils");
18
+ const sat_1 = __importDefault(require("sat"));
5
19
  var ShapePositioning;
6
20
  (function (ShapePositioning) {
7
21
  ShapePositioning["Default"] = "default";
@@ -133,30 +147,32 @@ class RpgShape {
133
147
  set(obj) {
134
148
  const hit = Hit_1.Hit.getHitbox(obj);
135
149
  Object.assign(this, hit);
136
- this.x = obj.x || 0;
137
- this.y = obj.y || 0;
138
150
  this.positioning = obj.positioning;
139
151
  this.fixEvent = obj.fixEvent;
140
152
  }
141
153
  in(player) {
142
- if (!this.playerIsIn(player)) {
143
- this.playersIn[player.id] = true;
144
- player.inShapes[this.name] = this;
145
- player.execMethod('onInShape', [this]);
146
- player.execMethod('onIn', [player], this);
147
- return true;
148
- }
149
- return false;
154
+ return __awaiter(this, void 0, void 0, function* () {
155
+ if (!this.playerIsIn(player)) {
156
+ this.playersIn[player.id] = true;
157
+ player.inShapes[this.name] = this;
158
+ yield player.execMethod('onInShape', [this]);
159
+ yield player.execMethod('onIn', [player], this);
160
+ return true;
161
+ }
162
+ return false;
163
+ });
150
164
  }
151
165
  out(player) {
152
- if (this.playerIsIn(player)) {
153
- delete this.playersIn[player.id];
154
- delete player.inShapes[this.name];
155
- player.execMethod('onOutShape', [this]);
156
- player.execMethod('onOut', [player], this);
157
- return true;
158
- }
159
- return false;
166
+ return __awaiter(this, void 0, void 0, function* () {
167
+ if (this.playerIsIn(player)) {
168
+ delete this.playersIn[player.id];
169
+ delete player.inShapes[this.name];
170
+ yield player.execMethod('onOutShape', [this]);
171
+ yield player.execMethod('onOut', [player], this);
172
+ return true;
173
+ }
174
+ return false;
175
+ });
160
176
  }
161
177
  /**
162
178
  * Whether the player is in this shape
@@ -170,7 +186,9 @@ class RpgShape {
170
186
  return !!this.playersIn[player.id];
171
187
  }
172
188
  isShapePosition() {
173
- return !this.hitbox.w;
189
+ return !Utils_1.isInstanceOf(this.hitbox, sat_1.default.Polygon)
190
+ && !Utils_1.isInstanceOf(this.hitbox, sat_1.default.Circle)
191
+ && !Utils_1.isInstanceOf(this.hitbox, sat_1.default.Box);
174
192
  }
175
193
  /**
176
194
  * Recover the player with the shape. You must have used the `attachShape()` method on the player
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/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { Direction, RpgCommonPlayer, PlayerType } from './Player';
2
- import RpgCommonEvent from './Event';
1
+ import { Direction, LiteralDirection, RpgCommonPlayer, PlayerType } from './Player';
2
+ import { RpgCommonEvent } from './Event';
3
3
  import RpgCommonMap from './Map';
4
- import RpgCommonGame from './Game';
4
+ import { RpgCommonGame, GameSide } from './Game';
5
5
  import { EventEmitter } from './EventEmitter';
6
6
  import { PrebuiltGui } from './gui/PrebuiltGui';
7
7
  import Utils from './Utils';
@@ -15,4 +15,4 @@ import * as MockIo from './transports/io';
15
15
  import * as Logger from './Logger';
16
16
  import { RpgShape, ShapePositioning } from './Shape';
17
17
  import { VirtualGrid } from './VirtualGrid';
18
- export { RpgCommonPlayer, RpgCommonEvent, RpgCommonMap, RpgCommonGame, EventEmitter, Utils, TransportIo, Direction, PrebuiltGui, PlayerType, Input, Control, MockIo, RpgPlugin, Plugin, HookServer, HookClient, Scheduler, Hit, RpgModule, loadModules, Logger, ModuleType, RpgShape, ShapePositioning, VirtualGrid };
18
+ export { RpgCommonPlayer, RpgCommonEvent, RpgCommonMap, RpgCommonGame, EventEmitter, Utils, TransportIo, Direction, LiteralDirection, PrebuiltGui, PlayerType, Input, Control, MockIo, RpgPlugin, Plugin, HookServer, HookClient, Scheduler, Hit, RpgModule, loadModules, Logger, ModuleType, RpgShape, ShapePositioning, VirtualGrid, GameSide };
package/lib/index.js CHANGED
@@ -22,17 +22,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
22
22
  return (mod && mod.__esModule) ? mod : { "default": mod };
23
23
  };
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.VirtualGrid = exports.ShapePositioning = exports.RpgShape = exports.Logger = exports.loadModules = exports.RpgModule = exports.Hit = exports.Scheduler = exports.HookClient = exports.HookServer = exports.RpgPlugin = exports.MockIo = exports.Control = exports.Input = exports.PlayerType = exports.PrebuiltGui = exports.Direction = exports.TransportIo = exports.Utils = exports.EventEmitter = exports.RpgCommonGame = exports.RpgCommonMap = exports.RpgCommonEvent = exports.RpgCommonPlayer = void 0;
25
+ exports.GameSide = exports.VirtualGrid = exports.ShapePositioning = exports.RpgShape = exports.Logger = exports.loadModules = exports.RpgModule = exports.Hit = exports.Scheduler = exports.HookClient = exports.HookServer = exports.RpgPlugin = exports.MockIo = exports.Control = exports.Input = exports.PlayerType = exports.PrebuiltGui = exports.LiteralDirection = exports.Direction = exports.TransportIo = exports.Utils = exports.EventEmitter = exports.RpgCommonGame = exports.RpgCommonMap = exports.RpgCommonEvent = exports.RpgCommonPlayer = void 0;
26
26
  const Player_1 = require("./Player");
27
27
  Object.defineProperty(exports, "Direction", { enumerable: true, get: function () { return Player_1.Direction; } });
28
+ Object.defineProperty(exports, "LiteralDirection", { enumerable: true, get: function () { return Player_1.LiteralDirection; } });
28
29
  Object.defineProperty(exports, "RpgCommonPlayer", { enumerable: true, get: function () { return Player_1.RpgCommonPlayer; } });
29
30
  Object.defineProperty(exports, "PlayerType", { enumerable: true, get: function () { return Player_1.PlayerType; } });
30
- const Event_1 = __importDefault(require("./Event"));
31
- exports.RpgCommonEvent = Event_1.default;
31
+ const Event_1 = require("./Event");
32
+ Object.defineProperty(exports, "RpgCommonEvent", { enumerable: true, get: function () { return Event_1.RpgCommonEvent; } });
32
33
  const Map_1 = __importDefault(require("./Map"));
33
34
  exports.RpgCommonMap = Map_1.default;
34
- const Game_1 = __importDefault(require("./Game"));
35
- exports.RpgCommonGame = Game_1.default;
35
+ const Game_1 = require("./Game");
36
+ Object.defineProperty(exports, "RpgCommonGame", { enumerable: true, get: function () { return Game_1.RpgCommonGame; } });
37
+ Object.defineProperty(exports, "GameSide", { enumerable: true, get: function () { return Game_1.GameSide; } });
36
38
  const EventEmitter_1 = require("./EventEmitter");
37
39
  Object.defineProperty(exports, "EventEmitter", { enumerable: true, get: function () { return EventEmitter_1.EventEmitter; } });
38
40
  const PrebuiltGui_1 = require("./gui/PrebuiltGui");
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAiE;AA0B7D,0FA1BK,kBAAS,OA0BL;AAPT,gGAnBgB,wBAAe,OAmBhB;AASf,2FA5BiC,mBAAU,OA4BjC;AA3Bd,oDAAoC;AAmBhC,yBAnBG,eAAc,CAmBH;AAlBlB,gDAAgC;AAmB5B,uBAnBG,aAAY,CAmBH;AAlBhB,kDAAkC;AAmB9B,wBAnBG,cAAa,CAmBH;AAlBjB,iDAA6C;AAmBzC,6FAnBK,2BAAY,OAmBL;AAlBhB,mDAA+C;AAsB3C,4FAtBK,yBAAW,OAsBL;AArBf,oDAA2B;AAkBvB,gBAlBG,eAAK,CAkBH;AAjBT,qCAAoE;AAyBhE,0FAzBK,kBAAS,OAyBL;AAET,2FA3BwB,mBAAU,OA2BxB;AACV,2FA5BoC,mBAAU,OA4BpC;AA3Bd,6DAA8C;AAiB1C,kCAAW;AAhBf,mCAAwC;AAoBpC,sFApBK,aAAK,OAoBL;AACL,wFArBY,eAAO,OAqBZ;AApBX,+BAA2B;AA2BvB,oFA3BK,SAAG,OA2BL;AA1BP,2CAAuC;AAyBnC,0FAzBK,qBAAS,OAyBL;AAxBb,qCAA6D;AA0BzD,0FA1BK,kBAAS,OA0BL;AACT,4FA3BgB,oBAAW,OA2BhB;AA1Bf,wDAAyC;AAkBrC,wBAAM;AAjBV,iDAAmC;AA0B/B,wBAAM;AAzBV,mCAAoD;AA2BhD,yFA3BK,gBAAQ,OA2BL;AACR,iGA5Be,wBAAgB,OA4Bf;AA3BpB,+CAA2C;AA4BvC,4FA5BK,yBAAW,OA4BL"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAmF;AA0B/E,0FA1BK,kBAAS,OA0BL;AACT,iGA3BgB,yBAAgB,OA2BhB;AARhB,gGAnBkC,wBAAe,OAmBlC;AAUf,2FA7BmD,mBAAU,OA6BnD;AA5Bd,mCAAuC;AAmBnC,+FAnBI,sBAAc,OAmBJ;AAlBlB,gDAAgC;AAmB5B,uBAnBG,aAAY,CAmBH;AAlBhB,iCAAgD;AAmB5C,8FAnBK,oBAAa,OAmBL;AAwBb,yFA3CoB,eAAQ,OA2CpB;AA1CZ,iDAA6C;AAmBzC,6FAnBK,2BAAY,OAmBL;AAlBhB,mDAA+C;AAuB3C,4FAvBK,yBAAW,OAuBL;AAtBf,oDAA2B;AAkBvB,gBAlBG,eAAK,CAkBH;AAjBT,qCAAoE;AA0BhE,0FA1BK,kBAAS,OA0BL;AAET,2FA5BwB,mBAAU,OA4BxB;AACV,2FA7BoC,mBAAU,OA6BpC;AA5Bd,6DAA8C;AAiB1C,kCAAW;AAhBf,mCAAwC;AAqBpC,sFArBK,aAAK,OAqBL;AACL,wFAtBY,eAAO,OAsBZ;AArBX,+BAA2B;AA4BvB,oFA5BK,SAAG,OA4BL;AA3BP,2CAAuC;AA0BnC,0FA1BK,qBAAS,OA0BL;AAzBb,qCAA6D;AA2BzD,0FA3BK,kBAAS,OA2BL;AACT,4FA5BgB,oBAAW,OA4BhB;AA3Bf,wDAAyC;AAmBrC,wBAAM;AAlBV,iDAAmC;AA2B/B,wBAAM;AA1BV,mCAAoD;AA4BhD,yFA5BK,gBAAQ,OA4BL;AACR,iGA7Be,wBAAgB,OA6Bf;AA5BpB,+CAA2C;AA6BvC,4FA7BK,yBAAW,OA6BL"}
@@ -1,15 +1,24 @@
1
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
+ };
2
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
13
  };
5
14
  Object.defineProperty(exports, "__esModule", { value: true });
6
15
  const workerpool_1 = __importDefault(require("workerpool"));
7
16
  const Map_1 = __importDefault(require("../Map"));
8
- const Game_1 = __importDefault(require("../Game"));
17
+ const Game_1 = require("../Game");
9
18
  const Player_1 = require("../Player");
10
19
  const objects = {};
11
20
  let objectsByMap = {};
12
- const gameEngine = new Game_1.default('worker');
21
+ const gameEngine = new Game_1.RpgCommonGame(Game_1.GameSide.Worker);
13
22
  gameEngine.start({
14
23
  getObject(playerId) {
15
24
  return objects[playerId];
@@ -37,23 +46,25 @@ function loadMap(data) {
37
46
  Map_1.default.buffer.set(data.id, map);
38
47
  }
39
48
  function movePlayers(data) {
40
- objectsByMap = {};
41
- const ret = {};
42
- for (let object of data) {
43
- gameEngine.world.addObject(object.id, object);
44
- const player = gameEngine.processInput(object.id);
45
- if (player) {
46
- ret[player.id] = {
47
- position: {
48
- x: player.position.x,
49
- y: player.position.y,
50
- z: player.position.z
51
- },
52
- direction: player.direction
53
- };
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ objectsByMap = {};
51
+ const ret = {};
52
+ for (let object of data) {
53
+ gameEngine.world.addObject(object.id, object);
54
+ const player = yield gameEngine.processInput(object.id);
55
+ if (player) {
56
+ ret[player.id] = {
57
+ position: {
58
+ x: player.position.x,
59
+ y: player.position.y,
60
+ z: player.position.z
61
+ },
62
+ direction: player.direction
63
+ };
64
+ }
54
65
  }
55
- }
56
- return ret;
66
+ return ret;
67
+ });
57
68
  }
58
69
  workerpool_1.default.worker({
59
70
  loadMap,
@@ -1 +1 @@
1
- {"version":3,"file":"move.js","sourceRoot":"","sources":["../../src/workers/move.ts"],"names":[],"mappings":";;;;;AAAA,4DAAmC;AACnC,iDAA2B;AAC3B,mDAA0B;AAC1B,sCAA2C;AAE3C,MAAM,OAAO,GAAQ,EAAE,CAAA;AACvB,IAAI,YAAY,GAAQ,EAAE,CAAA;AAC1B,MAAM,UAAU,GAAG,IAAI,cAAI,CAAC,QAAQ,CAAC,CAAA;AACrC,UAAU,CAAC,KAAK,CAAC;IACf,SAAS,CAAC,QAAQ;QAChB,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC1B,CAAC;IACD,SAAS,CAAC,QAAQ,EAAE,IAAI;QACtB,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,wBAAe,EAAE,QAAQ,CAAC,CAAA;QAC9D,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;YACpB,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;SACxB;QACD,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;SAC5D;QACD,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC1B,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAA;QACjC,OAAO,MAAM,CAAA;IACf,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,MAAM;QAC7B,OAAO,EAAE,CAAA;IACX,CAAC;CACF,CAAC,CAAA;AAEF,IAAI,CAAC,GAAC,CAAC,CAAA;AAEP,SAAS,OAAO,CAAC,IAAI;IACnB,MAAM,GAAG,GAAG,IAAI,aAAM,EAAE,CAAA;IACxB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnB,aAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,WAAW,CAAC,IAAI;IACvB,YAAY,GAAG,EAAE,CAAA;IACjB,MAAM,GAAG,GAAG,EAAE,CAAA;IACd,KAAK,IAAI,MAAM,IAAI,IAAI,EAAE;QACvB,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAC7C,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACjD,IAAI,MAAM,EAAE;YACV,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG;gBACf,QAAQ,EAAE;oBACR,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACpB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACpB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;iBACrB;gBACD,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAA;SACF;KACF;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,oBAAU,CAAC,MAAM,CAAC;IAChB,OAAO;IACP,WAAW;CACZ,CAAC,CAAC"}
1
+ {"version":3,"file":"move.js","sourceRoot":"","sources":["../../src/workers/move.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,4DAAmC;AACnC,iDAA2B;AAC3B,kCAAiD;AACjD,sCAA2C;AAE3C,MAAM,OAAO,GAAQ,EAAE,CAAA;AACvB,IAAI,YAAY,GAAQ,EAAE,CAAA;AAC1B,MAAM,UAAU,GAAG,IAAI,oBAAa,CAAC,eAAQ,CAAC,MAAM,CAAC,CAAA;AACrD,UAAU,CAAC,KAAK,CAAC;IACf,SAAS,CAAC,QAAQ;QAChB,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC1B,CAAC;IACD,SAAS,CAAC,QAAQ,EAAE,IAAI;QACtB,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,wBAAe,EAAE,QAAQ,CAAC,CAAA;QAC9D,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;YACpB,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;SACxB;QACD,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;SAC5D;QACD,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC1B,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAA;QACjC,OAAO,MAAM,CAAA;IACf,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,MAAM;QAC7B,OAAO,EAAE,CAAA;IACX,CAAC;CACF,CAAC,CAAA;AAEF,IAAI,CAAC,GAAC,CAAC,CAAA;AAEP,SAAS,OAAO,CAAC,IAAI;IACnB,MAAM,GAAG,GAAG,IAAI,aAAM,EAAE,CAAA;IACxB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnB,aAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;AACjC,CAAC;AAED,SAAe,WAAW,CAAC,IAAI;;QAC7B,YAAY,GAAG,EAAE,CAAA;QACjB,MAAM,GAAG,GAAG,EAAE,CAAA;QACd,KAAK,IAAI,MAAM,IAAI,IAAI,EAAE;YACvB,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;YAC7C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACvD,IAAI,MAAM,EAAE;gBACV,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG;oBACf,QAAQ,EAAE;wBACR,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;wBACpB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;wBACpB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;qBACrB;oBACD,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAA;aACF;SACF;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;CAAA;AAED,oBAAU,CAAC,MAAM,CAAC;IAChB,OAAO;IACP,WAAW;CACZ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpgjs/common",
3
- "version": "3.0.0-beta.6",
3
+ "version": "3.0.0-beta.7",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -18,10 +18,10 @@
18
18
  "author": "Samuel Ronce",
19
19
  "license": "MIT",
20
20
  "dependencies": {
21
- "sat": "^0.8.0",
21
+ "sat": "^0.9.0",
22
22
  "workerpool": "^6.2.0"
23
23
  },
24
- "gitHead": "23673ae3b2706d55fc924fb3648e5ec46af7cac8",
24
+ "gitHead": "c7017c71e58e83b54d85d8b41bd530eb69cd4d8f",
25
25
  "devDependencies": {
26
26
  "typescript": "^4.3.5"
27
27
  }