@vaitosoi/minejs 0.4.2 → 0.5.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.
Files changed (106) hide show
  1. package/README.md +53 -5
  2. package/assets/doc/rejected.png +0 -0
  3. package/assets/minecraft/26.2/effects.json +42 -0
  4. package/assets/minecraft/26.2/packets.json +3 -2
  5. package/dist/base/bitset.d.ts +43 -4
  6. package/dist/base/bitset.d.ts.map +1 -1
  7. package/dist/base/bitset.js +251 -30
  8. package/dist/base/bitset.js.map +1 -1
  9. package/dist/base/cache.d.ts +24 -0
  10. package/dist/base/cache.d.ts.map +1 -0
  11. package/dist/base/cache.js +58 -0
  12. package/dist/base/cache.js.map +1 -0
  13. package/dist/base/error.d.ts +13 -0
  14. package/dist/base/error.d.ts.map +1 -1
  15. package/dist/base/error.js +19 -1
  16. package/dist/base/error.js.map +1 -1
  17. package/dist/base/math.d.ts +12 -0
  18. package/dist/base/math.d.ts.map +1 -1
  19. package/dist/base/math.js +39 -0
  20. package/dist/base/math.js.map +1 -1
  21. package/dist/base/typing.d.ts +7 -0
  22. package/dist/base/typing.d.ts.map +1 -1
  23. package/dist/{packet → binary}/decoder.d.ts.map +1 -1
  24. package/dist/{packet → binary}/decoder.js.map +1 -1
  25. package/dist/{packet → binary}/encoder.d.ts +2 -2
  26. package/dist/binary/encoder.d.ts.map +1 -0
  27. package/dist/{packet → binary}/encoder.js +6 -2
  28. package/dist/binary/encoder.js.map +1 -0
  29. package/dist/{packet → binary}/static.d.ts.map +1 -1
  30. package/dist/{packet → binary}/static.js.map +1 -1
  31. package/dist/client/client.d.ts +23 -2
  32. package/dist/client/client.d.ts.map +1 -1
  33. package/dist/client/client.js +34 -19
  34. package/dist/client/client.js.map +1 -1
  35. package/dist/index.d.ts +12 -4
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +12 -4
  38. package/dist/index.js.map +1 -1
  39. package/dist/{client → net}/tcp.d.ts +2 -2
  40. package/dist/net/tcp.d.ts.map +1 -0
  41. package/dist/{client → net}/tcp.js +4 -2
  42. package/dist/net/tcp.js.map +1 -0
  43. package/dist/packet/{dispatcher.d.ts → listener.d.ts} +7 -18
  44. package/dist/packet/listener.d.ts.map +1 -0
  45. package/dist/packet/{dispatcher.js → listener.js} +73 -139
  46. package/dist/packet/listener.js.map +1 -0
  47. package/dist/packet/sender.d.ts +25 -0
  48. package/dist/packet/sender.d.ts.map +1 -0
  49. package/dist/packet/sender.js +144 -0
  50. package/dist/packet/sender.js.map +1 -0
  51. package/dist/physics/aabb.d.ts.map +1 -1
  52. package/dist/physics/aabb.js +9 -8
  53. package/dist/physics/aabb.js.map +1 -1
  54. package/dist/physics/player.d.ts +1 -0
  55. package/dist/physics/player.d.ts.map +1 -1
  56. package/dist/physics/player.js +22 -4
  57. package/dist/physics/player.js.map +1 -1
  58. package/dist/version/codec.d.ts +1 -1
  59. package/dist/version/codec.d.ts.map +1 -1
  60. package/dist/version/codec.js +28 -6
  61. package/dist/version/codec.js.map +1 -1
  62. package/dist/version/registry.d.ts +19 -2
  63. package/dist/version/registry.d.ts.map +1 -1
  64. package/dist/version/registry.js +35 -3
  65. package/dist/version/registry.js.map +1 -1
  66. package/dist/world/block.d.ts +5 -0
  67. package/dist/world/block.d.ts.map +1 -1
  68. package/dist/world/block.js +56 -0
  69. package/dist/world/block.js.map +1 -1
  70. package/dist/world/state.d.ts +22 -3
  71. package/dist/world/state.d.ts.map +1 -1
  72. package/dist/world/state.js +36 -12
  73. package/dist/world/state.js.map +1 -1
  74. package/package.json +8 -10
  75. package/src/base/bitset.ts +312 -31
  76. package/src/base/cache.ts +62 -0
  77. package/src/base/error.ts +16 -0
  78. package/src/base/math.ts +43 -1
  79. package/src/base/typing.ts +5 -0
  80. package/src/{packet → binary}/encoder.ts +6 -2
  81. package/src/client/client.ts +56 -23
  82. package/src/index.ts +12 -4
  83. package/src/{client → net}/tcp.ts +5 -3
  84. package/src/packet/{dispatcher.ts → listener.ts} +92 -177
  85. package/src/packet/sender.ts +176 -0
  86. package/src/physics/aabb.ts +9 -8
  87. package/src/physics/player.ts +20 -5
  88. package/src/version/codec.ts +29 -8
  89. package/src/version/registry.ts +58 -5
  90. package/src/world/block.ts +72 -2
  91. package/src/world/state.ts +59 -14
  92. package/test/bitset/index.ts +3 -8
  93. package/test/client/index.ts +23 -13
  94. package/test/state/index.ts +7 -0
  95. package/dist/client/tcp.d.ts.map +0 -1
  96. package/dist/client/tcp.js.map +0 -1
  97. package/dist/packet/dispatcher.d.ts.map +0 -1
  98. package/dist/packet/dispatcher.js.map +0 -1
  99. package/dist/packet/encoder.d.ts.map +0 -1
  100. package/dist/packet/encoder.js.map +0 -1
  101. /package/dist/{packet → binary}/decoder.d.ts +0 -0
  102. /package/dist/{packet → binary}/decoder.js +0 -0
  103. /package/dist/{packet → binary}/static.d.ts +0 -0
  104. /package/dist/{packet → binary}/static.js +0 -0
  105. /package/src/{packet → binary}/decoder.ts +0 -0
  106. /package/src/{packet → binary}/static.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/version/codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/version/codec.ts"],"names":[],"mappings":"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"}
