quake2ts 0.0.289 → 0.0.291

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 (44) hide show
  1. package/package.json +1 -1
  2. package/packages/client/dist/browser/index.global.js +11 -11
  3. package/packages/client/dist/browser/index.global.js.map +1 -1
  4. package/packages/client/dist/cjs/index.cjs +22 -12
  5. package/packages/client/dist/cjs/index.cjs.map +1 -1
  6. package/packages/client/dist/esm/index.js +22 -12
  7. package/packages/client/dist/esm/index.js.map +1 -1
  8. package/packages/client/dist/tsconfig.tsbuildinfo +1 -1
  9. package/packages/client/dist/types/net/connection.d.ts +1 -0
  10. package/packages/client/dist/types/net/connection.d.ts.map +1 -1
  11. package/packages/engine/dist/browser/index.global.js +16 -16
  12. package/packages/engine/dist/browser/index.global.js.map +1 -1
  13. package/packages/engine/dist/cjs/index.cjs +33 -35
  14. package/packages/engine/dist/cjs/index.cjs.map +1 -1
  15. package/packages/engine/dist/esm/index.js +33 -35
  16. package/packages/engine/dist/esm/index.js.map +1 -1
  17. package/packages/engine/dist/tsconfig.tsbuildinfo +1 -1
  18. package/packages/engine/dist/types/audio/constants.d.ts +1 -23
  19. package/packages/engine/dist/types/audio/constants.d.ts.map +1 -1
  20. package/packages/game/dist/browser/index.global.js +3 -3
  21. package/packages/game/dist/browser/index.global.js.map +1 -1
  22. package/packages/game/dist/cjs/index.cjs +65 -19
  23. package/packages/game/dist/cjs/index.cjs.map +1 -1
  24. package/packages/game/dist/esm/index.js +65 -19
  25. package/packages/game/dist/esm/index.js.map +1 -1
  26. package/packages/game/dist/tsconfig.tsbuildinfo +1 -1
  27. package/packages/game/dist/types/entities/monsters/actor.d.ts.map +1 -1
  28. package/packages/game/dist/types/entities/monsters/arachnid.d.ts.map +1 -1
  29. package/packages/game/dist/types/entities/system.d.ts +1 -0
  30. package/packages/game/dist/types/entities/system.d.ts.map +1 -1
  31. package/packages/game/dist/types/index.d.ts +2 -0
  32. package/packages/game/dist/types/index.d.ts.map +1 -1
  33. package/packages/shared/dist/browser/index.global.js +1 -1
  34. package/packages/shared/dist/browser/index.global.js.map +1 -1
  35. package/packages/shared/dist/cjs/index.cjs +53 -0
  36. package/packages/shared/dist/cjs/index.cjs.map +1 -1
  37. package/packages/shared/dist/esm/index.js +42 -0
  38. package/packages/shared/dist/esm/index.js.map +1 -1
  39. package/packages/shared/dist/tsconfig.tsbuildinfo +1 -1
  40. package/packages/shared/dist/types/audio/constants.d.ts +24 -0
  41. package/packages/shared/dist/types/audio/constants.d.ts.map +1 -0
  42. package/packages/shared/dist/types/index.d.ts +1 -0
  43. package/packages/shared/dist/types/index.d.ts.map +1 -1
  44. package/packages/tools/dist/tsconfig.tsbuildinfo +1 -1
@@ -9571,6 +9571,7 @@ _NetChan3.MAX_MSGLEN = 1400;
9571
9571
  _NetChan3.FRAGMENT_SIZE = 1024;
9572
9572
  _NetChan3.PACKET_HEADER = 10;
9573
9573
  _NetChan3.HEADER_OVERHEAD = _NetChan3.PACKET_HEADER + 2;
