quake2ts 0.0.432 → 0.0.434

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/package.json +1 -1
  2. package/packages/cgame/dist/index.cjs +27 -17
  3. package/packages/cgame/dist/index.cjs.map +1 -1
  4. package/packages/cgame/dist/index.d.cts +2 -0
  5. package/packages/cgame/dist/index.d.ts +2 -0
  6. package/packages/cgame/dist/index.js +27 -17
  7. package/packages/cgame/dist/index.js.map +1 -1
  8. package/packages/client/dist/browser/index.global.js +16 -16
  9. package/packages/client/dist/browser/index.global.js.map +1 -1
  10. package/packages/client/dist/cjs/index.cjs +9 -0
  11. package/packages/client/dist/cjs/index.cjs.map +1 -1
  12. package/packages/client/dist/esm/index.js +9 -0
  13. package/packages/client/dist/esm/index.js.map +1 -1
  14. package/packages/client/dist/tsconfig.tsbuildinfo +1 -1
  15. package/packages/client/dist/types/index.d.ts.map +1 -1
  16. package/packages/client/dist/types/net/serverBrowser.d.ts +6 -0
  17. package/packages/client/dist/types/net/serverBrowser.d.ts.map +1 -1
  18. package/packages/game/dist/browser/index.global.js +4 -4
  19. package/packages/game/dist/browser/index.global.js.map +1 -1
  20. package/packages/game/dist/cjs/index.cjs +248 -77
  21. package/packages/game/dist/cjs/index.cjs.map +1 -1
  22. package/packages/game/dist/esm/index.js +248 -77
  23. package/packages/game/dist/esm/index.js.map +1 -1
  24. package/packages/game/dist/tsconfig.tsbuildinfo +1 -1
  25. package/packages/game/dist/types/combat/weapons/chaingun.d.ts.map +1 -1
  26. package/packages/game/dist/types/combat/weapons/firing.d.ts +9 -0
  27. package/packages/game/dist/types/combat/weapons/firing.d.ts.map +1 -1
  28. package/packages/game/dist/types/combat/weapons/supershotgun.d.ts.map +1 -1
  29. package/packages/game/dist/types/entities/player.d.ts.map +1 -1
  30. package/packages/game/dist/types/entities/system.d.ts.map +1 -1
  31. package/packages/game/dist/types/imports.d.ts +2 -0
  32. package/packages/game/dist/types/imports.d.ts.map +1 -1
  33. package/packages/game/dist/types/index.d.ts +1 -0
  34. package/packages/game/dist/types/index.d.ts.map +1 -1
  35. package/packages/game/dist/types/inventory/playerInventory.d.ts +1 -0
  36. package/packages/game/dist/types/inventory/playerInventory.d.ts.map +1 -1
  37. package/packages/game/dist/types/modes/ctf/capture.d.ts +7 -0
  38. package/packages/game/dist/types/modes/ctf/capture.d.ts.map +1 -0
  39. package/packages/game/dist/types/modes/ctf/drop.d.ts +8 -0
  40. package/packages/game/dist/types/modes/ctf/drop.d.ts.map +1 -0
  41. package/packages/game/dist/types/modes/ctf/flag.d.ts.map +1 -1
  42. package/packages/game/dist/types/modes/ctf/integration.d.ts +4 -0
  43. package/packages/game/dist/types/modes/ctf/integration.d.ts.map +1 -0
  44. package/packages/game/dist/types/modes/ctf/pickup.d.ts +6 -0
  45. package/packages/game/dist/types/modes/ctf/pickup.d.ts.map +1 -0
  46. package/packages/game/dist/types/modes/ctf/state.d.ts +15 -0
  47. package/packages/game/dist/types/modes/ctf/state.d.ts.map +1 -0
  48. package/packages/server/dist/index.cjs +122 -1
  49. package/packages/server/dist/index.d.cts +4 -0
  50. package/packages/server/dist/index.d.ts +4 -0
  51. package/packages/server/dist/index.js +122 -1
@@ -1 +1 @@
1
- {"version":3,"file":"chaingun.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/chaingun.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAgBxD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QAmB9D"}
1
+ {"version":3,"file":"chaingun.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/chaingun.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAkBxD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QAsD9D"}
@@ -4,6 +4,15 @@ import { WeaponState } from './state.js';
4
4
  import { PlayerInventory, WeaponId } from '../../inventory/playerInventory.js';