@@ -51,16 +51,28 @@ export declare class BlockRegistry {
51
51
  */
52
52
  static getState(id: string): BlockState;
53
53
  }
54
+ export declare class EffectRegistry {
55
+ private static loaded;
56
+ static readonly effects: Record<string, number>;
57
+ /**
58
+ * Load effects registry from JSON file.
59
+ *
60
+ * Should be called once time
61
+ */
62
+ static load(version: string): Promise<void>;
63
+ }
54
64
  export declare const SupportTypes: z.ZodEnum<{
55
65
  angle: "angle";
56
66
  array: "array";
57
67
  bitset: "bitset";
58
68
  boolean: "boolean";
59
69
  byte: "byte";
70
+ byte_array: "byte_array";
60
71
  chat_type: "chat_type";
61
72
  chat_type_decoration: "chat_type_decoration";
62
73
  double: "double";
63
74
  enum: "enum";
75
+ fixed_bitset: "fixed_bitset";
64
76
  fixed_point: "fixed_point";
65
77
  float: "float";
66
78
  game_profile: "game_profile";
@@ -90,8 +102,8 @@ export declare const SupportTypes: z.ZodEnum<{
90
102
  var_long: "var_long";
91
103
  varies: "varies";
92
104
  }>;
93
- export type FieldNode = {
94
- type: Exclude<z.infer<typeof SupportTypes>, "prefixed_array" | "prefixed_optional" | "string" | "id_or_x" | "array" | "switch" | "fixed_point" | "enum" | "object" | "not_implemented">;
105
+ export type FieldNode = ({
106
+ type: Exclude<z.infer<typeof SupportTypes>, "prefixed_array" | "prefixed_optional" | "string" | "id_or_x" | "array" | "switch" | "fixed_point" | "enum" | "object" | "not_implemented" | "fixed_bitset" | "byte_array">;
95
107
  } | {
96
108
  type: "not_implemented";
97
109
  comment?: string | undefined;
@@ -121,6 +133,11 @@ export type FieldNode = {
121
133
  type: "fixed_point";
122
134
  subType: FieldNode;
123
135
  fractionBits: number;
136
+ } | {
137
+ type: "fixed_bitset" | "byte_array";
138
+ length: number;
139
+ }) & {
140
+ skip_able?: boolean | undefined;
124
141
  };
125
142
  export declare const Field: z.ZodType<FieldNode>;
126
143
  export declare const PacketObject: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,eAAO,MAAM,kBAAkB,QAAqD,CAAC;AACrF,eAAO,MAAM,eAAe,UAE3B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEzD,CAAC;AAEF,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAkB;IACvC,gBAAuB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAM;IAClG,gBAAuB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAElE;;;;OAIG;IACH,OAAoB,IAAI,CAAC,OAAO,EAAE,MAAM,iBAYvC;IAED;;OAEG;IACH,OAAc,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;gBAzBa,MAAM;eAAS,MAAM;cAAQ,MAAM;kBAgCxF;CACJ;AAED,qBAAa,aAAa;IACtB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAkB;IACvC;;OAEG;IACH,gBAAuB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAM;IAC1D;;OAEG;IACH,gBAAuB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;IAE/D;;;;OAIG;IACH,OAAoB,IAAI,CAAC,OAAO,EAAE,MAAM,iBAcvC;IAED;;OAEG;IACH,OAAc,QAAQ,CAAC,IAAI,EAAE,MAAM,SAIlC;IAED;;OAEG;IACH,OAAc,QAAQ,CAAC,EAAE,EAAE,MAAM,cAIhC;CACJ;AAED,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAkB;IAEvC,gBAAuB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAE5D;;;;OAIG;IACH,OAAoB,IAAI,CAAC,OAAO,EAAE,MAAM,iBAWvC;CACJ;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CvB,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,EACpC,gBAAgB,GAChB,mBAAmB,GACnB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,QAAQ,GACR,aAAa,GACb,MAAM,GACN,QAAQ,GACR,iBAAiB,GACjB,cAAc,GACd,YAAY,CACjB,CAAC;CACL,GAAG;IACA,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC/B,GAAG;IACA,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;CACpC,GAAG;IACA,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B,GAAG;IACA,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,mBAAmB,CAAC;IAC/C,OAAO,EAAE,SAAS,CAAA;CACrB,GAAG;IACA,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B,GAAG;IACA,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,SAAS,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B,GAAG;IACA,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CAClC,GAAG;IACA,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,SAAS,CAAC;IACnB,YAAY,EAAE,MAAM,CAAA;CACvB,GAAG;IACA,IAAI,EAAE,cAAc,GAAG,YAAY,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;CAClB,CAAC,GAAG;IACD,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAClC,CAAA;AACD,eAAO,MAAM,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAkFlC,CAAC;AACN,eAAO,MAAM,YAAY;;;;;iBAKvB,CAAC;AACH,eAAO,MAAM,iBAAiB;;;;;kBAAoD,CAAC;AACnF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;iBAG3B,CAAC;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM7B,CAAC;AAEH,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAkB;IACvC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAqC;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAMhB;IAEP;;;;OAIG;IACH,OAAoB,IAAI,CAAC,OAAO,EAAE,MAAM,iBAqBvC;IAED,OAAc,SAAS,CACnB,KAAK,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,EAC/C,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,EAC5C,EAAE,EAAE,MAAM,GAAG,MAAM,GACpB,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,GAAG,SAAS,CAY1C;CACJ"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PacketRegistry = exports.VersionDefinitions = exports.StatesDefinition = exports.PacketsDefinition = exports.PacketObject = exports.Field = exports.SupportTypes = exports.BlockRegistry = exports.EntityRegistry = exports.ProtocolVersionMapping = exports.SupportVersions = exports.BASE_REGISTRY_PATH = void 0;
6
+ exports.PacketRegistry = exports.VersionDefinitions = exports.StatesDefinition = exports.PacketsDefinition = exports.PacketObject = exports.Field = exports.SupportTypes = exports.EffectRegistry = exports.BlockRegistry = exports.EntityRegistry = exports.ProtocolVersionMapping = exports.SupportVersions = exports.BASE_REGISTRY_PATH = void 0;
7
7
  const promises_1 = require("node:fs/promises");
8
8
  const node_path_1 = require("node:path");
9
9
  const error_1 = require("../base/error");
@@ -102,6 +102,28 @@ class BlockRegistry {
102
102
  }
103
103
  exports.BlockRegistry = BlockRegistry;
104
104
  ;
105
+ class EffectRegistry {
106
+ static loaded = false;
107
+ static effects = {};
108
+ /**
109
+ * Load effects registry from JSON file.
110
+ *
111
+ * Should be called once time
112
+ */
113
+ static async load(version) {
114
+ if (!exports.SupportVersions.includes(version))
115
+ throw new error_1.VersionNotSupport(version);
116
+ if (this.loaded)
117
+ return;
118
+ this.loaded = true;
119
+ const file = await (0, promises_1.readFile)((0, node_path_1.join)(exports.BASE_REGISTRY_PATH, version, "effects.json"), { encoding: "utf8" });
120
+ const json = JSON.parse(file);
121
+ for (const [name, id] of Object.entries(json)) {
122
+ this.effects[name] = id;
123
+ }
124
+ }
125
+ }
126
+ exports.EffectRegistry = EffectRegistry;
105
127
  exports.SupportTypes = zod_1.default.enum([
106
128
  "byte",
107
129
  "unsigned_byte",
@@ -138,6 +160,8 @@ exports.SupportTypes = zod_1.default.enum([
138
160
  "heightmap",
139
161
  "teleport_flags",
140
162
  "bitset",
163
+ "fixed_bitset",
164
+ "byte_array",
141
165
  "null", // a constant
142
166
  /**
143
167
  * This is used for handle field that its type depends on previous field type, or value
@@ -146,7 +170,7 @@ exports.SupportTypes = zod_1.default.enum([
146
170
  ]);
147
171
  exports.Field = zod_1.default.union([
148
172
  zod_1.default.object({
149
- type: exports.SupportTypes.exclude(["prefixed_array", "prefixed_optional", "string", "id_or_x", "array", "switch", "fixed_point", "enum", "not_implemented", "object"]),
173
+ type: exports.SupportTypes.exclude(["prefixed_array", "prefixed_optional", "string", "id_or_x", "array", "switch", "fixed_point", "enum", "not_implemented", "object", "fixed_bitset", "byte_array"]),
150
174
  }),
151
175
  zod_1.default.object({
152
176
  type: zod_1.default.literal(["not_implemented"]),
@@ -216,7 +240,15 @@ exports.Field = zod_1.default.union([
216
240
  subType: zod_1.default.lazy(() => exports.Field),
217
241
  fractionBits: zod_1.default.number()
218
242
  }),
219
- ]);
243
+ zod_1.default.object({
244
+ // These type require predefined-length
245
+ type: zod_1.default.union([zod_1.default.literal("fixed_bitset"), zod_1.default.literal("byte_array")]),
246
+ length: zod_1.default.int()
247
+ })
248
+ ])
249
+ .and(zod_1.default.object({
250
+ skip_able: zod_1.default.boolean().optional()
251
+ }));
220
252
  exports.PacketObject = zod_1.default.object({
221
253
  name: zod_1.default.string(),
222
254
  id: zod_1.default.number(),
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,11 @@ export declare class BlockManager {
47
47
  */
48
48
  at(x: number, y: number, z: number): BlockState | null;
49
49
  at(position: BaseVec3): BlockState | null;
50
+ private getBlock;
51
+ private getWithCache;
52
+ deleteChunkCache(sx: number, sy: number, sz: number): void;
53
+ private getWithoutCache;
54
+ private getLocalPosKey;
50
55
  /**
51
56
  * Query the entity in the section that intersec with BB
52
57
  * @param queryBB The querying bounding box
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../src/world/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../src/world/block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC;;GAEG;AACH,qBAAa,UAAU;IAIR,KAAK,EAAE,KAAK;IACZ,EAAE,EAAE,MAAM;IACV,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC/B,KAAK,EAAE,QAAQ,EAAE;IANrB,KAAK,EAAE,UAAU,CAAC;IAEzB,YACW,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,KAAK,EAAE,QAAQ,EAAE,EAW3B;IAED,OAAO,CAAC,GAAG;IAOJ,SAAS,IAAI,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAA+B;CAChG;AAED;;GAEG;AACH,qBAAa,KAAK;IAIH,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,MAAM,CAAC,MAAM,GAAG,gBAAgB,GAAG,MAAM,EAAE,GAAG,CAAC;IAC5D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IALxC,MAAM,EAAE,UAAU,EAAE,CAAC;IAE5B,YACW,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,CAAC,MAAM,GAAG,gBAAgB,GAAG,MAAM,EAAE,GAAG,CAAC,EAC5D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAC3C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,UAAU,EAAE,EAQ7C;IAED,OAAO,CAAC,GAAG;IAOJ,OAAO,OAAgC;IACvC,WAAW,WAAwC;IACnD,aAAa,WAAwC;IACrD,cAAc,WAA0C;IACxD,YAAY,YAA2C;IACvD,aAAa,WAAyC;CAChE;AAED;;GAEG;AACH,qBAAa,YAAY;IACT,OAAO,CAAC,KAAK;IAAzB,YAAoB,KAAK,EAAE,WAAW,EAAK;IAE3C;;OAEG;IACI,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACrD,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAc/C;;OAEG;IACI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;IACvD,EAAE,CAAC,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC;IAcjD,OAAO,CAAC,QAAQ;IAGhB,OAAO,CAAC,YAAY;IA0Cb,gBAAgB,CACnB,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAKrC;IAED,OAAO,CAAC,eAAe;IAqBvB,OAAO,CAAC,cAAc;IAItB;;;;OAIG;IACI,SAAS,CAAC,OAAO,EAAE,IAAI,gBAkB7B;CACJ;AAED,UAAU,OAAO;IACb,aAAa,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,UAAU,CAAC;IAClD,IAAI,EAAE,IAAI,CAAC;IACX,EAAE,EAAE,IAAI,CAAA;CACX;AAED;;;;GAIG;AACH,qBAAa,WAAW;IACpB,OAAc,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,yBAcxD;IAED,OAAc,cAAc,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,EACvC,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,IAAI,EACR,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,KAAK,CAAC,EAC/C,WAAW,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAkDrC;CACJ;AAED;;;;GAIG;AACH,qBAAa,cAAc;IAEZ,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,IAAI;IACd,SAAS,EAAE,SAAS;IACpB,GAAG,EAAE,QAAQ;IAJxB,YACW,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,QAAQ,EACnB;IAEL,OAAc,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,kBAEpE;IAED,OAAc,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,kBAErE;CACJ"}
@@ -5,6 +5,7 @@ const aabb_1 = require("../physics/aabb");
5
5
  const math_1 = require("../base/math");
6
6
  const registry_1 = require("../version/registry");
7
7
  const direction_1 = require("../physics/direction");
8
+ const error_1 = require("../base/error");
8
9
  /**
9
10
  * Represent a state of a block
10
11
  */
@@ -91,6 +92,58 @@ class BlockManager {
91
92
  z = Math.floor(z);
92
93
  const sx = Math.floor(x / 16), sy = Math.floor((y + 64) / 16), sz = Math.floor(z / 16);
93
94
  const px = ((x % 16) + 16) % 16, py = ((y % 16) + 16) % 16, pz = ((z % 16) + 16) % 16;
95
+ if (this.state.cache)
96
+ return this.getWithCache(sx, sy, sz, px, py, pz);
97
+ else
98
+ return this.getWithoutCache(sx, sy, sz, px, py, pz);
99
+ }
100
+ getBlock(stateId) {
101
+ return registry_1.BlockRegistry.getState(String(stateId));
102
+ }
103
+ getWithCache(sx, sy, sz, px, py, pz) {
104
+ if (!this.state.cache)
105
+ throw new error_1.NotImplemented();
106
+ const localPos = { x: px, y: py, z: pz };
107
+ const sectionKey = `${this.state.player.dimension}:${sx}:${sy}:${sz}`;
108
+ const sectionCache = this.state.cache.get(sectionKey);
109
+ if (sectionCache) {
110
+ const cachedState = sectionCache.at(this.getLocalPosKey(localPos));
111
+ if (cachedState) {
112
+ console.log("cache hit", sectionKey, localPos);
113
+ return this.getBlock(cachedState);
114
+ }
115
+ }
116
+ console.log("cache miss", sectionKey, localPos);
117
+ const section = this.state.world.chunks[`${this.state.player.dimension}:${sx}:${sz}`]?.sections[sy]?.block;
118
+ if (!section)
119
+ return null;
120
+ if (section.data === null)
121
+ return registry_1.BlockRegistry.getState(section.palette[0].toString());
122
+ const arr = new Uint16Array(16 * 16 * 16);
123
+ const dataArray = section.data;
124
+ const bitsPerEntry = section.bpe;
125
+ const entriesPerLong = Math.floor(64 / bitsPerEntry);
126
+ const entryMask = (1 << bitsPerEntry) - 1;
127
+ for (let localX = 0; localX < 16; localX++)
128
+ for (let localY = 0; localY < 16; localY++)
129
+ for (let localZ = 0; localZ < 16; localZ++) {
130
+ const entryIndex = this.getLocalPosKey({ x: localX, y: localY, z: localZ });
131
+ const longIndex = Math.floor(entryIndex / entriesPerLong);
132
+ const bit_index = entryIndex % entriesPerLong * bitsPerEntry;
133
+ const localId = Number((dataArray[longIndex] >> BigInt(bit_index)) & BigInt(entryMask));
134
+ const stateId = bitsPerEntry <= 8 ? section.palette[localId] : localId;
135
+ arr[entryIndex] = stateId;
136
+ }
137
+ this.state.cache.put(sectionKey, arr);
138
+ const state = arr.at(this.getLocalPosKey(localPos));
139
+ return this.getBlock(state);
140
+ }
141
+ deleteChunkCache(sx, sy, sz) {
142
+ const sectionKey = `${this.state.player.dimension}:${sx}:${sy}:${sz}`;
143
+ if (this.state.cache)
144
+ this.state.cache.del(sectionKey);
145
+ }
146
+ getWithoutCache(sx, sy, sz, px, py, pz) {
94
147
  const section = this.state.world.chunks[`${this.state.player.dimension}:${sx}:${sz}`]?.sections[sy]?.block;
95
148
  if (!section)
96
149
  return null;
@@ -107,6 +160,9 @@ class BlockManager {
107
160
  const stateId = bitsPerEntry <= 8 ? section.palette[localId] : localId;
108
161
  return registry_1.BlockRegistry.getState(String(stateId));
109
162
  }
163
+ getLocalPosKey(pos) {
164
+ return pos.x + 16 * (pos.y + 16 * pos.z);
165
+ }
110
166
  /**
111
167
  * Query the entity in the section that intersec with BB
112
168
  * @param queryBB The querying bounding box
@@ -1 +1 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["../../src/world/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../../src/world/block.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { ClientEvents, ClientOption } from "../client/client";
5
5
  import { AuthClient } from "../client/auth";
6
6
  import { MessageLink } from "../message/link";
7
7
  import { SignatureCache } from "../message/sigCache";
8
+ import { CacheImplementation } from "../base/cache";
8
9
  export interface Server {
9
10
  knownPacks?: ServerKnownPack;
10
11
  }
@@ -64,6 +65,21 @@ export interface BlockEntity {
64
65
  type: number;
65
66
  data: Record<string, any>;
66
67
  }
68
+ export interface Effect {
69
+ id: number;
70
+ amplifier: number;
71
+ duration: number;
72
+ flag: {
73
+ isAmbient: boolean;
74
+ showParticles: boolean;
75
+ showIcon: boolean;
76
+ blend: boolean;
77
+ };
78
+ /**
79
+ * The epoch ms when the effect update packet is recieved, for validating duration
80
+ */
81
+ date: number;
82
+ }
67
83
  /** Represent an entity */
68
84
  export interface Entity {
69
85
  id: number;
@@ -93,6 +109,7 @@ export interface ClientPlayer {
93
109
  angle: Angle;
94
110
  /** Current dimension */
95
111
  dimension: string;
112
+ effects: Record<number, Effect>;
96
113
  }
97
114
  export declare enum ClientStatus {
98
115
  Disconnected = 0,
@@ -126,7 +143,7 @@ export declare class SharedState<IsReady extends boolean = boolean> {
126
143
  clientOptions: ClientOption;
127
144
  private mutationQueue;
128
145
  private eventQueue;
129
- private sendQueue;
146
+ private packetQueue;
130
147
  state: ConnectionState;
131
148
  status: ClientStatus;
132
149
  compressionThreshold: number;
@@ -145,6 +162,8 @@ export declare class SharedState<IsReady extends boolean = boolean> {
145
162
  registry: Record<string, ServerRegistryEntry[]> | undefined;
146
163
  world: If<IsReady, ServerWorld>;
147
164
  player: If<IsReady, ClientPlayer>;
165
+ messageCount: number;
166
+ cache: CacheImplementation<Uint16Array> | undefined;
148
167
  /**
149
168
  * For maintaining message order.
150
169
  *
@@ -169,7 +188,7 @@ export declare class SharedState<IsReady extends boolean = boolean> {
169
188
  enqueueEvent<K extends keyof ClientEvents>(event: K, ...args: ClientEvents[K]): void;
170
189
  enqueueEvent(event: EmittedEvent): void;
171
190
  drainMutation(): void;
172
- drainEvent(): EmittedEvent[];
173
- drainPacket(): SendingPacket[];
191
+ drainEvent(consumer: (event: EmittedEvent) => void): void;
192
+ drainPacket(consumer: (packet: SendingPacket) => void): void;
174
193
  }
175
194
  //# sourceMappingURL=state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/world/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/world/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAY,MAAM,eAAe,CAAC;AAE9D,MAAM,WAAW,MAAM;IACnB,UAAU,CAAC,EAAE,eAAe,CAAA;CAC/B;AAED,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,0BAA0B;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,qBAAqB;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACvC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CAC7C;AAED,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,KAAK,EAAE,gBAAgB,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;CAC9B;AAED,+BAA+B;AAC/B,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B;AAED,MAAM,WAAW,MAAM;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE;QACF,SAAS,EAAE,OAAO,CAAC;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,KAAK,EAAE,OAAO,CAAA;KACjB,CAAC;IACF;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;CACf;AAED,0BAA0B;AAC1B,MAAM,WAAW,MAAM;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,MAAM,CAAA;CACf;AAED,oBAAY,QAAQ;IAChB,QAAQ,IAAI;IACZ,QAAQ,IAAI;IACZ,SAAS,IAAI;IACb,SAAS,IAAI;CAChB;AAED,MAAM,WAAW,YAAY;IACzB,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC;IAEb,wBAAwB;IACxB,SAAS,EAAE,MAAM,CAAC;IAElB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC;AAED,oBAAY,YAAY;IACpB,YAAY,IAAA;IACZ,UAAU,IAAA;IACV,QAAQ,IAAA;IACR,KAAK,IAAA;CACR;AAED,oBAAY,eAAe;IACvB,YAAY,IAAA;IACZ,SAAS,IAAA;IACT,KAAK,IAAA;IACL,SAAS,IAAA;IACT,IAAI,IAAA;CACP;AAED,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG;KACtB,CAAC,IAAI,MAAM,YAAY,GAAG;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;KAAE;CACjE,CAAC,MAAM,YAAY,CAAC,CAAA;AACrB,MAAM,MAAM,aAAa,GAAG;IACxB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B,CAAA;AAED,qBAAa,WAAW,CAAC,OAAO,SAAS,OAAO,GAAG,OAAO;IAyC3C,aAAa,EAAE,YAAY;IAxCtC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,WAAW,CAAuB;IAEnC,KAAK,EAAE,eAAe,CAAgC;IACtD,MAAM,EAAE,YAAY,CAA6B;IACjD,oBAAoB,EAAE,MAAM,CAAK;IAGjC,UAAU,EAAE,UAAU,GAAG,SAAS,CAAa;IAC/C,UAAU,EAAE,MAAM,GAAG,SAAS,CAAa;IAC3C,SAAS,EAAE,MAAM,GAAG,SAAS,CAAa;IAC1C,SAAS,EAAE,MAAM,GAAG,SAAS,CAAa;IAC1C,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAa;IAE3D,OAAO,CAAC,wBAAwB,CAAyC;IAElE,YAAY,EAAE,MAAM,GAAG,SAAS,CAAa;IAC7C,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAa;IACzC,QAAQ,EAAE,UAAU,GAAG,SAAS,CAAa;IAC7C,aAAa,EAAE,OAAO,CAAS;IAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAa;IAE1C,MAAM,EAAE,MAAM,GAAG,SAAS,CAAa;IACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,GAAG,SAAS,CAAa;IACxE,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAe;IAC9C,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAe;IAChD,YAAY,EAAE,MAAM,CAAK;IAEzB,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,GAAG,SAAS,CAAa;IAEvE;;;;OAIG;IACI,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,SAAS,CAAa;IAClE,qBAAqB,EAAE,cAAc,GAAG,SAAS,CAAa;IAErE,YACW,aAAa,EAAE,YAAY,EAQrC;IAEM,OAAO,IAAI,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,CAE1C;IAEM,UAAU,SAGhB;IAEM,WAAW,SA0CjB;IAEM,YAAY;;;MAOlB;YAEa,cAAc;IAQf,kBAAkB,kBAM9B;IACM,iBAAiB,SAEvB;IAEM,eAAe,CAAC,QAAQ,EAAE,WAAW,QAAwC;IAE7E,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACjD,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAA;IAW1C,YAAY,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IACpF,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAA;IAWvC,aAAa,SAQnB;IACM,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,QAQxD;IACM,WAAW,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,QAQ3D;CACJ"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SharedState = exports.ConnectionState = exports.ClientStatus = exports.GameMode = void 0;
4
4
  const error_1 = require("../base/error");
5
5
  const sigCache_1 = require("../message/sigCache");
6
+ const cache_1 = require("../base/cache");
6
7
  var GameMode;
7
8
  (function (GameMode) {
8
9
  GameMode[GameMode["Survival"] = 0] = "Survival";
@@ -29,7 +30,7 @@ class SharedState {
29
30
  clientOptions;
30
31
  mutationQueue = [];
31
32
  eventQueue = [];
32
- sendQueue = [];
33
+ packetQueue = [];
33
34
  state = ConnectionState.Disconnected;
34
35
  status = ClientStatus.Disconnected;
35
36
  compressionThreshold = 0;
@@ -50,6 +51,8 @@ class SharedState {
50
51
  registry = undefined;
51
52
  world = null;
52
53
  player = null;
54
+ messageCount = 0;
55
+ cache = undefined;
53
56
  /**
54
57
  * For maintaining message order.
55
58
  *
@@ -59,6 +62,12 @@ class SharedState {
59
62
  messageSignatureCache = undefined;
60
63
  constructor(clientOptions) {
61
64
  this.clientOptions = clientOptions;
65
+ if (this.clientOptions.loadAndCacheChunk) {
66
+ if (this.clientOptions.cacheImplementation)
67
+ this.cache = new this.clientOptions.cacheImplementation();
68
+ else
69
+ this.cache = new cache_1.LRUCache(32);
70
+ }
62
71
  }
63
72
  isReady() {
64
73
  return this.status === ClientStatus.Ready;
@@ -70,7 +79,7 @@ class SharedState {
70
79
  pruneStates() {
71
80
  this.mutationQueue = [];
72
81
  this.eventQueue = [];
73
- this.sendQueue = [];
82
+ this.packetQueue = [];
74
83
  this.state = ConnectionState.Disconnected;
75
84
  this.status = ClientStatus.Disconnected;
76
85
  this.compressionThreshold = 0;
@@ -88,6 +97,7 @@ class SharedState {
88
97
  this.registry = undefined;
89
98
  this.world = undefined;
90
99
  this.player = undefined;
100
+ this.messageCount = 0;
91
101
  if (this.clientOptions.shouldVerifyMessageSignature)
92
102
  this.messageSignatureCache = sigCache_1.SignatureCache.default();
93
103
  else
@@ -96,6 +106,12 @@ class SharedState {
96
106
  this.messageLinks = {};
97
107
  else
98
108
  this.messageLinks = undefined;
109
+ if (this.clientOptions.loadAndCacheChunk) {
110
+ if (this.clientOptions.cacheImplementation)
111
+ this.cache = new this.clientOptions.cacheImplementation();
112
+ else
113
+ this.cache = new cache_1.LRUCache(32);
114
+ }
99
115
  }
100
116
  getSignature() {
101
117
  if (this.publicKey && this.signature)
@@ -123,12 +139,12 @@ class SharedState {
123
139
  enqueueMutation(mutation) { this.mutationQueue.push(mutation); }
124
140
  enqueuePacket(packet, data) {
125
141
  if (typeof packet === "string")
126
- this.sendQueue.push({
142
+ this.packetQueue.push({
127
143
  id: packet,
128
144
  data: data
129
145
  });
130
146
  else
131
- this.sendQueue.push(packet);
147
+ this.packetQueue.push(packet);
132
148
  }
133
149
  enqueueEvent(event, ...args) {
134
150
  if (typeof event === "string")
@@ -148,15 +164,23 @@ class SharedState {
148
164
  break;
149
165
  }
150
166
  }
151
- drainEvent() {
152
- const events = structuredClone(this.eventQueue);
153
- this.eventQueue = [];
154
- return events;
167
+ drainEvent(consumer) {
168
+ while (true) {
169
+ const event = this.eventQueue.shift();
170
+ if (event)
171
+ consumer(event);
172
+ else
173
+ break;
174
+ }
155
175
  }
156
- drainPacket() {
157
- const packets = structuredClone(this.sendQueue);
158
- this.sendQueue = [];
159
- return packets;
176
+ drainPacket(consumer) {
177
+ while (true) {
178
+ const packet = this.packetQueue.shift();
179
+ if (packet)
180
+ consumer(packet);
181
+ else
182
+ break;
183
+ }
160
184
  }
161
185
  }
162
186
  exports.SharedState = SharedState;
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/world/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/world/state.ts"],"names":[],"mappings":"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"}