@rpgjs/common 4.1.3 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
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.2.0](https://github.com/RSamaium/RPG-JS/compare/v4.1.3...v4.2.0) (2023-12-09)
7
+
8
+
9
+ ### Features
10
+
11
+ * inject function ([902e62f](https://github.com/RSamaium/RPG-JS/commit/902e62ff4fdd9b5bd26ee7d5be9ccae2b051f248))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [4.1.3](https://github.com/RSamaium/RPG-JS/compare/v4.1.2...v4.1.3) (2023-11-17)
7
18
 
8
19
  **Note:** Version bump only for package @rpgjs/common
@@ -9190,6 +9190,7 @@ class EventEmitter {
9190
9190
  var HookServer = /* @__PURE__ */ ((HookServer2) => {
9191
9191
  HookServer2["Start"] = "Server.Start";
9192
9192
  HookServer2["Step"] = "Server.Step";
9193
+ HookServer2["Auth"] = "Server.Auth";
9193
9194
  HookServer2["PlayerConnected"] = "Server.onConnected";
9194
9195
  HookServer2["PlayerDisconnected"] = "Server.onDisconnected";
9195
9196
  HookServer2["AddMap"] = "Server.AddMap";
@@ -9289,8 +9290,7 @@ var GameSide = /* @__PURE__ */ ((GameSide2) => {
9289
9290
  return GameSide2;
9290
9291
  })(GameSide || {});
9291
9292
  class RpgCommonGame extends EventEmitter {
9292
- constructor(side) {
9293
- super();
9293
+ initialize(side) {
9294
9294
  this.side = side;
9295
9295
  this.events = {};
9296
9296
  }
@@ -9308,7 +9308,11 @@ class RpgCommonGame extends EventEmitter {
9308
9308
  if (!playerId)
9309
9309
  playerId = generateUID();
9310
9310
  if (isClass(_class)) {
9311
- event = new _class(this, playerId);
9311
+ if (this.side == "client") {
9312
+ event = new _class(this, playerId);
9313
+ } else {
9314
+ event = new _class(playerId);
9315
+ }
9312
9316
  } else {
9313
9317
  event = _class;
9314
9318
  }
@@ -11301,6 +11305,22 @@ const DefaultInput = {
11301
11305
  bind: Input.Escape
11302
11306
  }
11303
11307
  };
11308
+ class InjectContext {
11309
+ constructor() {
11310
+ this.instances = /* @__PURE__ */ new Map();
11311
+ }
11312
+ inject(constructor, args = []) {
11313
+ const serviceName = constructor.name;
11314
+ if (!this.instances.has(serviceName)) {
11315
+ const instance = new constructor(this, ...args);
11316
+ if (instance["initialize"]) {
11317
+ instance["initialize"](...args);
11318
+ }
11319
+ this.instances.set(serviceName, instance);
11320
+ }
11321
+ return this.instances.get(serviceName);
11322
+ }
11323
+ }
11304
11324
  export {
11305
11325
  AbstractObject,
11306
11326
  Control,
@@ -11311,6 +11331,7 @@ export {
11311
11331
  Hit,
11312
11332
  HookClient,
11313
11333
  HookServer,
11334
+ InjectContext,
11314
11335
  Input,
11315
11336
  LiteralDirection,
11316
11337
  Logger,
@@ -9194,6 +9194,7 @@
9194
9194
  var HookServer = /* @__PURE__ */ ((HookServer2) => {
9195
9195
  HookServer2["Start"] = "Server.Start";
9196
9196
  HookServer2["Step"] = "Server.Step";
9197
+ HookServer2["Auth"] = "Server.Auth";
9197
9198
  HookServer2["PlayerConnected"] = "Server.onConnected";
9198
9199
  HookServer2["PlayerDisconnected"] = "Server.onDisconnected";
9199
9200
  HookServer2["AddMap"] = "Server.AddMap";
@@ -9293,8 +9294,7 @@
9293
9294
  return GameSide2;
9294
9295
  })(GameSide || {});
9295
9296
  class RpgCommonGame extends EventEmitter {
9296
- constructor(side) {
9297
- super();
9297
+ initialize(side) {
9298
9298
  this.side = side;
9299
9299
  this.events = {};
9300
9300
  }
@@ -9312,7 +9312,11 @@
9312
9312
  if (!playerId)
9313
9313
  playerId = generateUID();
9314
9314
  if (isClass(_class)) {
9315
- event = new _class(this, playerId);
9315
+ if (this.side == "client") {
9316
+ event = new _class(this, playerId);
9317
+ } else {
9318
+ event = new _class(playerId);
9319
+ }
9316
9320
  } else {
9317
9321
  event = _class;
9318
9322
  }
@@ -11305,6 +11309,22 @@ import config from 'server!./config
11305
11309
  bind: exports2.Input.Escape
11306
11310
  }
11307
11311
  };
11312
+ class InjectContext {
11313
+ constructor() {
11314
+ this.instances = /* @__PURE__ */ new Map();
11315
+ }
11316
+ inject(constructor, args = []) {
11317
+ const serviceName = constructor.name;
11318
+ if (!this.instances.has(serviceName)) {
11319
+ const instance = new constructor(this, ...args);
11320
+ if (instance["initialize"]) {
11321
+ instance["initialize"](...args);
11322
+ }
11323
+ this.instances.set(serviceName, instance);
11324
+ }
11325
+ return this.instances.get(serviceName);
11326
+ }
11327
+ }
11308
11328
  exports2.AbstractObject = AbstractObject;
11309
11329
  exports2.DefaultInput = DefaultInput;
11310
11330
  exports2.EventEmitter = EventEmitter;
@@ -11312,6 +11332,7 @@ import config from 'server!./config
11312
11332
  exports2.Hit = Hit;
11313
11333
  exports2.HookClient = HookClient;
11314
11334
  exports2.HookServer = HookServer;
11335
+ exports2.InjectContext = InjectContext;
11315
11336
  exports2.LiteralDirection = LiteralDirection;
11316
11337
  exports2.Logger = Logger;
11317
11338
  exports2.MockIo = io;
@@ -12,7 +12,7 @@ type CollisionOptions = {
12
12
  allSearch?: boolean;
13
13
  };
14
14
  export declare class AbstractObject {
15
- private gameEngine;
15
+ gameEngine: RpgCommonGame;
16
16
  playerId: string;
17
17
  map: string;
18
18
  height: number;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractObject.js","sourceRoot":"","sources":["../src/AbstractObject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractObject.js","sourceRoot":"","sources":["../src/AbstractObject.ts"],"names":[],"mappings":"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"}
package/lib/Game.d.ts CHANGED
@@ -10,10 +10,10 @@ export declare enum GameSide {
10
10
  Worker = "worker"
11
11
  }
12
12
  export declare class RpgCommonGame extends EventEmitter {
13
- side: GameSide;
14
13
  events: any;
15
14
  world: any;
16
- constructor(side: GameSide);
15
+ side: GameSide;
16
+ initialize(side: GameSide): void;
17
17
  get isWorker(): boolean;
18
18
  start(world: any): void;
19
19
  createWorkers(options: any): GameWorker;
package/lib/Game.js CHANGED
@@ -12,8 +12,7 @@ export var GameSide;
12
12
  GameSide["Worker"] = "worker";
13
13
  })(GameSide || (GameSide = {}));
14
14
  export class RpgCommonGame extends EventEmitter {
15
- constructor(side) {
16
- super();
15
+ initialize(side) {
17
16
  this.side = side;
18
17
  this.events = {}; // events for all player in map
19
18
  }
@@ -31,7 +30,12 @@ export class RpgCommonGame extends EventEmitter {
31
30
  if (!playerId)
32
31
  playerId = generateUID();
33
32
  if (isClass(_class)) {
34
- event = new _class(this, playerId);
33
+ if (this.side == GameSide.Client) {
34
+ event = new _class(this, playerId);
35
+ }
36
+ else {
37
+ event = new _class(playerId);
38
+ }
35
39
  }
36
40
  else {
37
41
  event = _class;
package/lib/Game.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Game.js","sourceRoot":"","sources":["../src/Game.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Game.js","sourceRoot":"","sources":["../src/Game.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAe,OAAO,EAAY,SAAS,EAAE,MAAM,cAAc,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAIlC,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAChB,6BAAiB,CAAA;IACjB,6BAAiB,CAAA;IACjB,6BAAiB,CAAA;AACrB,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AAED,MAAM,OAAO,aAAc,SAAQ,YAAY;IAK3C,UAAU,CAAC,IAAc;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,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,UAAU,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAED,SAAS,CAAC,MAAM,EAAE,QAAiB;QAC/B,IAAI,KAAK,CAAA;QACT,IAAI,CAAC,QAAQ;YAAE,QAAQ,GAAG,WAAW,EAAE,CAAA;QACvC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;YACjB,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,EAAE;gBAC9B,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;aACrC;iBACI;gBACD,KAAK,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAA;aAC/B;SACJ;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,CAAI,UAA0B,EAAE,OAAgB;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACjD,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,QAAQ,CAAC,GAAc;QACnB,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,WAAW,EAAE,CAAW,CAAA;QAC3D,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,GAAuB,CAAC,CAAA;QACnD,KAAK,CAAC,IAAI,GAAG,EAAE,CAAA;QACf,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,YAAY,CAAoC,QAAgB,EAAE,QAAmB;QAIvF,MAAM,MAAM,GAAc,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QACxD,MAAM,MAAM,GAAa,EAAE,CAAA;QAE3B,IAAI,CAAC,MAAM;YAAE,OAAO;gBAChB,MAAM;gBACN,MAAM;aACT,CAAA;QAED,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;YAE5C,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,SAAgB,CAAA;YAC9C,IAAI,MAAM,GAAG,KAAK,CAAA;YAElB,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;gBAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACtB,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBAEpD,IAAI,SAAS,IAAI,GAAG,EAAE;oBAClB,SAAQ;iBACX;gBAED,IAAI,OAAO,CAAC,KAAK,EAAE;oBACf,IAAI,QAAgB,CAAA;oBACpB,IAAI,aAAa,GAAyB,EAAE,CAAA;oBAE5C,IAAI,OAAO,OAAO,CAAC,KAAK,IAAI,QAAQ,EAAE;wBAClC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAA;qBAC3B;yBACI;wBACD,QAAQ,GAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAA;wBAClC,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE;4BAC7B,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAA;yBAC9C;qBACJ;oBAED,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ,CAAA;oBAE9C,KAAK,IAAI,OAAO,IAAI,aAAa,EAAE;wBAC/B,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,QAAQ,CAAA;qBACnD;iBACJ;aACJ;YAED,IAAI,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE;gBACzB,MAAM,MAAM,CAAC,oBAAoB,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;aACpE;iBACI,IACD,KAAK,IAAI,SAAS,CAAC,IAAI;gBACvB,KAAK,IAAI,SAAS,CAAC,KAAK;gBACxB,KAAK,IAAI,SAAS,CAAC,EAAE;gBACrB,KAAK,IAAI,SAAS,CAAC,IAAI,EACzB;gBACE,MAAM,GAAG,IAAI,CAAA;gBACb,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC,CAAA;gBACtE,IAAI,MAAM,EAAE;oBACR,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;iBAC7B;aACJ;YACD,kBAAkB;YAClB,gEAAgE;YAChE,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,EAAE;gBAC9B,MAAM,SAAS,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE;wBAC5C,GAAG,SAAS;wBACZ,MAAM;qBACT,CAAC,EAAE,IAAI,CAAC,CAAA;aACZ;YAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SACrB;QAED,OAAO;YACH,MAAM;YACN,MAAM;SACT,CAAA;IACL,CAAC;CACJ"}
@@ -0,0 +1,9 @@
1
+ type Constructor<T> = new (...args: any[]) => T;
2
+ export declare class InjectContext {
3
+ private instances;
4
+ inject<T>(constructor: Constructor<T>, args?: any[]): T;
5
+ }
6
+ export interface InjectInit {
7
+ initialize(...args: any[]): any;
8
+ }
9
+ export {};
package/lib/Inject.js ADDED
@@ -0,0 +1,17 @@
1
+ export class InjectContext {
2
+ constructor() {
3
+ this.instances = new Map();
4
+ }
5
+ inject(constructor, args = []) {
6
+ const serviceName = constructor.name;
7
+ if (!this.instances.has(serviceName)) {
8
+ const instance = new constructor(this, ...args);
9
+ if (instance['initialize']) {
10
+ instance['initialize'](...args);
11
+ }
12
+ this.instances.set(serviceName, instance);
13
+ }
14
+ return this.instances.get(serviceName);
15
+ }
16
+ }
17
+ //# sourceMappingURL=Inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Inject.js","sourceRoot":"","sources":["../src/Inject.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,aAAa;IAA1B;QACY,cAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IAa/D,CAAC;IAXG,MAAM,CAAI,WAA2B,EAAE,OAAc,EAAE;QACnD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YAChD,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE;gBACxB,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;aACnC;YACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;SAC7C;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;CACJ"}
package/lib/Plugin.d.ts CHANGED
@@ -8,6 +8,7 @@ export type Plugin = PluginSides | [PluginSides, any];
8
8
  export declare enum HookServer {
9
9
  Start = "Server.Start",
10
10
  Step = "Server.Step",
11
+ Auth = "Server.Auth",
11
12
  PlayerConnected = "Server.onConnected",
12
13
  PlayerDisconnected = "Server.onDisconnected",
13
14
  AddMap = "Server.AddMap",
package/lib/Plugin.js CHANGED
@@ -4,6 +4,7 @@ export var HookServer;
4
4
  (function (HookServer) {
5
5
  HookServer["Start"] = "Server.Start";
6
6
  HookServer["Step"] = "Server.Step";
7
+ HookServer["Auth"] = "Server.Auth";
7
8
  HookServer["PlayerConnected"] = "Server.onConnected";
8
9
  HookServer["PlayerDisconnected"] = "Server.onDisconnected";
9
10
  HookServer["AddMap"] = "Server.AddMap";
package/lib/Plugin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../src/Plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAMjC,MAAM,CAAN,IAAY,UAoBX;AApBD,WAAY,UAAU;IAClB,oCAAsB,CAAA;IACtB,kCAAoB,CAAA;IACpB,oDAAsC,CAAA;IACtC,0DAA4C,CAAA;IAC5C,sCAAwB,CAAA;IACxB,0CAA4B,CAAA;IAC5B,kDAAoC,CAAA;IACpC,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;IAChC,8DAAgD,CAAA;IAChD,8EAAgE,CAAA;IAChE,wEAA0D,CAAA;AAC9D,CAAC,EApBW,UAAU,KAAV,UAAU,QAoBrB;AAED,MAAM,CAAN,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,KAAV,UAAU,QA0BrB;AAED;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,YAAY;IAA9C;;QACI,gBAAW,GAEP,EAAE,CAAA;IAiCV,CAAC;IA/BG,gBAAgB,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAEO,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,OAAO,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,CAAC;gBACP,SAAS;gBACT,GAAG,MAAM;aACZ,EAAE,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;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../src/Plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAMjC,MAAM,CAAN,IAAY,UAqBX;AArBD,WAAY,UAAU;IAClB,oCAAsB,CAAA;IACtB,kCAAoB,CAAA;IACpB,kCAAoB,CAAA;IACpB,oDAAsC,CAAA;IACtC,0DAA4C,CAAA;IAC5C,sCAAwB,CAAA;IACxB,0CAA4B,CAAA;IAC5B,kDAAoC,CAAA;IACpC,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;IAChC,8DAAgD,CAAA;IAChD,8EAAgE,CAAA;IAChE,wEAA0D,CAAA;AAC9D,CAAC,EArBW,UAAU,KAAV,UAAU,QAqBrB;AAED,MAAM,CAAN,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,KAAV,UAAU,QA0BrB;AAED;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,YAAY;IAA9C;;QACI,gBAAW,GAEP,EAAE,CAAA;IAiCV,CAAC;IA/BG,gBAAgB,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAEO,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,OAAO,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,CAAC;gBACP,SAAS;gBACT,GAAG,MAAM;aACZ,EAAE,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;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,YAAY,EAAE,CAAA"}
package/lib/index.d.ts CHANGED
@@ -22,3 +22,4 @@ export { Vector2d } from './Vector2d';
22
22
  export { Direction } from '@rpgjs/types';
23
23
  export { transitionColor } from './Color';
24
24
  export { DefaultInput } from './DefaultInput';
25
+ export { type InjectInit, InjectContext } from './Inject';
package/lib/index.js CHANGED
@@ -22,4 +22,5 @@ export { Vector2d } from './Vector2d.js';
22
22
  export { Direction } from '@rpgjs/types';
23
23
  export { transitionColor } from './Color.js';
24
24
  export { DefaultInput } from './DefaultInput.js';
25
+ export { InjectContext } from './Inject.js';
25
26
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAQ,KAAI,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,SAAS,EAAe,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAmB,MAAM,UAAU,CAAA;AAClE,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAQ,KAAI,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,SAAS,EAAe,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAmB,MAAM,UAAU,CAAA;AAClE,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAmB,aAAa,EAAE,MAAM,UAAU,CAAA"}
@@ -1,10 +1,10 @@
1
1
  import workerpool from 'workerpool';
2
2
  import { RpgCommonMap } from '../Map.js';
3
- import { RpgCommonGame, GameSide } from '../Game.js';
3
+ import { RpgCommonGame } from '../Game.js';
4
4
  import { RpgCommonPlayer } from '../Player.js';
5
5
  const objects = {};
6
6
  let objectsByMap = {};
7
- const gameEngine = new RpgCommonGame(GameSide.Worker);
7
+ const gameEngine = new RpgCommonGame();
8
8
  gameEngine.start({
9
9
  getObject(playerId) {
10
10
  return objects[playerId];
@@ -1 +1 @@
1
- {"version":3,"file":"move.js","sourceRoot":"","sources":["../../src/workers/move.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,OAAO,GAAQ,EAAE,CAAA;AACvB,IAAI,YAAY,GAAQ,EAAE,CAAA;AAC1B,MAAM,UAAU,GAAG,IAAI,aAAa,CAAC,QAAQ,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,eAAe,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,YAAY,EAAE,CAAA;IAC9B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnB,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAI;IAC7B,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,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC3D,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,UAAU,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,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,aAAa,EAAY,MAAM,SAAS,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,OAAO,GAAQ,EAAE,CAAA;AACvB,IAAI,YAAY,GAAQ,EAAE,CAAA;AAC1B,MAAM,UAAU,GAAG,IAAI,aAAa,EAAE,CAAA;AACtC,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,eAAe,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,YAAY,EAAE,CAAA;IAC9B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnB,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAI;IAC7B,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,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC3D,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,UAAU,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": "4.1.3",
3
+ "version": "4.2.0",
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": "dcefcd5489c132b5ec83a2eb3a2e941fa29231c9",
26
+ "gitHead": "afba6593c6d060c46a67be465bef2abd401d4c8d",
27
27
  "devDependencies": {
28
- "@rpgjs/compiler": "^4.1.3",
28
+ "@rpgjs/compiler": "^4.2.0",
29
29
  "typescript": "^5.0.4"
30
30
  },
31
31
  "type": "module"
@@ -53,12 +53,11 @@ export class AbstractObject {
53
53
  // notifier for destroy
54
54
  _destroy$: Subject<void> = new Subject()
55
55
 
56
-
57
56
  static get ACTIONS() {
58
57
  return ACTIONS
59
58
  }
60
59
 
61
- constructor(private gameEngine: RpgCommonGame, public playerId: string) {
60
+ constructor(public gameEngine: RpgCommonGame, public playerId: string) {
62
61
  this._hitboxPos = new SAT.Vector(0, 0)
63
62
  this.setHitbox(this.width, this.height)
64
63
  this.position = { x: 0, y: 0, z: 0 }
package/src/Game.ts CHANGED
@@ -7,6 +7,7 @@ import { GameWorker } from './Worker'
7
7
  import { HitObject } from './Hit'
8
8
  import { RpgShape } from './Shape'
9
9
  import { TiledObjectClass } from '@rpgjs/tiled'
10
+ import { InjectContext } from './Inject'
10
11
 
11
12
  export enum GameSide {
12
13
  Server = 'server',
@@ -17,9 +18,10 @@ export enum GameSide {
17
18
  export class RpgCommonGame extends EventEmitter {
18
19
  events: any
19
20
  world: any
21
+ side: GameSide
20
22
 
21
- constructor(public side: GameSide) {
22
- super()
23
+ initialize(side: GameSide) {
24
+ this.side = side
23
25
  this.events = {} // events for all player in map
24
26
  }
25
27
 
@@ -39,7 +41,12 @@ export class RpgCommonGame extends EventEmitter {
39
41
  let event
40
42
  if (!playerId) playerId = generateUID()
41
43
  if (isClass(_class)) {
42
- event = new _class(this, playerId)
44
+ if (this.side == GameSide.Client) {
45
+ event = new _class(this, playerId)
46
+ }
47
+ else {
48
+ event = new _class(playerId)
49
+ }
43
50
  }
44
51
  else {
45
52
  event = _class
package/src/Inject.ts ADDED
@@ -0,0 +1,22 @@
1
+ type Constructor<T> = new (...args: any[]) => T;
2
+ type ServiceIdentifier<T> = string;
3
+
4
+ export class InjectContext {
5
+ private instances = new Map<ServiceIdentifier<any>, any>();
6
+
7
+ inject<T>(constructor: Constructor<T>, args: any[] = []): T {
8
+ const serviceName = constructor.name;
9
+ if (!this.instances.has(serviceName)) {
10
+ const instance = new constructor(this, ...args);
11
+ if (instance['initialize']) {
12
+ instance['initialize'](...args);
13
+ }
14
+ this.instances.set(serviceName, instance);
15
+ }
16
+ return this.instances.get(serviceName);
17
+ }
18
+ }
19
+
20
+ export interface InjectInit {
21
+ initialize(...args: any[]): any
22
+ }
package/src/Plugin.ts CHANGED
@@ -8,6 +8,7 @@ export type Plugin = PluginSides | [PluginSides, any]
8
8
  export enum HookServer {
9
9
  Start = 'Server.Start',
10
10
  Step = "Server.Step",
11
+ Auth = "Server.Auth",
11
12
  PlayerConnected = 'Server.onConnected',
12
13
  PlayerDisconnected = 'Server.onDisconnected',
13
14
  AddMap = 'Server.AddMap',
package/src/index.ts CHANGED
@@ -21,4 +21,5 @@ export { RpgCommonWorldMaps } from './WorldMaps'
21
21
  export { Vector2d } from './Vector2d'
22
22
  export { Direction } from '@rpgjs/types'
23
23
  export { transitionColor } from './Color'
24
- export { DefaultInput } from './DefaultInput'
24
+ export { DefaultInput } from './DefaultInput'
25
+ export { type InjectInit, InjectContext } from './Inject'
@@ -5,7 +5,7 @@ import { RpgCommonPlayer } from '../Player'
5
5
 
6
6
  const objects: any = {}
7
7
  let objectsByMap: any = {}
8
- const gameEngine = new RpgCommonGame(GameSide.Worker)
8
+ const gameEngine = new RpgCommonGame()
9
9
  gameEngine.start({
10
10
  getObject(playerId) {
11
11
  return objects[playerId]