5
5
  declare const random: import("@quake2ts/shared").RandomGenerator;
6
6
  export { random as firingRandom };
7
+ export declare const DEFAULT_BULLET_HSPREAD = 300;
8
+ export declare const DEFAULT_BULLET_VSPREAD = 500;
9
+ export declare const DEFAULT_SHOTGUN_HSPREAD = 500;
10
+ export declare const DEFAULT_SHOTGUN_VSPREAD = 500;
11
+ export declare const DEFAULT_SSHOTGUN_HSPREAD = 1000;
12
+ export declare const DEFAULT_SSHOTGUN_VSPREAD = 500;
13
+ export declare const DEFAULT_DEATHMATCH_SHOTGUN_COUNT = 12;
14
+ export declare const DEFAULT_SHOTGUN_COUNT = 12;
15
+ export declare const DEFAULT_SSHOTGUN_COUNT = 20;
7
16
  export declare function fireHandGrenade(game: GameExports, player: Entity, inventory: PlayerInventory, weaponState: WeaponState): void;
8
17
  export declare function fireShotgun(game: GameExports, player: Entity): void;
9
18
  export declare function fireSuperShotgun(game: GameExports, player: Entity): void;
@@ -1 +1 @@
1
- {"version":3,"file":"firing.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/firing.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAkB,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AA2B/E,QAAA,MAAM,MAAM,4CAA0B,CAAC;AACvC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,CAAC;AA4IlC,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,QAmEtH;AAID,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAiB5D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAoBjE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAiB/D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QA0D7D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAmBhE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAkBjE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAW5D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QA0B3D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,QAiBpF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,QAuD/F;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QA8CxD;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,QA0EzE"}
1
+ {"version":3,"file":"firing.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/firing.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAkB,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AA2B/E,QAAA,MAAM,MAAM,4CAA0B,CAAC;AACvC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,CAAC;AAGlC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAC7C,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AA8KzC,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,QAmEtH;AAID,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAkB5D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAmCjE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAiB/D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QA0D7D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAmBhE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAkBjE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAW5D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QA0B3D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,QAiBpF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,QAuD/F;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QA8CxD;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,QA0EzE"}
@@ -1 +1 @@
1
- {"version":3,"file":"supershotgun.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/supershotgun.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAaxD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QAYlE"}
1
+ {"version":3,"file":"supershotgun.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/supershotgun.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAgBxD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QAgClE"}
@@ -1 +1 @@
1
- {"version":3,"file":"player.d.ts","sourceRoot":"","sources":["../../../src/entities/player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA6B,MAAM,aAAa,CAAC;AAKhE,OAAO,EAAE,SAAS,EAAiB,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiB3C,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QA4E3D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QA6BvD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,YAAY,QAwCzJ;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QA+D3D"}
1
+ {"version":3,"file":"player.d.ts","sourceRoot":"","sources":["../../../src/entities/player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA6B,MAAM,aAAa,CAAC;AAKhE,OAAO,EAAE,SAAS,EAAiB,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAkB3C,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QA4E3D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QA6BvD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,YAAY,QA6CzJ;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QA+D3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../../src/entities/system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../../src/entities/system.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ export interface GameImports {
29
29
  unicast(ent: Entity, reliable: boolean, event: ServerCommand, ...args: any[]): void;
30
30
  configstring(index: number, value: string): void;
31
31
  serverCommand(cmd: string): void;
32
+ setLagCompensation(active: boolean, client?: Entity, lagMs?: number): void;
32
33
  }
33
34
  export interface GameEngine {
34
35
  trace(start: Vec3, end: Vec3): unknown;
@@ -46,5 +47,6 @@ export interface GameEngine {
46
47
  string: string;
47
48
  value: string;
48
49
  } | undefined;
50
+ setLagCompensation?(active: boolean, client?: Entity, lagMs?: number): void;
49
51
  }
50
52
  //# sourceMappingURL=imports.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../src/imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../src/imports.ts"],"names":[],"mappings":"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"}
@@ -77,6 +77,7 @@ export interface GameExports extends GameSimulation<GameStateSnapshot> {
77
77
  unicast(ent: Entity, reliable: boolean, event: ServerCommand, ...args: any[]): void;
78
78
  configstring(index: number, value: string): void;
79
79
  serverCommand(cmd: string): void;
80
+ setLagCompensation?(active: boolean, client?: Entity, lagMs?: number): void;
80
81
  createSave(mapName: string, difficulty: number, playtimeSeconds: number): GameSaveFile;
81
82
  loadSave(save: GameSaveFile): void;
82
83
  clientConnect(ent: Entity | null, userInfo: string): string | true;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -115,6 +115,7 @@ export interface PlayerClient {
115
115
  oldgroundentity?: any;
116
116
  owned_sphere?: any;
117
117
  score?: number;
118
+ ping?: number;
118
119
  }
119
120
  export declare function createPlayerInventory(init?: PlayerInventoryOptions): PlayerInventory;
120
121
  export declare function resetInventory(inventory: PlayerInventory): void;
@@ -1 +1 @@
1
- {"version":3,"file":"playerInventory.d.ts","sourceRoot":"","sources":["../../../src/inventory/playerInventory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,UAAU,EAEf,UAAU,EACV,KAAK,oBAAoB,EAE1B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,QAAQ,EACR,SAAS,EACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAc,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC/G,OAAO,EAAE,kBAAkB,EAA4B,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,IAAI,EAAa,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAE/B,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;CACnC;AAED,oBAAY,KAAK;IACf,IAAI,aAAa;IACjB,GAAG,YAAY;IACf,KAAK,cAAc;IACnB,MAAM,eAAe;IACrB,MAAM,gBAAgB;IACtB,SAAS,mBAAmB;IAC5B,gBAAgB,0BAA0B;IAC1C,SAAS,mBAAmB;IAC5B,OAAO,gBAAgB;IACvB,WAAW,qBAAqB;IAChC,IAAI,aAAa;IACjB,aAAa,uBAAuB;IACpC,SAAS,kBAAkB;IAC3B,aAAa,uBAAuB;IACpC,IAAI,aAAa;IACjB,OAAO,iBAAiB;IACxB,QAAQ,kBAAkB;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IAGtB,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,YAAY,EAAE,kBAAkB,CAAC;IACjC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,GAAE,sBAA2B,GAAG,eAAe,CA4BxF;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,eAAe,QAiBxD;AAOD,wBAAgB,YAAY,CAC1B,SAAS,EAAE,eAAe,EAC1B,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,GACzC,oBAAoB,CAEtB;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAQ,GAAG,OAAO,CAOhG;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAE/E;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAMlF;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAU5H;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAEzG;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAElF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAMpF;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAItE;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAEtE;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAMrG;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CA8D9F;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAgD5F;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAqBxG;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CA8B1F;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CA6BtF;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAuBtG;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACzD,QAAQ,CAAC,IAAI,EAAE,SAAS,KAAK,EAAE,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,eAAe,GAAG,yBAAyB,CAU9F;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,yBAAyB,EACrC,OAAO,GAAE,sBAA2B,GACnC,eAAe,CAgBjB"}
1
+ {"version":3,"file":"playerInventory.d.ts","sourceRoot":"","sources":["../../../src/inventory/playerInventory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,UAAU,EAEf,UAAU,EACV,KAAK,oBAAoB,EAE1B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,QAAQ,EACR,SAAS,EACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAc,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC/G,OAAO,EAAE,kBAAkB,EAA4B,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,IAAI,EAAa,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAE/B,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;CACnC;AAED,oBAAY,KAAK;IACf,IAAI,aAAa;IACjB,GAAG,YAAY;IACf,KAAK,cAAc;IACnB,MAAM,eAAe;IACrB,MAAM,gBAAgB;IACtB,SAAS,mBAAmB;IAC5B,gBAAgB,0BAA0B;IAC1C,SAAS,mBAAmB;IAC5B,OAAO,gBAAgB;IACvB,WAAW,qBAAqB;IAChC,IAAI,aAAa;IACjB,aAAa,uBAAuB;IACpC,SAAS,kBAAkB;IAC3B,aAAa,uBAAuB;IACpC,IAAI,aAAa;IACjB,OAAO,iBAAiB;IACxB,QAAQ,kBAAkB;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IAGtB,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,YAAY,EAAE,kBAAkB,CAAC;IACjC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,GAAE,sBAA2B,GAAG,eAAe,CA4BxF;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,eAAe,QAiBxD;AAOD,wBAAgB,YAAY,CAC1B,SAAS,EAAE,eAAe,EAC1B,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,GACzC,oBAAoB,CAEtB;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAQ,GAAG,OAAO,CAOhG;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAE/E;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAMlF;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAU5H;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAEzG;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAElF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAMpF;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAItE;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAEtE;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAMrG;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CA8D9F;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAgD5F;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAqBxG;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CA8B1F;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CA6BtF;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAuBtG;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACzD,QAAQ,CAAC,IAAI,EAAE,SAAS,KAAK,EAAE,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,eAAe,GAAG,yBAAyB,CAU9F;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,yBAAyB,EACrC,OAAO,GAAE,sBAA2B,GACnC,eAAe,CAgBjB"}
@@ -0,0 +1,7 @@
1
+ import { Entity } from '../../entities/entity.js';
2
+ import { EntitySystem } from '../../entities/system.js';
3
+ import { FlagEntity } from './state.js';
4
+ import { GameExports } from '../../index.js';
5
+ export declare function checkCapture(flag: FlagEntity, player: Entity, game: GameExports, context: EntitySystem): boolean;
6
+ export declare function captureFlag(ownFlag: FlagEntity, player: Entity, game: GameExports, context: EntitySystem): boolean;
7
+ //# sourceMappingURL=capture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../../../src/modes/ctf/capture.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAS,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAA2B,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,wBAAgB,YAAY,CACxB,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,YAAY,GACtB,OAAO,CAuBT;AAED,wBAAgB,WAAW,CACvB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,YAAY,GACtB,OAAO,CAuCT"}
@@ -0,0 +1,8 @@
1
+ import { Entity } from '../../entities/entity.js';
2
+ import { EntitySystem } from '../../entities/system.js';
3
+ import { FlagEntity } from './state.js';
4
+ import { GameExports } from '../../index.js';
5
+ import { Vec3 } from '@quake2ts/shared';
6
+ export declare function dropFlag(flag: FlagEntity, origin: Vec3, game: GameExports, context: EntitySystem): void;
7
+ export declare function flagThink(self: Entity, context: EntitySystem, game: GameExports): void;
8
+ //# sourceMappingURL=drop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drop.d.ts","sourceRoot":"","sources":["../../../../src/modes/ctf/drop.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAS,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAA2B,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAiB,MAAM,kBAAkB,CAAC;AAGvD,wBAAgB,QAAQ,CACpB,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,YAAY,GACtB,IAAI,CA+BN;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAatF"}
@@ -1 +1 @@
1
- {"version":3,"file":"flag.d.ts","sourceRoot":"","sources":["../../../../src/modes/ctf/flag.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAS,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAIpD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAsD7F"}
1
+ {"version":3,"file":"flag.d.ts","sourceRoot":"","sources":["../../../../src/modes/ctf/flag.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAmB,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAMpD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAuE7F"}
@@ -0,0 +1,4 @@
1
+ import { Entity } from '../../entities/entity.js';
2
+ import { EntitySystem } from '../../entities/system.js';
3
+ export declare function checkPlayerFlagDrop(player: Entity, sys: EntitySystem): void;
4
+ //# sourceMappingURL=integration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../../src/modes/ctf/integration.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAMxD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,QA4BpE"}
@@ -0,0 +1,6 @@
1
+ import { Entity } from '../../entities/entity.js';
2
+ import { FlagEntity } from './state.js';
3
+ import { EntitySystem } from '../../entities/system.js';
4
+ import { GameExports } from '../../index.js';
5
+ export declare function handleFlagPickup(flag: FlagEntity, player: Entity, game: GameExports, context: EntitySystem): boolean;
6
+ //# sourceMappingURL=pickup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pickup.d.ts","sourceRoot":"","sources":["../../../../src/modes/ctf/pickup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,UAAU,EAA2B,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,YAAY,GACtB,OAAO,CAiCT"}
@@ -0,0 +1,15 @@
1
+ import { Entity } from '../../entities/entity.js';
2
+ import { EntitySystem } from '../../entities/system.js';
3
+ import { Vec3 } from '@quake2ts/shared';
4
+ export declare enum FlagState {
5
+ AT_BASE = 0,
6
+ CARRIED = 1,
7
+ DROPPED = 2
8
+ }
9
+ export interface FlagEntity extends Entity {
10
+ flagState: FlagState;
11
+ flagTeam: 'red' | 'blue';
12
+ baseOrigin: Vec3;
13
+ }
14
+ export declare function setFlagState(flag: FlagEntity, newState: FlagState, context: EntitySystem): void;
15
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/modes/ctf/state.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,oBAAY,SAAS;IACjB,OAAO,IAAI;IACX,OAAO,IAAI;IACX,OAAO,IAAI;CACd;AAED,MAAM,WAAW,UAAW,SAAQ,MAAM;IACtC,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC;IACzB,UAAU,EAAE,IAAI,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI,CAI/F"}
@@ -808,6 +808,7 @@ function writeTempEntity(writer, type, args) {
808
808
  }
809
809
 
810
810
  // src/dedicated.ts
811
+ var import_shared5 = require("@quake2ts/shared");
811
812
  var MAX_CLIENTS = 16;
812
813
  var FRAME_RATE = 10;
813
814
  var FRAME_TIME_MS = 1e3 / FRAME_RATE;
@@ -818,6 +819,9 @@ var DedicatedServer = class {
818
819
  this.game = null;
819
820
  this.frameTimeout = null;
820
821
  this.entityIndex = null;
822
+ // History buffer: Map<EntityIndex, HistoryArray>
823
+ this.history = /* @__PURE__ */ new Map();
824
+ this.backup = /* @__PURE__ */ new Map();
821
825
  this.svs = {
822
826
  initialized: false,
823
827
  realTime: 0,
@@ -1012,7 +1016,8 @@ var DedicatedServer = class {
1012
1016
  configstring: (index, value) => this.SV_SetConfigString(index, value),
1013
1017
  serverCommand: (cmd) => {
1014
1018
  console.log(`Server command: ${cmd}`);
1015
- }
1019
+ },
1020
+ setLagCompensation: (active, client, lagMs) => this.setLagCompensation(active, client, lagMs)
1016
1021
  };
1017
1022
  this.game = (0, import_game.createGame)(imports, this, {
1018
1023
  gravity: { x: 0, y: 0, z: -800 },
@@ -1328,6 +1333,9 @@ var DedicatedServer = class {
1328
1333
  this.SV_ReadPackets();
1329
1334
  for (const client of this.svs.clients) {
1330
1335
  if (!client || client.state === 0 /* Free */) continue;
1336
+ if (client.edict && client.edict.client) {
1337
+ client.edict.client.ping = client.ping;
1338
+ }
1331
1339
  if (client.state >= 2 /* Connected */) {
1332
1340
  const timeoutFrames = 300;
1333
1341
  if (this.sv.frame - client.lastMessage > timeoutFrames) {
@@ -1355,6 +1363,7 @@ var DedicatedServer = class {
1355
1363
  deltaMs: FRAME_TIME_MS,
1356
1364
  nowMs: Date.now()
1357
1365
  });
1366
+ this.recordHistory();
1358
1367
  if (snapshot && snapshot.state) {
1359
1368
  this.SV_SendClientMessages(snapshot.state);
1360
1369
  }
@@ -1523,6 +1532,118 @@ var DedicatedServer = class {
1523
1532
  configstring(index, value) {
1524
1533
  this.SV_SetConfigString(index, value);
1525
1534
  }
1535
+ recordHistory() {
1536
+ if (!this.game) return;
1537
+ const now = Date.now();
1538
+ const HISTORY_MAX_MS = 1e3;
1539
+ this.game.entities.forEachEntity((ent) => {
1540
+ if (ent.solid !== import_game.Solid.Not || ent.takedamage) {
1541
+ let hist = this.history.get(ent.index);
1542
+ if (!hist) {
1543
+ hist = [];
1544
+ this.history.set(ent.index, hist);
1545
+ }
1546
+ hist.push({
1547
+ time: now,
1548
+ origin: { ...ent.origin },
1549
+ mins: { ...ent.mins },
1550
+ maxs: { ...ent.maxs },
1551
+ angles: { ...ent.angles }
1552
+ });
1553
+ while (hist.length > 0 && hist[0].time < now - HISTORY_MAX_MS) {
1554
+ hist.shift();
1555
+ }
1556
+ }
1557
+ });
1558
+ }
1559
+ setLagCompensation(active, client, lagMs) {
1560
+ if (!this.game || !this.entityIndex) return;
1561
+ if (active) {
1562
+ if (!client || lagMs === void 0) return;
1563
+ const now = Date.now();
1564
+ const targetTime = now - lagMs;
1565
+ this.game.entities.forEachEntity((ent) => {
1566
+ if (ent === client) return;
1567
+ if (ent.solid === import_game.Solid.Not && !ent.takedamage) return;
1568
+ const hist = this.history.get(ent.index);
1569
+ if (!hist || hist.length === 0) return;
1570
+ let i = hist.length - 1;
1571
+ while (i >= 0 && hist[i].time > targetTime) {
1572
+ i--;
1573
+ }
1574
+ if (i < 0) {
1575
+ i = 0;
1576
+ } else if (i >= hist.length - 1) {
1577
+ }
1578
+ const s1 = hist[i];
1579
+ const s2 = i + 1 < hist.length ? hist[i + 1] : s1;
1580
+ let frac = 0;
1581
+ if (s1.time !== s2.time) {
1582
+ frac = (targetTime - s1.time) / (s2.time - s1.time);
1583
+ }
1584
+ if (frac < 0) frac = 0;
1585
+ if (frac > 1) frac = 1;
1586
+ const origin = {
1587
+ x: s1.origin.x + (s2.origin.x - s1.origin.x) * frac,
1588
+ y: s1.origin.y + (s2.origin.y - s1.origin.y) * frac,
1589
+ z: s1.origin.z + (s2.origin.z - s1.origin.z) * frac
1590
+ };
1591
+ const angles = {
1592
+ x: (0, import_shared5.lerpAngle)(s1.angles.x, s2.angles.x, frac),
1593
+ y: (0, import_shared5.lerpAngle)(s1.angles.y, s2.angles.y, frac),
1594
+ z: (0, import_shared5.lerpAngle)(s1.angles.z, s2.angles.z, frac)
1595
+ };
1596
+ this.backup.set(ent.index, {
1597
+ origin: { ...ent.origin },
1598
+ mins: { ...ent.mins },
1599
+ maxs: { ...ent.maxs },
1600
+ angles: { ...ent.angles },
1601
+ link: true
1602
+ // assume linked if we are tracking it
1603
+ });
1604
+ ent.origin = origin;
1605
+ ent.angles = angles;
1606
+ ent.mins = {
1607
+ x: s1.mins.x + (s2.mins.x - s1.mins.x) * frac,
1608
+ y: s1.mins.y + (s2.mins.y - s1.mins.y) * frac,
1609
+ z: s1.mins.z + (s2.mins.z - s1.mins.z) * frac
1610
+ };
1611
+ ent.maxs = {
1612
+ x: s1.maxs.x + (s2.maxs.x - s1.maxs.x) * frac,
1613
+ y: s1.maxs.y + (s2.maxs.y - s1.maxs.y) * frac,
1614
+ z: s1.maxs.z + (s2.maxs.z - s1.maxs.z) * frac
1615
+ };
1616
+ this.entityIndex.link({
1617
+ id: ent.index,
1618
+ origin: ent.origin,
1619
+ mins: ent.mins,
1620
+ maxs: ent.maxs,
1621
+ contents: ent.solid === 0 ? 0 : 1,
1622
+ // Simplified
1623
+ surfaceFlags: 0
1624
+ });
1625
+ });
1626
+ } else {
1627
+ this.backup.forEach((state, id) => {
1628
+ const ent = this.game?.entities.getByIndex(id);
1629
+ if (ent) {
1630
+ ent.origin = state.origin;
1631
+ ent.mins = state.mins;
1632
+ ent.maxs = state.maxs;
1633
+ ent.angles = state.angles;
1634
+ this.entityIndex.link({
1635
+ id: ent.index,
1636
+ origin: ent.origin,
1637
+ mins: ent.mins,
1638
+ maxs: ent.maxs,
1639
+ contents: ent.solid === 0 ? 0 : 1,
1640
+ surfaceFlags: 0
1641
+ });
1642
+ }
1643
+ });
1644
+ this.backup.clear();
1645
+ }
1646
+ }
1526
1647
  };
1527
1648
  // Annotate the CommonJS export names for ESM import in node:
1528
1649
  0 && (module.exports = {
@@ -25,6 +25,8 @@ declare class DedicatedServer implements GameEngine {
25
25
  private game;
26
26
  private frameTimeout;
27
27
  private entityIndex;
28
+ private history;
29
+ private backup;
28
30
  constructor(port?: number);
29
31
  start(mapName: string): Promise<void>;
30
32
  private populateBaselines;
@@ -53,6 +55,8 @@ declare class DedicatedServer implements GameEngine {
53
55
  multicast(origin: any, type: MulticastType, event: ServerCommand, ...args: any[]): void;
54
56
  unicast(ent: Entity, reliable: boolean, event: ServerCommand, ...args: any[]): void;
55
57
  configstring(index: number, value: string): void;
58
+ private recordHistory;
59
+ setLagCompensation(active: boolean, client?: Entity, lagMs?: number): void;
56
60
  }
57
61
 
58
62
  declare enum ClientState {
@@ -25,6 +25,8 @@ declare class DedicatedServer implements GameEngine {
25
25
  private game;
26
26
  private frameTimeout;
27
27
  private entityIndex;
28
+ private history;
29
+ private backup;
28
30
  constructor(port?: number);
29
31
  start(mapName: string): Promise<void>;
30
32
  private populateBaselines;
@@ -53,6 +55,8 @@ declare class DedicatedServer implements GameEngine {
53
55
  multicast(origin: any, type: MulticastType, event: ServerCommand, ...args: any[]): void;
54
56
  unicast(ent: Entity, reliable: boolean, event: ServerCommand, ...args: any[]): void;
55
57
  configstring(index: number, value: string): void;
58
+ private recordHistory;
59
+ setLagCompensation(active: boolean, client?: Entity, lagMs?: number): void;
56
60
  }
57
61
 
58
62
  declare enum ClientState {
@@ -768,6 +768,7 @@ function writeTempEntity(writer, type, args) {
768
768
  }
769
769
 
770
770
  // src/dedicated.ts
771
+ import { lerpAngle } from "@quake2ts/shared";
771
772
  var MAX_CLIENTS = 16;
772
773
  var FRAME_RATE = 10;
773
774
  var FRAME_TIME_MS = 1e3 / FRAME_RATE;
@@ -778,6 +779,9 @@ var DedicatedServer = class {
778
779
  this.game = null;
779
780
  this.frameTimeout = null;
780
781
  this.entityIndex = null;
782
+ // History buffer: Map<EntityIndex, HistoryArray>
783
+ this.history = /* @__PURE__ */ new Map();
784
+ this.backup = /* @__PURE__ */ new Map();
781
785
  this.svs = {
782
786
  initialized: false,
783
787
  realTime: 0,
@@ -972,7 +976,8 @@ var DedicatedServer = class {
972
976
  configstring: (index, value) => this.SV_SetConfigString(index, value),
973
977
  serverCommand: (cmd) => {
974
978
  console.log(`Server command: ${cmd}`);
975
- }
979
+ },
980
+ setLagCompensation: (active, client, lagMs) => this.setLagCompensation(active, client, lagMs)
976
981
  };
977
982
  this.game = createGame(imports, this, {
978
983
  gravity: { x: 0, y: 0, z: -800 },
@@ -1288,6 +1293,9 @@ var DedicatedServer = class {
1288
1293
  this.SV_ReadPackets();
1289
1294
  for (const client of this.svs.clients) {
1290
1295
  if (!client || client.state === 0 /* Free */) continue;
1296
+ if (client.edict && client.edict.client) {
1297
+ client.edict.client.ping = client.ping;
1298
+ }
1291
1299
  if (client.state >= 2 /* Connected */) {
1292
1300
  const timeoutFrames = 300;
1293
1301
  if (this.sv.frame - client.lastMessage > timeoutFrames) {
@@ -1315,6 +1323,7 @@ var DedicatedServer = class {
1315
1323
  deltaMs: FRAME_TIME_MS,
1316
1324
  nowMs: Date.now()
1317
1325
  });
1326
+ this.recordHistory();
1318
1327
  if (snapshot && snapshot.state) {
1319
1328
  this.SV_SendClientMessages(snapshot.state);
1320
1329
  }
@@ -1483,6 +1492,118 @@ var DedicatedServer = class {
1483
1492
  configstring(index, value) {
1484
1493
  this.SV_SetConfigString(index, value);
1485
1494
  }
1495
+ recordHistory() {
1496
+ if (!this.game) return;
1497
+ const now = Date.now();
1498
+ const HISTORY_MAX_MS = 1e3;
1499
+ this.game.entities.forEachEntity((ent) => {
1500
+ if (ent.solid !== Solid.Not || ent.takedamage) {
1501
+ let hist = this.history.get(ent.index);
1502
+ if (!hist) {
1503
+ hist = [];
1504
+ this.history.set(ent.index, hist);
1505
+ }
1506
+ hist.push({
1507
+ time: now,
1508
+ origin: { ...ent.origin },
1509
+ mins: { ...ent.mins },
1510
+ maxs: { ...ent.maxs },
1511
+ angles: { ...ent.angles }
1512
+ });
1513
+ while (hist.length > 0 && hist[0].time < now - HISTORY_MAX_MS) {
1514
+ hist.shift();
1515
+ }
1516
+ }
1517
+ });
1518
+ }
1519
+ setLagCompensation(active, client, lagMs) {
1520
+ if (!this.game || !this.entityIndex) return;
1521
+ if (active) {
1522
+ if (!client || lagMs === void 0) return;
1523
+ const now = Date.now();
1524
+ const targetTime = now - lagMs;
1525
+ this.game.entities.forEachEntity((ent) => {
1526
+ if (ent === client) return;
1527
+ if (ent.solid === Solid.Not && !ent.takedamage) return;
1528
+ const hist = this.history.get(ent.index);
1529
+ if (!hist || hist.length === 0) return;
1530
+ let i = hist.length - 1;
1531
+ while (i >= 0 && hist[i].time > targetTime) {
1532
+ i--;
1533
+ }
1534
+ if (i < 0) {
1535
+ i = 0;
1536
+ } else if (i >= hist.length - 1) {
1537
+ }
1538
+ const s1 = hist[i];
1539
+ const s2 = i + 1 < hist.length ? hist[i + 1] : s1;
1540
+ let frac = 0;
1541
+ if (s1.time !== s2.time) {
1542
+ frac = (targetTime - s1.time) / (s2.time - s1.time);
1543
+ }
1544
+ if (frac < 0) frac = 0;
1545
+ if (frac > 1) frac = 1;
1546
+ const origin = {
1547
+ x: s1.origin.x + (s2.origin.x - s1.origin.x) * frac,
1548
+ y: s1.origin.y + (s2.origin.y - s1.origin.y) * frac,
1549
+ z: s1.origin.z + (s2.origin.z - s1.origin.z) * frac
1550
+ };
1551
+ const angles = {
1552
+ x: lerpAngle(s1.angles.x, s2.angles.x, frac),
1553
+ y: lerpAngle(s1.angles.y, s2.angles.y, frac),
1554
+ z: lerpAngle(s1.angles.z, s2.angles.z, frac)
1555
+ };
1556
+ this.backup.set(ent.index, {
1557
+ origin: { ...ent.origin },
1558
+ mins: { ...ent.mins },
1559
+ maxs: { ...ent.maxs },
1560
+ angles: { ...ent.angles },
1561
+ link: true
1562
+ // assume linked if we are tracking it
1563
+ });
1564
+ ent.origin = origin;
1565
+ ent.angles = angles;
1566
+ ent.mins = {
1567
+ x: s1.mins.x + (s2.mins.x - s1.mins.x) * frac,
1568
+ y: s1.mins.y + (s2.mins.y - s1.mins.y) * frac,
1569
+ z: s1.mins.z + (s2.mins.z - s1.mins.z) * frac
1570
+ };
1571
+ ent.maxs = {
1572
+ x: s1.maxs.x + (s2.maxs.x - s1.maxs.x) * frac,
1573
+ y: s1.maxs.y + (s2.maxs.y - s1.maxs.y) * frac,
1574
+ z: s1.maxs.z + (s2.maxs.z - s1.maxs.z) * frac
1575
+ };
1576
+ this.entityIndex.link({
1577
+ id: ent.index,
1578
+ origin: ent.origin,
1579
+ mins: ent.mins,
1580
+ maxs: ent.maxs,
1581
+ contents: ent.solid === 0 ? 0 : 1,
1582
+ // Simplified
1583
+ surfaceFlags: 0
1584
+ });
1585
+ });
1586
+ } else {
1587
+ this.backup.forEach((state, id) => {
1588
+ const ent = this.game?.entities.getByIndex(id);
1589
+ if (ent) {
1590
+ ent.origin = state.origin;
1591
+ ent.mins = state.mins;
1592
+ ent.maxs = state.maxs;
1593
+ ent.angles = state.angles;
1594
+ this.entityIndex.link({
1595
+ id: ent.index,
1596
+ origin: ent.origin,
1597
+ mins: ent.mins,
1598
+ maxs: ent.maxs,
1599
+ contents: ent.solid === 0 ? 0 : 1,
1600
+ surfaceFlags: 0
1601
+ });
1602
+ }
1603
+ });
1604
+ this.backup.clear();
1605
+ }
1606
+ }
1486
1607
  };
1487
1608
  export {
1488
1609
  ClientMessageParser,