9574
+ var NetChan = _NetChan3;
9574
9575
  var AmmoType2 = /* @__PURE__ */ ((AmmoType22) => {
9575
9576
  AmmoType22[AmmoType22["Bullets"] = 0] = "Bullets";
9576
9577
  AmmoType22[AmmoType22["Shells"] = 1] = "Shells";
@@ -11598,6 +11599,7 @@ var MultiplayerConnection = class {
11598
11599
  this.commandHistory = [];
11599
11600
  this.driver = new BrowserWebSocketNetDriver();
11600
11601
  this.options = options;
11602
+ this.netchan = new NetChan();
11601
11603
  this.driver.onMessage((data) => this.handleMessage(data));
11602
11604
  this.driver.onClose(() => this.handleDisconnect());
11603
11605
  this.driver.onError((err2) => console.error("Network Error:", err2));
@@ -11608,6 +11610,7 @@ var MultiplayerConnection = class {
11608
11610
  }
11609
11611
  console.log(`Connecting to ${url}...`);
11610
11612
  this.state = 1 /* Connecting */;
11613
+ this.netchan.reset();
11611
11614
  try {
11612
11615
  await this.driver.connect(url);
11613
11616
  console.log("WebSocket connected.");
@@ -11639,13 +11642,12 @@ var MultiplayerConnection = class {
11639
11642
  this.commandHistory.shift();
11640
11643
  }
11641
11644
  const writer = new BinaryWriter2();
11642
- writer.writeLong(0);
11643
- writer.writeLong(0);
11644
11645
  writer.writeByte(ClientCommand.move);
11645
11646
  writer.writeByte(0);
11646
11647
  writer.writeLong(this.latestServerFrame);
11647
11648
  writeUserCommand(writer, commandWithFrame);
11648
- this.driver.send(writer.getData());
11649
+ const packet = this.netchan.transmit(writer.getData());
11650
+ this.driver.send(packet);
11649
11651
  }
11650
11652
  handleMessage(data) {
11651
11653
  let buffer = data.buffer;
@@ -11654,11 +11656,15 @@ var MultiplayerConnection = class {
11654
11656
  new Uint8Array(newBuffer).set(data);
11655
11657
  buffer = newBuffer;
11656
11658
  }
11657
- const stream = new BinaryStream2(buffer);
11658
- const sequence = stream.readLong();
11659
- const sequenceAck = stream.readLong();
11660
- this.parser = new NetworkMessageParser(stream, this);
11661
- this.parser.parseMessage();
11659
+ const processedData = this.netchan.process(new Uint8Array(buffer));
11660
+ if (!processedData) {
11661
+ return;
11662
+ }
11663
+ if (processedData.byteLength > 0) {
11664
+ const stream = new BinaryStream2(processedData.buffer);
11665
+ this.parser = new NetworkMessageParser(stream, this);
11666
+ this.parser.parseMessage();
11667
+ }
11662
11668
  }
11663
11669
  handleDisconnect() {
11664
11670
  console.log("Disconnected from server.");
@@ -11668,14 +11674,16 @@ var MultiplayerConnection = class {
11668
11674
  const builder = new NetworkMessageBuilder();
11669
11675
  builder.writeByte(ClientCommand.stringcmd);
11670
11676
  builder.writeString("getchallenge");
11671
- this.driver.send(builder.getData());
11677
+ const packet = this.netchan.transmit(builder.getData());
11678
+ this.driver.send(packet);
11672
11679
  }
11673
11680
  sendConnect(challenge) {
11674
11681
  const builder = new NetworkMessageBuilder();
11675
11682
  builder.writeByte(ClientCommand.stringcmd);
11676
11683
  const userinfo = `\\name\\${this.options.username}\\model\\${this.options.model}\\skin\\${this.options.skin}\\hand\\${this.options.hand ?? 0}\\fov\\${this.options.fov ?? 90}`;
11677
11684
  builder.writeString(`connect ${PROTOCOL_VERSION_RERELEASE} ${challenge} ${userinfo}`);
11678
- this.driver.send(builder.getData());
11685
+ const packet = this.netchan.transmit(builder.getData());
11686
+ this.driver.send(packet);
11679
11687
  }
11680
11688
  isConnected() {
11681
11689
  return this.state === 5 /* Active */;
@@ -11694,7 +11702,8 @@ var MultiplayerConnection = class {
11694
11702
  const builder = new NetworkMessageBuilder();
11695
11703
  builder.writeByte(ClientCommand.stringcmd);
11696
11704
  builder.writeString("new");
11697
- this.driver.send(builder.getData());
11705
+ const packet = this.netchan.transmit(builder.getData());
11706
+ this.driver.send(packet);
11698
11707
  this.state = 4 /* Loading */;
11699
11708
  }
11700
11709
  onConfigString(index, str3) {
@@ -11721,7 +11730,8 @@ var MultiplayerConnection = class {
11721
11730
  const builder = new NetworkMessageBuilder();
11722
11731
  builder.writeByte(ClientCommand.stringcmd);
11723
11732
  builder.writeString("begin");
11724
- this.driver.send(builder.getData());
11733
+ const packet = this.netchan.transmit(builder.getData());
11734
+ this.driver.send(packet);
11725
11735
  this.state = 5 /* Active */;
11726
11736
  }
11727
11737
  onFrame(frame) {