@jsprismarine/protocol 0.16.0-unstable-20261031080506 → 0.16.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
@@ -1,6 +1,6 @@
1
1
  # @jsprismarine/protocol
2
2
 
3
- ## 0.16.0-unstable-20261031080506
3
+ ## 0.16.0
4
4
 
5
5
  ### Minor Changes
6
6
 
@@ -130,6 +130,8 @@
130
130
 
131
131
  - [#2633](https://github.com/JSPrismarine/JSPrismarine/pull/2633) [`2f86764`](https://github.com/JSPrismarine/JSPrismarine/commit/2f86764d56a7e9ae5038854c27dd8fc9b3dfd0de) Thanks [@filiphsps](https://github.com/filiphsps)! - Move LevelChunkPacket into Protocol with versioned fields
132
132
 
133
+ - [#2656](https://github.com/JSPrismarine/JSPrismarine/pull/2656) [`1606252`](https://github.com/JSPrismarine/JSPrismarine/commit/16062522d82a4d15282a6bdf4bb027394cacd3e6) Thanks [@filiphsps](https://github.com/filiphsps)! - Carry `Cloud Height` and `Render Clouds` in `DimensionDefinition` at protocol 2225. The structure is now a declarative field list gated by `SINCE_2225`, and `DimensionDataPacket` writes and reads each definition in the layout of the connection's protocol version. The `DimensionDefinition` constructor gains `cloudHeight` and `renderClouds` after `defaultBiome`, both defaulted, and `serialize`/`deserialize` accept an optional protocol version that defaults to 2193.
134
+
133
135
  - [#2628](https://github.com/JSPrismarine/JSPrismarine/pull/2628) [`2c459cd`](https://github.com/JSPrismarine/JSPrismarine/commit/2c459cd2ab8822f0364c1ce8e473cf0487b294a8) Thanks [@filiphsps](https://github.com/filiphsps)! - Project Java tool rules to Bedrock digger data
134
136
 
135
137
  - [#2633](https://github.com/JSPrismarine/JSPrismarine/pull/2633) [`c776757`](https://github.com/JSPrismarine/JSPrismarine/commit/c77675747b1bb4ef14e48c28dda0865bdd232ad2) Thanks [@filiphsps](https://github.com/filiphsps)! - Move the packet stream base into the protocol package.
@@ -303,15 +305,15 @@
303
305
  - [#2633](https://github.com/JSPrismarine/JSPrismarine/pull/2633) [`1b92d98`](https://github.com/JSPrismarine/JSPrismarine/commit/1b92d984399f419962640740bfd8f689a3c5c5d3) Thanks [@filiphsps](https://github.com/filiphsps)! - Move the spawn experience orb packet implementation into the protocol package.
304
306
 
305
307
  - [#2633](https://github.com/JSPrismarine/JSPrismarine/pull/2633) [`20a16d1`](https://github.com/JSPrismarine/JSPrismarine/commit/20a16d1aec16579eaf25b61f7eeffd261408ef3b) Thanks [@filiphsps](https://github.com/filiphsps)! - Move command permission and difficulty packet codecs into the protocol package.
306
- - Updated dependencies [[`f5ea701`](https://github.com/JSPrismarine/JSPrismarine/commit/f5ea701bd7297d63eb524be1d4b76c07cf204569), [`d5dc760`](https://github.com/JSPrismarine/JSPrismarine/commit/d5dc760107a1dbc9c5ba9eb5fc9fb544d725c02d), [`c140ef6`](https://github.com/JSPrismarine/JSPrismarine/commit/c140ef6e3072eb97c7a8b123876ea08726ed9910), [`91a7a0b`](https://github.com/JSPrismarine/JSPrismarine/commit/91a7a0bfac2eac8c81961d5263e54b53dc0c3fc5), [`ea083fb`](https://github.com/JSPrismarine/JSPrismarine/commit/ea083fb8d67d0c285724b73bf94b41947afc4013), [`f33a57c`](https://github.com/JSPrismarine/JSPrismarine/commit/f33a57c3750488f1ed77a441ab26b7c1086eff68), [`f3fa1c6`](https://github.com/JSPrismarine/JSPrismarine/commit/f3fa1c6bf9096223ac9d2b0396bcc71cd04e244e), [`57f252b`](https://github.com/JSPrismarine/JSPrismarine/commit/57f252b2781508290fac2e842cf37fb652467d66), [`d4afedd`](https://github.com/JSPrismarine/JSPrismarine/commit/d4afeddfc1a6016173261b800813e9f248208db8), [`89a02c8`](https://github.com/JSPrismarine/JSPrismarine/commit/89a02c81dd66293ab2b303851aad61c891535081), [`bfb9a31`](https://github.com/JSPrismarine/JSPrismarine/commit/bfb9a31a40c8173f1b811ee63b2308f357c47fd0), [`b3a2a6f`](https://github.com/JSPrismarine/JSPrismarine/commit/b3a2a6f2d8baca370c541439257bfb4dc4786902), [`b6eccf4`](https://github.com/JSPrismarine/JSPrismarine/commit/b6eccf49493ed702c5c13eb831ad9fa54258a47d), [`e17199e`](https://github.com/JSPrismarine/JSPrismarine/commit/e17199e28be25659495b398dc05d6a48baa2b593), [`18f0d0c`](https://github.com/JSPrismarine/JSPrismarine/commit/18f0d0ca7bfb691c75d2d2453eb21b0126e4a4e3), [`d4a2a0b`](https://github.com/JSPrismarine/JSPrismarine/commit/d4a2a0b2787e171583e6db0aec1b750e8aeb1e95), [`9f58b70`](https://github.com/JSPrismarine/JSPrismarine/commit/9f58b7012e39f08ef869149252312f3617c5d057), [`440e164`](https://github.com/JSPrismarine/JSPrismarine/commit/440e164b88f43548c9c4fe8ae896387157f21701), [`2c459cd`](https://github.com/JSPrismarine/JSPrismarine/commit/2c459cd2ab8822f0364c1ce8e473cf0487b294a8), [`d220519`](https://github.com/JSPrismarine/JSPrismarine/commit/d220519e2e460148a90cbde9d643033e27bf8f5e), [`e678a6a`](https://github.com/JSPrismarine/JSPrismarine/commit/e678a6a48dd00568f1186f37f2d460b1c898f059), [`28b5c00`](https://github.com/JSPrismarine/JSPrismarine/commit/28b5c00af0d5377e7030e82d409b6def544619ba), [`a540a4c`](https://github.com/JSPrismarine/JSPrismarine/commit/a540a4cc5879f62d5d3b39d59100200af8e3d313), [`a4abb61`](https://github.com/JSPrismarine/JSPrismarine/commit/a4abb61b7a03101b4f22ebab35da281066530430), [`2d20fee`](https://github.com/JSPrismarine/JSPrismarine/commit/2d20fee23b5fd58cf78dfa12b266f074dab110b8), [`bbda9ea`](https://github.com/JSPrismarine/JSPrismarine/commit/bbda9ea5c0ed57fe60e93c25d6131234a7e8e049), [`f198a15`](https://github.com/JSPrismarine/JSPrismarine/commit/f198a156a8c307c941efd01a4bd4604eba0f5626), [`c1591b1`](https://github.com/JSPrismarine/JSPrismarine/commit/c1591b1e567a51dc80ecbbdfdbdc8e7c7f4f6c42), [`08de1ba`](https://github.com/JSPrismarine/JSPrismarine/commit/08de1bac21f3c5785a02649e4faa11d9a11f82b0), [`ef12ef8`](https://github.com/JSPrismarine/JSPrismarine/commit/ef12ef8dee0fb445a80811306d20c44aabeb237d), [`5e47439`](https://github.com/JSPrismarine/JSPrismarine/commit/5e474396321b54f696760962ceb9d24b85917640), [`9d93172`](https://github.com/JSPrismarine/JSPrismarine/commit/9d931725e8d48fab773c2fe9f659b2f3e1d26325), [`f0584a3`](https://github.com/JSPrismarine/JSPrismarine/commit/f0584a381c6bab5c61e5aa2cd3782218bc8d74e7), [`0d1512e`](https://github.com/JSPrismarine/JSPrismarine/commit/0d1512e0d028a2644883407b03ff20fe7c224633), [`4ab02e5`](https://github.com/JSPrismarine/JSPrismarine/commit/4ab02e5cf76b88f09ba19106e971337c1da2d1b9), [`b96ce93`](https://github.com/JSPrismarine/JSPrismarine/commit/b96ce93238f3efd66c709f213cd8d5d42fc8f425), [`a3db50e`](https://github.com/JSPrismarine/JSPrismarine/commit/a3db50eef709e1d2e3848d71383d6801d5f69773), [`cc8b110`](https://github.com/JSPrismarine/JSPrismarine/commit/cc8b1109b9c174940cdd4549615a05affb459b9a), [`ef39583`](https://github.com/JSPrismarine/JSPrismarine/commit/ef395830d28b1b242b20a7246c8bb6ec781f5f4c), [`35e7df5`](https://github.com/JSPrismarine/JSPrismarine/commit/35e7df54b5bba03f65c9e3a972bac32b01ba4fe4), [`13792da`](https://github.com/JSPrismarine/JSPrismarine/commit/13792daea4f024f559c9392e93328694db22e164), [`8b1bf1b`](https://github.com/JSPrismarine/JSPrismarine/commit/8b1bf1b337e7cb9e1d8f61d8df8b42e2b2badcb6), [`bffe7a8`](https://github.com/JSPrismarine/JSPrismarine/commit/bffe7a89abe4151001fe7a8c323f5ce31ad55d1c), [`23450ee`](https://github.com/JSPrismarine/JSPrismarine/commit/23450ee6e61092c05e2cebeca492c95b28e8da0d), [`cd01052`](https://github.com/JSPrismarine/JSPrismarine/commit/cd01052548178421cd323b316d77d87374cee9dc)]:
307
- - @jsprismarine/minecraft@0.16.0-unstable-20261031080506
308
- - @jsprismarine/items@0.16.0-unstable-20261031080506
309
- - @jsprismarine/blocks@0.16.0-unstable-20261031080506
310
- - @jsprismarine/content@0.16.0-unstable-20261031080506
311
- - @jsprismarine/nbt@0.16.0-unstable-20261031080506
312
- - @jsprismarine/recipes@0.16.0-unstable-20261031080506
313
- - @jsprismarine/binaryutils@0.16.0-unstable-20261031080506
314
- - @jsprismarine/math@0.16.0-unstable-20261031080506
308
+ - Updated dependencies [[`f5ea701`](https://github.com/JSPrismarine/JSPrismarine/commit/f5ea701bd7297d63eb524be1d4b76c07cf204569), [`d5dc760`](https://github.com/JSPrismarine/JSPrismarine/commit/d5dc760107a1dbc9c5ba9eb5fc9fb544d725c02d), [`c140ef6`](https://github.com/JSPrismarine/JSPrismarine/commit/c140ef6e3072eb97c7a8b123876ea08726ed9910), [`91a7a0b`](https://github.com/JSPrismarine/JSPrismarine/commit/91a7a0bfac2eac8c81961d5263e54b53dc0c3fc5), [`ea083fb`](https://github.com/JSPrismarine/JSPrismarine/commit/ea083fb8d67d0c285724b73bf94b41947afc4013), [`f33a57c`](https://github.com/JSPrismarine/JSPrismarine/commit/f33a57c3750488f1ed77a441ab26b7c1086eff68), [`f3fa1c6`](https://github.com/JSPrismarine/JSPrismarine/commit/f3fa1c6bf9096223ac9d2b0396bcc71cd04e244e), [`57f252b`](https://github.com/JSPrismarine/JSPrismarine/commit/57f252b2781508290fac2e842cf37fb652467d66), [`d4afedd`](https://github.com/JSPrismarine/JSPrismarine/commit/d4afeddfc1a6016173261b800813e9f248208db8), [`89a02c8`](https://github.com/JSPrismarine/JSPrismarine/commit/89a02c81dd66293ab2b303851aad61c891535081), [`bfb9a31`](https://github.com/JSPrismarine/JSPrismarine/commit/bfb9a31a40c8173f1b811ee63b2308f357c47fd0), [`b3a2a6f`](https://github.com/JSPrismarine/JSPrismarine/commit/b3a2a6f2d8baca370c541439257bfb4dc4786902), [`b6eccf4`](https://github.com/JSPrismarine/JSPrismarine/commit/b6eccf49493ed702c5c13eb831ad9fa54258a47d), [`e17199e`](https://github.com/JSPrismarine/JSPrismarine/commit/e17199e28be25659495b398dc05d6a48baa2b593), [`18f0d0c`](https://github.com/JSPrismarine/JSPrismarine/commit/18f0d0ca7bfb691c75d2d2453eb21b0126e4a4e3), [`d4a2a0b`](https://github.com/JSPrismarine/JSPrismarine/commit/d4a2a0b2787e171583e6db0aec1b750e8aeb1e95), [`9f58b70`](https://github.com/JSPrismarine/JSPrismarine/commit/9f58b7012e39f08ef869149252312f3617c5d057), [`440e164`](https://github.com/JSPrismarine/JSPrismarine/commit/440e164b88f43548c9c4fe8ae896387157f21701), [`2c459cd`](https://github.com/JSPrismarine/JSPrismarine/commit/2c459cd2ab8822f0364c1ce8e473cf0487b294a8), [`d220519`](https://github.com/JSPrismarine/JSPrismarine/commit/d220519e2e460148a90cbde9d643033e27bf8f5e), [`e678a6a`](https://github.com/JSPrismarine/JSPrismarine/commit/e678a6a48dd00568f1186f37f2d460b1c898f059), [`28b5c00`](https://github.com/JSPrismarine/JSPrismarine/commit/28b5c00af0d5377e7030e82d409b6def544619ba), [`a540a4c`](https://github.com/JSPrismarine/JSPrismarine/commit/a540a4cc5879f62d5d3b39d59100200af8e3d313), [`a4abb61`](https://github.com/JSPrismarine/JSPrismarine/commit/a4abb61b7a03101b4f22ebab35da281066530430), [`2d20fee`](https://github.com/JSPrismarine/JSPrismarine/commit/2d20fee23b5fd58cf78dfa12b266f074dab110b8), [`bbda9ea`](https://github.com/JSPrismarine/JSPrismarine/commit/bbda9ea5c0ed57fe60e93c25d6131234a7e8e049), [`f198a15`](https://github.com/JSPrismarine/JSPrismarine/commit/f198a156a8c307c941efd01a4bd4604eba0f5626), [`c1591b1`](https://github.com/JSPrismarine/JSPrismarine/commit/c1591b1e567a51dc80ecbbdfdbdc8e7c7f4f6c42), [`08de1ba`](https://github.com/JSPrismarine/JSPrismarine/commit/08de1bac21f3c5785a02649e4faa11d9a11f82b0), [`ef12ef8`](https://github.com/JSPrismarine/JSPrismarine/commit/ef12ef8dee0fb445a80811306d20c44aabeb237d), [`5e47439`](https://github.com/JSPrismarine/JSPrismarine/commit/5e474396321b54f696760962ceb9d24b85917640), [`fc10888`](https://github.com/JSPrismarine/JSPrismarine/commit/fc10888391866037519afbf8e057d4ecece48757), [`6bac6b1`](https://github.com/JSPrismarine/JSPrismarine/commit/6bac6b173e5e283b4e6e3d106268319caa51ed40), [`9d93172`](https://github.com/JSPrismarine/JSPrismarine/commit/9d931725e8d48fab773c2fe9f659b2f3e1d26325), [`f0584a3`](https://github.com/JSPrismarine/JSPrismarine/commit/f0584a381c6bab5c61e5aa2cd3782218bc8d74e7), [`0d1512e`](https://github.com/JSPrismarine/JSPrismarine/commit/0d1512e0d028a2644883407b03ff20fe7c224633), [`4ab02e5`](https://github.com/JSPrismarine/JSPrismarine/commit/4ab02e5cf76b88f09ba19106e971337c1da2d1b9), [`b96ce93`](https://github.com/JSPrismarine/JSPrismarine/commit/b96ce93238f3efd66c709f213cd8d5d42fc8f425), [`a3db50e`](https://github.com/JSPrismarine/JSPrismarine/commit/a3db50eef709e1d2e3848d71383d6801d5f69773), [`cc8b110`](https://github.com/JSPrismarine/JSPrismarine/commit/cc8b1109b9c174940cdd4549615a05affb459b9a), [`ef39583`](https://github.com/JSPrismarine/JSPrismarine/commit/ef395830d28b1b242b20a7246c8bb6ec781f5f4c), [`35e7df5`](https://github.com/JSPrismarine/JSPrismarine/commit/35e7df54b5bba03f65c9e3a972bac32b01ba4fe4), [`13792da`](https://github.com/JSPrismarine/JSPrismarine/commit/13792daea4f024f559c9392e93328694db22e164), [`8b1bf1b`](https://github.com/JSPrismarine/JSPrismarine/commit/8b1bf1b337e7cb9e1d8f61d8df8b42e2b2badcb6), [`a645006`](https://github.com/JSPrismarine/JSPrismarine/commit/a645006caa290b45c728b7ad87435249091cbd56), [`bffe7a8`](https://github.com/JSPrismarine/JSPrismarine/commit/bffe7a89abe4151001fe7a8c323f5ce31ad55d1c), [`23450ee`](https://github.com/JSPrismarine/JSPrismarine/commit/23450ee6e61092c05e2cebeca492c95b28e8da0d), [`cd01052`](https://github.com/JSPrismarine/JSPrismarine/commit/cd01052548178421cd323b316d77d87374cee9dc)]:
309
+ - @jsprismarine/minecraft@0.16.0
310
+ - @jsprismarine/items@0.16.0
311
+ - @jsprismarine/blocks@0.16.0
312
+ - @jsprismarine/content@0.16.0
313
+ - @jsprismarine/nbt@0.16.0
314
+ - @jsprismarine/recipes@0.16.0
315
+ - @jsprismarine/binaryutils@0.16.0
316
+ - @jsprismarine/math@0.16.0
315
317
 
316
318
  ## 0.15.2
317
319
 
@@ -179,6 +179,7 @@ const require_packet_ContainerRegistryCleanupPacket = require("./packet/Containe
179
179
  const require_packet_CreatePhotoPacket = require("./packet/CreatePhotoPacket.cjs.cjs");
180
180
  const require_packet_CurrentStructureFeaturePacket = require("./packet/CurrentStructureFeaturePacket.cjs.cjs");
181
181
  const require_packet_DeathInfoPacket = require("./packet/DeathInfoPacket.cjs.cjs");
182
+ const require_wire_structures_DimensionDefinition = require("./wire/structures/DimensionDefinition.cjs.cjs");
182
183
  const require_structure_DimensionDefinition = require("./structure/DimensionDefinition.cjs.cjs");
183
184
  const require_packet_DimensionDataPacket = require("./packet/DimensionDataPacket.cjs.cjs");
184
185
  const require_packet_EditorNetworkPacket = require("./packet/EditorNetworkPacket.cjs.cjs");
@@ -923,6 +924,7 @@ exports.createProtocolCodecRegistry = require_ProtocolCodecRegistry.createProtoc
923
924
  exports.creativeCategoryOf = require_packet_CreativeContentPacket.creativeCategoryOf;
924
925
  exports.defaultStructureSettings = require_structure_StructureSettings.defaultStructureSettings;
925
926
  exports.definePacket = require_wire_define.definePacket;
927
+ exports.dimensionDefinition = require_wire_structures_DimensionDefinition.dimensionDefinition;
926
928
  exports.disconnectPacket = require_wire_definitions_disconnect.disconnectPacket;
927
929
  exports.emotePacket = require_wire_definitions_player.emotePacket;
928
930
  exports.emptyItemStackDescriptor = require_wire_structures_ItemStackDescriptor.emptyItemStackDescriptor;
@@ -961,6 +963,7 @@ exports.playerListPacket = require_wire_definitions_playerList.playerListPacket;
961
963
  exports.playerSkinPacket = require_wire_definitions_playerSkin.playerSkinPacket;
962
964
  exports.readCraftingData = require_packet_CraftingDataPacket.readCraftingData;
963
965
  exports.readCreativeContent = require_packet_CreativeContentPacket.readCreativeContent;
966
+ exports.readDimensionDefinition = require_wire_structures_DimensionDefinition.readDimensionDefinition;
964
967
  exports.readInventoryAction = require_wire_structures_InventoryTransaction.readInventoryAction;
965
968
  exports.readItemStackDescriptor = require_wire_structures_ItemStackDescriptor.readItemStackDescriptor;
966
969
  exports.readItemStackRequest = require_wire_structures_ItemStackRequest.readItemStackRequest;
@@ -1049,6 +1052,7 @@ exports.wireDefinitions = require_wire_definitions_index.wireDefinitions;
1049
1052
  exports.writeBlockStateNbt = require_BlockRuntimeId.writeBlockStateNbt;
1050
1053
  exports.writeCraftingData = require_packet_CraftingDataPacket.writeCraftingData;
1051
1054
  exports.writeCreativeContent = require_packet_CreativeContentPacket.writeCreativeContent;
1055
+ exports.writeDimensionDefinition = require_wire_structures_DimensionDefinition.writeDimensionDefinition;
1052
1056
  exports.writeInventoryAction = require_wire_structures_InventoryTransaction.writeInventoryAction;
1053
1057
  exports.writeItemStackDescriptor = require_wire_structures_ItemStackDescriptor.writeItemStackDescriptor;
1054
1058
  exports.writeItemStackRequest = require_wire_structures_ItemStackRequest.writeItemStackRequest;
package/dist/index.d.ts CHANGED
@@ -90,4 +90,6 @@ export type { FullContainerName, ItemStackRequest, ItemStackRequestAction, ItemS
90
90
  export { HandSlot, hasLegacyRequest, InventorySourceType, ItemReleaseActionType, ItemUseActionType, ItemUseOnActorActionType, LegacySlotChange, MAX_INVENTORY_ACTIONS, readInventoryAction, readUseItemData, TransactionType, writeInventoryAction, writeUseItemData } from './wire/structures/InventoryTransaction';
91
91
  export type { InventoryActionData, LegacyTransactionRequest, ReleaseItemData, TransactionData, TransactionPayload, UseItemData, UseItemOnEntityData } from './wire/structures/InventoryTransaction';
92
92
  export * from './wire/structures/PlayerAuthInput';
93
+ export { dimensionDefinition, readDimensionDefinition, writeDimensionDefinition } from './wire/structures/DimensionDefinition';
94
+ export type { DimensionDefinitionFields } from './wire/structures/DimensionDefinition';
93
95
  //# sourceMappingURL=index.d.ts.map
@@ -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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"}
package/dist/index.es.js CHANGED
@@ -177,6 +177,7 @@ import ContainerRegistryCleanupPacket from "./packet/ContainerRegistryCleanupPac
177
177
  import CreatePhotoPacket from "./packet/CreatePhotoPacket.es.js";
178
178
  import CurrentStructureFeaturePacket from "./packet/CurrentStructureFeaturePacket.es.js";
179
179
  import DeathInfoPacket from "./packet/DeathInfoPacket.es.js";
180
+ import { dimensionDefinition, readDimensionDefinition, writeDimensionDefinition } from "./wire/structures/DimensionDefinition.es.js";
180
181
  import DimensionDefinition from "./structure/DimensionDefinition.es.js";
181
182
  import DimensionDataPacket from "./packet/DimensionDataPacket.es.js";
182
183
  import EditorNetworkPacket from "./packet/EditorNetworkPacket.es.js";
@@ -362,4 +363,4 @@ import { disconnectPacket } from "./wire/definitions/disconnect.es.js";
362
363
  import { requestNetworkSettingsPacket } from "./wire/definitions/networkSettings.es.js";
363
364
  import { playStatusPacket } from "./wire/definitions/playStatus.es.js";
364
365
  import { wireDefinitions } from "./wire/definitions/index.es.js";
365
- export { ANY_META, AbilityLayer, AbilityLayerFlag, AbilityLayerType, AchievementId, ActorEvent, ActorEventPacket, ActorLink, ActorLinkType, ActorPickRequestPacket, ActorSyncMessage, AddActorPacket, AddBehaviorTreePacket, AddItemActorPacket, AddPaintingPacket, AddPlayerPacket, AddVolumeEntityPacket, AgentActionEventPacket, AgentActionType, AgentAnimation, AgentAnimationPacket, AimAssistTargetMode, AnimateAction, AnimateEntityPacket, AnimateHand, AnimatePacket, AnimationMode, AnvilDamagePacket, ArmorSlot, AttributeDataType, AttributeLayerData, AttributeLayerSettings, AttributeLayerSyncDataType, AudioContentPlaybackType, AutomationClientConnectPacket, AvailableActorIdentifiersPacket, AvailableCommandsPacket, AwardAchievementPacket, BATCH_PACKET_ID, BatchCodec, BiomeDefinitionListPacket, BlockActorDataPacket, BlockEventPacket, BlockPickRequestPacket, BlockPos, BookEditAction, BookEditPacket, BoolAttributeOperation, BossBarColor, BossBarOverlay, BossEventPacket, BossEventUpdateType, CameraAimAssistAction, CameraAimAssistActorPriorityPacket, CameraAimAssistCategoryDefinition, CameraAimAssistCategoryPriorities, CameraAimAssistPacket, CameraAimAssistPresetDefinition, CameraAimAssistPresetsOperation, CameraAimAssistPresetsPacket, CameraAimAssistTargetMode, CameraAudioListener, CameraInstruction, CameraInstructionPacket, CameraPacket, CameraPreset, CameraPresetsPacket, CameraShakeAction, CameraShakePacket, CameraShakeType, CameraSplineDefinition, CameraSplinePacket, CameraSplineType, ChangeDimensionPacket, ChangeMobPropertyPacket, ChunkPos, ChunkRadiusUpdatedPacket, ClientCacheBlobStatusPacket, ClientCacheMissResponsePacket, ClientCacheStatusPacket, ClientCameraAimAssistAction, ClientCameraAimAssistPacket, ClientInputLock, ClientMovementPredictionSyncPacket, ClientPlayMode, ClientStoreEntryPointConfig, ClientToServerHandshakePacket, ClientboundAttributeLayerSyncPacket, ClientboundCloseFormPacket, ClientboundControlSchemeSetPacket, ClientboundDataDrivenUICloseScreenPacket, ClientboundDataDrivenUIReloadPacket, ClientboundDataDrivenUIShowScreenPacket, ClientboundDataStorePacket, ClientboundDebugRendererPacket, ClientboundMapItemDataPacket, ClientboundMatchmakingStatePacket, ClientboundPlayAudioContentPacket, ClientboundStonecutterSetRecipePacket, ClientboundTextureShiftPacket, ClientboundUpdateSoundDataPacket, CodeBuilderCategory, CodeBuilderCodeStatus, CodeBuilderOperation, CodeBuilderPacket, CodeBuilderSourcePacket, ColorAttributeOperation, CommandArgumentType, CommandBlockMode, CommandBlockUpdatePacket, CommandChainedSubcommand, CommandData, CommandEnum, CommandEnumConstraint, CommandOutputPacket, CommandOutputType, CommandParameter, CommandParameterFlags, CommandParameterType, CommandParameterTypeFlag, CommandRequestPacket, CompletedUsingItemPacket, CompressionCodec, CompressionThreshold, ContainerClosePacket, ContainerOpenPacket, ContainerRegistryCleanupPacket, ContainerSetDataPacket, ContainerUiId, ControlScheme, CorrectPlayerMovePredictionPacket, CraftingDataPacket, CreatePhotoPacket, CreativeContentPacket, CreativeItemCategory, CreditsState, CurrentStructureFeaturePacket, CursorItemDragState, DEFAULT_COMPRESSION_LEVEL, DEFAULT_MAX_DECOMPRESSED_LENGTH, DataDrivenScreenClosedReason, DataItem, DataStoreEntryType, DataStorePropertyType, DataStoreUpdate, DataStoreValueType, DeathInfoPacket, DebugInfoPacket, DebugRendererType, DimensionDataPacket, DimensionDefinition, DisconnectPacket, EMPTY_ITEM_STACK_ID, EasingType, EditorLevelMigrationVersion, EditorNetworkPacket, EduSharedUriResource, EduUriResourcePacket, EducationSettingsPacket, EmoteFlags, EmoteListPacket, EmotePacket, EnchantType, EncryptionCodec, EntityOverrideUpdateType, EnvironmentAttributeData, Experiments, FeatureRegistryPacket, FloatAttributeOperation, FullContainerName, FurnaceLayout, FurnaceLeftTabIndex, FurnaceType, GameRuleType, GameRulesChangedPacket, GameTestRequestPacket, GameTestResultsPacket, GraphicsMode, GraphicsOverrideParameterPacket, GraphicsOverrideParameterType, GuiDataPickItemPacket, HANDSHAKE_PACKET_NAMES, HandSlot, HeightMapDataType, HudElement, HudVisibility, HurtArmorPacket, INPUT_FLAG_COUNT, InputMode, InteractAction, InteractPacket, InventoryContentPacket, InventoryLayout, InventoryLeftTab, InventoryRightTab, InventorySlotPacket, InventorySourceType, InventoryTransactionPacket, ItemData, ItemInstanceUserData, ItemRegistryPacket, ItemReleaseActionType, ItemStack, ItemStackRequestActionType, ItemStackRequestPacket, ItemStackResponsePacket, ItemStackResponseResult, ItemUseActionType, ItemUseMethod, ItemUseOnActorActionType, ItemVersion, JigsawStructureDataPacket, LabTablePacket, LabTableReactionType, LabTableType, LecternUpdatePacket, LegacySlotChange, LegacyTelemetryEventDataOrdinal, LegacyTelemetryEventPacket, LegacyTelemetryEventType, LessonAction, LessonProgressPacket, LevelChunkPacket, LevelEventGenericPacket, LevelEventPacket, LevelSettings, LevelSoundEventPacket, LocatorBarPacket, LocatorBarWaypointPayload, LoginPacket, MAX_BLOCK_ACTIONS, MAX_CLIENT_PIXELS, MAX_INVENTORY_ACTIONS, MapCreateLockedCopyPacket, MapDecorationType, MapInfoRequestPacket, MapItemTrackedActorType, MatchmakingState, Mirror, MobArmorEquipmentPacket, MobEffectEvent, MobEffectPacket, MobEquipmentPacket, ModalFormCancelReason, ModalFormRequestPacket, ModalFormResponsePacket, MotionPredictionHintsPacket, MoveActorAbsolutePacket, MoveActorDeltaPacket, MovePlayerPacket, MovementEffectPacket, MovementEffectType, MultiplayerSettingsPacket, MultiplayerSettingsPacketType, NetworkBinaryStream, NetworkChunkPublisherUpdatePacket, NetworkItemStackDescriptor, NetworkPacket, NetworkSettingsPacket, NetworkStackLatencyPacket, NetworkStructure, NewInteractionModel, NoiseAlignment, NoiseAlignmentType, NpcDialogueActionType, NpcDialoguePacket, NpcRequestPacket, NpcRequestType, ObjectiveSortOrder, OnScreenTextureAnimationPacket, OpenSignPacket, PackSettingValueType, PackType, PacketIdentifier, PacketViolationSeverity, PacketViolationType, PacketViolationWarningPacket, packet_exports as Packets, PartyChangedPacket, PartyDestinationCookieIntent, PartyDestinationCookieResponsePacket, PhotoTransferPacket, PhotoType, PlaySoundPacket, PlayStatus, PlayStatusPacket, PlayerActionPacket, PlayerActionType, PlayerArmorDamagePacket, PlayerAuthInputData, PlayerAuthInputPacket, PlayerEnchantOptionsPacket, PlayerFogPacket, PlayerHotbarPacket, PlayerListAction, PlayerListEntry, PlayerListPacket, PlayerLocationPacket, PlayerLocationPacketType, PlayerPartyInfo, PlayerSkinPacket, PlayerStartItemCooldownPacket, PlayerToggleCrafterSlotRequestPacket, PlayerUpdateEntityOverridesPacket, PlayerVideoCaptureAction, PlayerVideoCapturePacket, PositionMode, PositionTrackingDBClientRequestAction, PositionTrackingDBClientRequestPacket, PositionTrackingDBServerBroadcastAction, PositionTrackingDBServerBroadcastPacket, PresenceConfig, PrimitiveShapeData, PrimitiveShapeExtraDataType, PrimitiveShapeType, PrimitiveShapesPacket, PropertySyncData, ProtocolVersions, PurchaseReceiptPacket, RecipeIngredient, RecipeUnlockingContext, RecordStartedPacket, RefreshEntitlementsPacket, RemoveActorPacket, RemoveObjectivePacket, RemoveVolumeEntityPacket, RequestAbilityPacket, RequestAbilityValueType, RequestChunkRadiusPacket, RequestNetworkSettingsPacket, RequestPermissionsPacket, ResourcePackChunkDataPacket, ResourcePackChunkRequestPacket, ResourcePackClientResponsePacket, ResourcePackDataInfoPacket, ResourcePackStackPacket, ResourcePackStatus, ResourcePacksInfoPacket, ResourcePacksReadyForValidationPacket, RespawnPacket, RewindType, Rotation, SINCE_2225, ScorePacketEntryAction, ScoreboardIdentityPacketType, ScriptMessagePacket, SendPartyDestinationCookiePacket, SerializableVoxelShape, SerializedAbilitiesData, SerializedAbilityLayer, ServerPlayerPostMovePositionPacket, ServerPresenceInfoPacket, ServerSettingsRequestPacket, ServerSettingsResponsePacket, ServerStatsPacket, ServerStoreInfoPacket, ServerToClientHandshakePacket, ServerWaypointGroupAction, ServerWaypointPayload, ServerboundCursorItemDragPacket, ServerboundDataDrivenScreenClosedPacket, ServerboundDataStorePacket, ServerboundDiagnosticsPacket, ServerboundLoadingScreenPacket, ServerboundLoadingScreenPacketType, ServerboundMatchmakingCancelPacket, ServerboundPackSettingChangePacket, ServerboundRegisterAudioContentPacket, ServerboundStonecutterSetRecipePacket, SetActorDataPacket, SetActorLinkPacket, SetActorMotionPacket, SetCommandsEnabledPacket, SetDefaultGameTypePacket, SetDifficultyPacket, SetDisplayObjectivePacket, SetHealthPacket, SetHudPacket, SetLastHurtByPacket, SetLocalPlayerAsInitializedPacket, SetPassengerOfBlockPacket, SetPlayerFurnaceOptionsPacket, SetPlayerGameTypePacket, SetPlayerInventoryOptionsPacket, SetScorePacket, SetScoreboardIdentityPacket, SetSpawnPositionPacket, SetTimePacket, SetTitlePacket, SettingsCommandPacket, ShowCreditsPacket, ShowProfilePacket, ShowStoreOfferPacket, ShowStoreOfferRedirectType, SimpleEventPacket, SimpleEventSubtype, SimulationType, SimulationTypePacket, SoftEnumUpdateType, SoundDataUpdateType, SoundName, SpawnExperienceOrbPacket, SpawnParticleEffectPacket, SpawnPositionType, SpawnSettings, StartGamePacket, StopSoundPacket, structure_exports as Structure, StructureBlockType, StructureBlockUpdatePacket, StructureRedstoneSaveMode, StructureRotation, StructureTemplateDataRequestPacket, StructureTemplateDataResponsePacket, StructureTemplateRequestOperation, StructureTemplateResponseType, SubChunkHeightmapData, SubChunkPacket, SubChunkPos, SubChunkPosOffset, SubChunkRequestPacket, SubChunkRequestResult, SubClientLoginPacket, SyncActorPropertyPacket, SyncWorldClocksDataType, SyncWorldClocksPacket, SyncedPlayerMovementSettings, TakeItemActorPacket, TextPacket, TextPacketType, TextureShiftAction, TickingAreasLoadStatusPacket, ToastRequestPacket, TransactionType, TransferPacket, TrimDataPacket, UNCOMPRESSED_BATCH, UNKNOWN_BLOCK_NAME, UNKNOWN_RUNTIME_ID, UNTIL_2225, UUID, UnlockedRecipesPacket, UnlockedRecipesType, UpdateAbilitiesPacket, UpdateAdventureSettingsPacket, UpdateAttributesPacket, UpdateBlockFlagsType, UpdateBlockLayerType, UpdateBlockPacket, UpdateBlockSyncedPacket, UpdateClientInputLocksPacket, UpdateClientOptionsPacket, UpdateEquipPacket, UpdatePlayerGameTypePacket, UpdateSoftEnumPacket, UpdateSubChunkBlocksPacket, UpdateSubChunkNetworkBlockInfo, UpdateTradePacket, Vec2, Vec3, VoxelShapesPacket, actorEventPacket, actorLinks, addActorPacket, addItemActorPacket, addPlayerPacket, animatePacket, availableActorIdentifiersPacket, biomeDefinitionListPacket, blockActorDataPacket, blockRuntimeId, blockRuntimeIdOf, blockStateCompound, bossEventPacket, buildCodecRegistry, byteRotation, cameraAimAssistPresetsPacket, cameraPresetsPacket, changeDimensionPacket, chunkRadiusUpdatedPacket, clientCacheStatusPacket, clientToServerHandshakePacket, clientboundMatchmakingStatePacket, clientboundPlayAudioContentPacket, clientboundStonecutterSetRecipePacket, commandOutputMessage, commandOutputPacket, commandOutputType, commandRequestPacket, containerClosePacket, containerOpenPacket, containerSetDataPacket, createHandshakeCodec, createProtocolCodec, createProtocolCodecRegistry, creativeCategoryOf, defaultStructureSettings, definePacket, disconnectPacket, emotePacket, emptyItemStackDescriptor, fnv1a32, fullContainerName, gameRulesChangedPacket, gated, hasLegacyRequest, interactPacket, inventoryContentPacket, inventorySlotPacket, inventoryTransactionPacket, isEasingFunction, isGated, jigsawStructureDataPacket, layoutAt, levelChunkPacket, levelEventGenericPacket, levelSoundEventPacket, mobEffectPacket, mobEquipmentPacket, modalFormRequestPacket, modalFormResponsePacket, moveActorAbsolutePacket, movePlayerPacket, networkChunkPublisherUpdatePacket, networkNbtCompound, networkSettingsPacket, onScreenTextureAnimationPacket, playSoundPacket, playStatusPacket, playerActionPacket, playerFogPacket, playerHotbarPacket, playerListPacket, playerSkinPacket, readCraftingData, readCreativeContent, readInventoryAction, readItemStackDescriptor, readItemStackRequest, readPacketId, readPlayerAuthInput, readStructureSettings, readUseItemData, recipeUuidFor, removeActorPacket, removeObjectivePacket, requestChunkRadiusPacket, requestNetworkSettingsPacket, resourcePackChunkDataPacket, resourcePackChunkRequestPacket, resourcePackClientResponsePacket, resourcePackDataInfoPacket, resourcePackResponse, resourcePackStackPacket, resourcePacksInfoPacket, respawnPacket, scorePacketEntry, scoreboardIdentityInfo, serverSettingsRequestPacket, serverToClientHandshakePacket, serverboundCursorItemDragPacket, serverboundMatchmakingCancelPacket, serverboundRegisterAudioContentPacket, serverboundStonecutterSetRecipePacket, setActorDataPacket, setActorLinkPacket, setActorMotionPacket, setCommandsEnabledPacket, setDifficultyPacket, setDisplayObjectivePacket, setHealthPacket, setLocalPlayerAsInitializedPacket, setPassengerOfBlockPacket, setPlayerGameTypePacket, setScorePacket, setScoreboardIdentityPacket, setSpawnPositionPacket, setTimePacket, setTitlePacket, showCreditsPacket, since, spawnParticleEffectPacket, startGamePacket, stopSoundPacket, structureTypes_exports as structureTypes, syncActorPropertyPacket, fieldTypes_exports as t, takeItemActorPacket, textPacket, trimDataPacket, until, updateAbilitiesPacket, updateAdventureSettingsPacket, updateAttributesPacket, updateBlockPacket, updatePlayerGameTypePacket, updateSubChunkBlocksPacket, v2193_exports as v2193, v2225_exports as v2225, voxelShapesPacket, wireDefinitions, writeBlockStateNbt, writeCraftingData, writeCreativeContent, writeInventoryAction, writeItemStackDescriptor, writeItemStackRequest, writePlayerAuthInput, writeStructureSettings, writeUseItemData };
366
+ export { ANY_META, AbilityLayer, AbilityLayerFlag, AbilityLayerType, AchievementId, ActorEvent, ActorEventPacket, ActorLink, ActorLinkType, ActorPickRequestPacket, ActorSyncMessage, AddActorPacket, AddBehaviorTreePacket, AddItemActorPacket, AddPaintingPacket, AddPlayerPacket, AddVolumeEntityPacket, AgentActionEventPacket, AgentActionType, AgentAnimation, AgentAnimationPacket, AimAssistTargetMode, AnimateAction, AnimateEntityPacket, AnimateHand, AnimatePacket, AnimationMode, AnvilDamagePacket, ArmorSlot, AttributeDataType, AttributeLayerData, AttributeLayerSettings, AttributeLayerSyncDataType, AudioContentPlaybackType, AutomationClientConnectPacket, AvailableActorIdentifiersPacket, AvailableCommandsPacket, AwardAchievementPacket, BATCH_PACKET_ID, BatchCodec, BiomeDefinitionListPacket, BlockActorDataPacket, BlockEventPacket, BlockPickRequestPacket, BlockPos, BookEditAction, BookEditPacket, BoolAttributeOperation, BossBarColor, BossBarOverlay, BossEventPacket, BossEventUpdateType, CameraAimAssistAction, CameraAimAssistActorPriorityPacket, CameraAimAssistCategoryDefinition, CameraAimAssistCategoryPriorities, CameraAimAssistPacket, CameraAimAssistPresetDefinition, CameraAimAssistPresetsOperation, CameraAimAssistPresetsPacket, CameraAimAssistTargetMode, CameraAudioListener, CameraInstruction, CameraInstructionPacket, CameraPacket, CameraPreset, CameraPresetsPacket, CameraShakeAction, CameraShakePacket, CameraShakeType, CameraSplineDefinition, CameraSplinePacket, CameraSplineType, ChangeDimensionPacket, ChangeMobPropertyPacket, ChunkPos, ChunkRadiusUpdatedPacket, ClientCacheBlobStatusPacket, ClientCacheMissResponsePacket, ClientCacheStatusPacket, ClientCameraAimAssistAction, ClientCameraAimAssistPacket, ClientInputLock, ClientMovementPredictionSyncPacket, ClientPlayMode, ClientStoreEntryPointConfig, ClientToServerHandshakePacket, ClientboundAttributeLayerSyncPacket, ClientboundCloseFormPacket, ClientboundControlSchemeSetPacket, ClientboundDataDrivenUICloseScreenPacket, ClientboundDataDrivenUIReloadPacket, ClientboundDataDrivenUIShowScreenPacket, ClientboundDataStorePacket, ClientboundDebugRendererPacket, ClientboundMapItemDataPacket, ClientboundMatchmakingStatePacket, ClientboundPlayAudioContentPacket, ClientboundStonecutterSetRecipePacket, ClientboundTextureShiftPacket, ClientboundUpdateSoundDataPacket, CodeBuilderCategory, CodeBuilderCodeStatus, CodeBuilderOperation, CodeBuilderPacket, CodeBuilderSourcePacket, ColorAttributeOperation, CommandArgumentType, CommandBlockMode, CommandBlockUpdatePacket, CommandChainedSubcommand, CommandData, CommandEnum, CommandEnumConstraint, CommandOutputPacket, CommandOutputType, CommandParameter, CommandParameterFlags, CommandParameterType, CommandParameterTypeFlag, CommandRequestPacket, CompletedUsingItemPacket, CompressionCodec, CompressionThreshold, ContainerClosePacket, ContainerOpenPacket, ContainerRegistryCleanupPacket, ContainerSetDataPacket, ContainerUiId, ControlScheme, CorrectPlayerMovePredictionPacket, CraftingDataPacket, CreatePhotoPacket, CreativeContentPacket, CreativeItemCategory, CreditsState, CurrentStructureFeaturePacket, CursorItemDragState, DEFAULT_COMPRESSION_LEVEL, DEFAULT_MAX_DECOMPRESSED_LENGTH, DataDrivenScreenClosedReason, DataItem, DataStoreEntryType, DataStorePropertyType, DataStoreUpdate, DataStoreValueType, DeathInfoPacket, DebugInfoPacket, DebugRendererType, DimensionDataPacket, DimensionDefinition, DisconnectPacket, EMPTY_ITEM_STACK_ID, EasingType, EditorLevelMigrationVersion, EditorNetworkPacket, EduSharedUriResource, EduUriResourcePacket, EducationSettingsPacket, EmoteFlags, EmoteListPacket, EmotePacket, EnchantType, EncryptionCodec, EntityOverrideUpdateType, EnvironmentAttributeData, Experiments, FeatureRegistryPacket, FloatAttributeOperation, FullContainerName, FurnaceLayout, FurnaceLeftTabIndex, FurnaceType, GameRuleType, GameRulesChangedPacket, GameTestRequestPacket, GameTestResultsPacket, GraphicsMode, GraphicsOverrideParameterPacket, GraphicsOverrideParameterType, GuiDataPickItemPacket, HANDSHAKE_PACKET_NAMES, HandSlot, HeightMapDataType, HudElement, HudVisibility, HurtArmorPacket, INPUT_FLAG_COUNT, InputMode, InteractAction, InteractPacket, InventoryContentPacket, InventoryLayout, InventoryLeftTab, InventoryRightTab, InventorySlotPacket, InventorySourceType, InventoryTransactionPacket, ItemData, ItemInstanceUserData, ItemRegistryPacket, ItemReleaseActionType, ItemStack, ItemStackRequestActionType, ItemStackRequestPacket, ItemStackResponsePacket, ItemStackResponseResult, ItemUseActionType, ItemUseMethod, ItemUseOnActorActionType, ItemVersion, JigsawStructureDataPacket, LabTablePacket, LabTableReactionType, LabTableType, LecternUpdatePacket, LegacySlotChange, LegacyTelemetryEventDataOrdinal, LegacyTelemetryEventPacket, LegacyTelemetryEventType, LessonAction, LessonProgressPacket, LevelChunkPacket, LevelEventGenericPacket, LevelEventPacket, LevelSettings, LevelSoundEventPacket, LocatorBarPacket, LocatorBarWaypointPayload, LoginPacket, MAX_BLOCK_ACTIONS, MAX_CLIENT_PIXELS, MAX_INVENTORY_ACTIONS, MapCreateLockedCopyPacket, MapDecorationType, MapInfoRequestPacket, MapItemTrackedActorType, MatchmakingState, Mirror, MobArmorEquipmentPacket, MobEffectEvent, MobEffectPacket, MobEquipmentPacket, ModalFormCancelReason, ModalFormRequestPacket, ModalFormResponsePacket, MotionPredictionHintsPacket, MoveActorAbsolutePacket, MoveActorDeltaPacket, MovePlayerPacket, MovementEffectPacket, MovementEffectType, MultiplayerSettingsPacket, MultiplayerSettingsPacketType, NetworkBinaryStream, NetworkChunkPublisherUpdatePacket, NetworkItemStackDescriptor, NetworkPacket, NetworkSettingsPacket, NetworkStackLatencyPacket, NetworkStructure, NewInteractionModel, NoiseAlignment, NoiseAlignmentType, NpcDialogueActionType, NpcDialoguePacket, NpcRequestPacket, NpcRequestType, ObjectiveSortOrder, OnScreenTextureAnimationPacket, OpenSignPacket, PackSettingValueType, PackType, PacketIdentifier, PacketViolationSeverity, PacketViolationType, PacketViolationWarningPacket, packet_exports as Packets, PartyChangedPacket, PartyDestinationCookieIntent, PartyDestinationCookieResponsePacket, PhotoTransferPacket, PhotoType, PlaySoundPacket, PlayStatus, PlayStatusPacket, PlayerActionPacket, PlayerActionType, PlayerArmorDamagePacket, PlayerAuthInputData, PlayerAuthInputPacket, PlayerEnchantOptionsPacket, PlayerFogPacket, PlayerHotbarPacket, PlayerListAction, PlayerListEntry, PlayerListPacket, PlayerLocationPacket, PlayerLocationPacketType, PlayerPartyInfo, PlayerSkinPacket, PlayerStartItemCooldownPacket, PlayerToggleCrafterSlotRequestPacket, PlayerUpdateEntityOverridesPacket, PlayerVideoCaptureAction, PlayerVideoCapturePacket, PositionMode, PositionTrackingDBClientRequestAction, PositionTrackingDBClientRequestPacket, PositionTrackingDBServerBroadcastAction, PositionTrackingDBServerBroadcastPacket, PresenceConfig, PrimitiveShapeData, PrimitiveShapeExtraDataType, PrimitiveShapeType, PrimitiveShapesPacket, PropertySyncData, ProtocolVersions, PurchaseReceiptPacket, RecipeIngredient, RecipeUnlockingContext, RecordStartedPacket, RefreshEntitlementsPacket, RemoveActorPacket, RemoveObjectivePacket, RemoveVolumeEntityPacket, RequestAbilityPacket, RequestAbilityValueType, RequestChunkRadiusPacket, RequestNetworkSettingsPacket, RequestPermissionsPacket, ResourcePackChunkDataPacket, ResourcePackChunkRequestPacket, ResourcePackClientResponsePacket, ResourcePackDataInfoPacket, ResourcePackStackPacket, ResourcePackStatus, ResourcePacksInfoPacket, ResourcePacksReadyForValidationPacket, RespawnPacket, RewindType, Rotation, SINCE_2225, ScorePacketEntryAction, ScoreboardIdentityPacketType, ScriptMessagePacket, SendPartyDestinationCookiePacket, SerializableVoxelShape, SerializedAbilitiesData, SerializedAbilityLayer, ServerPlayerPostMovePositionPacket, ServerPresenceInfoPacket, ServerSettingsRequestPacket, ServerSettingsResponsePacket, ServerStatsPacket, ServerStoreInfoPacket, ServerToClientHandshakePacket, ServerWaypointGroupAction, ServerWaypointPayload, ServerboundCursorItemDragPacket, ServerboundDataDrivenScreenClosedPacket, ServerboundDataStorePacket, ServerboundDiagnosticsPacket, ServerboundLoadingScreenPacket, ServerboundLoadingScreenPacketType, ServerboundMatchmakingCancelPacket, ServerboundPackSettingChangePacket, ServerboundRegisterAudioContentPacket, ServerboundStonecutterSetRecipePacket, SetActorDataPacket, SetActorLinkPacket, SetActorMotionPacket, SetCommandsEnabledPacket, SetDefaultGameTypePacket, SetDifficultyPacket, SetDisplayObjectivePacket, SetHealthPacket, SetHudPacket, SetLastHurtByPacket, SetLocalPlayerAsInitializedPacket, SetPassengerOfBlockPacket, SetPlayerFurnaceOptionsPacket, SetPlayerGameTypePacket, SetPlayerInventoryOptionsPacket, SetScorePacket, SetScoreboardIdentityPacket, SetSpawnPositionPacket, SetTimePacket, SetTitlePacket, SettingsCommandPacket, ShowCreditsPacket, ShowProfilePacket, ShowStoreOfferPacket, ShowStoreOfferRedirectType, SimpleEventPacket, SimpleEventSubtype, SimulationType, SimulationTypePacket, SoftEnumUpdateType, SoundDataUpdateType, SoundName, SpawnExperienceOrbPacket, SpawnParticleEffectPacket, SpawnPositionType, SpawnSettings, StartGamePacket, StopSoundPacket, structure_exports as Structure, StructureBlockType, StructureBlockUpdatePacket, StructureRedstoneSaveMode, StructureRotation, StructureTemplateDataRequestPacket, StructureTemplateDataResponsePacket, StructureTemplateRequestOperation, StructureTemplateResponseType, SubChunkHeightmapData, SubChunkPacket, SubChunkPos, SubChunkPosOffset, SubChunkRequestPacket, SubChunkRequestResult, SubClientLoginPacket, SyncActorPropertyPacket, SyncWorldClocksDataType, SyncWorldClocksPacket, SyncedPlayerMovementSettings, TakeItemActorPacket, TextPacket, TextPacketType, TextureShiftAction, TickingAreasLoadStatusPacket, ToastRequestPacket, TransactionType, TransferPacket, TrimDataPacket, UNCOMPRESSED_BATCH, UNKNOWN_BLOCK_NAME, UNKNOWN_RUNTIME_ID, UNTIL_2225, UUID, UnlockedRecipesPacket, UnlockedRecipesType, UpdateAbilitiesPacket, UpdateAdventureSettingsPacket, UpdateAttributesPacket, UpdateBlockFlagsType, UpdateBlockLayerType, UpdateBlockPacket, UpdateBlockSyncedPacket, UpdateClientInputLocksPacket, UpdateClientOptionsPacket, UpdateEquipPacket, UpdatePlayerGameTypePacket, UpdateSoftEnumPacket, UpdateSubChunkBlocksPacket, UpdateSubChunkNetworkBlockInfo, UpdateTradePacket, Vec2, Vec3, VoxelShapesPacket, actorEventPacket, actorLinks, addActorPacket, addItemActorPacket, addPlayerPacket, animatePacket, availableActorIdentifiersPacket, biomeDefinitionListPacket, blockActorDataPacket, blockRuntimeId, blockRuntimeIdOf, blockStateCompound, bossEventPacket, buildCodecRegistry, byteRotation, cameraAimAssistPresetsPacket, cameraPresetsPacket, changeDimensionPacket, chunkRadiusUpdatedPacket, clientCacheStatusPacket, clientToServerHandshakePacket, clientboundMatchmakingStatePacket, clientboundPlayAudioContentPacket, clientboundStonecutterSetRecipePacket, commandOutputMessage, commandOutputPacket, commandOutputType, commandRequestPacket, containerClosePacket, containerOpenPacket, containerSetDataPacket, createHandshakeCodec, createProtocolCodec, createProtocolCodecRegistry, creativeCategoryOf, defaultStructureSettings, definePacket, dimensionDefinition, disconnectPacket, emotePacket, emptyItemStackDescriptor, fnv1a32, fullContainerName, gameRulesChangedPacket, gated, hasLegacyRequest, interactPacket, inventoryContentPacket, inventorySlotPacket, inventoryTransactionPacket, isEasingFunction, isGated, jigsawStructureDataPacket, layoutAt, levelChunkPacket, levelEventGenericPacket, levelSoundEventPacket, mobEffectPacket, mobEquipmentPacket, modalFormRequestPacket, modalFormResponsePacket, moveActorAbsolutePacket, movePlayerPacket, networkChunkPublisherUpdatePacket, networkNbtCompound, networkSettingsPacket, onScreenTextureAnimationPacket, playSoundPacket, playStatusPacket, playerActionPacket, playerFogPacket, playerHotbarPacket, playerListPacket, playerSkinPacket, readCraftingData, readCreativeContent, readDimensionDefinition, readInventoryAction, readItemStackDescriptor, readItemStackRequest, readPacketId, readPlayerAuthInput, readStructureSettings, readUseItemData, recipeUuidFor, removeActorPacket, removeObjectivePacket, requestChunkRadiusPacket, requestNetworkSettingsPacket, resourcePackChunkDataPacket, resourcePackChunkRequestPacket, resourcePackClientResponsePacket, resourcePackDataInfoPacket, resourcePackResponse, resourcePackStackPacket, resourcePacksInfoPacket, respawnPacket, scorePacketEntry, scoreboardIdentityInfo, serverSettingsRequestPacket, serverToClientHandshakePacket, serverboundCursorItemDragPacket, serverboundMatchmakingCancelPacket, serverboundRegisterAudioContentPacket, serverboundStonecutterSetRecipePacket, setActorDataPacket, setActorLinkPacket, setActorMotionPacket, setCommandsEnabledPacket, setDifficultyPacket, setDisplayObjectivePacket, setHealthPacket, setLocalPlayerAsInitializedPacket, setPassengerOfBlockPacket, setPlayerGameTypePacket, setScorePacket, setScoreboardIdentityPacket, setSpawnPositionPacket, setTimePacket, setTitlePacket, showCreditsPacket, since, spawnParticleEffectPacket, startGamePacket, stopSoundPacket, structureTypes_exports as structureTypes, syncActorPropertyPacket, fieldTypes_exports as t, takeItemActorPacket, textPacket, trimDataPacket, until, updateAbilitiesPacket, updateAdventureSettingsPacket, updateAttributesPacket, updateBlockPacket, updatePlayerGameTypePacket, updateSubChunkBlocksPacket, v2193_exports as v2193, v2225_exports as v2225, voxelShapesPacket, wireDefinitions, writeBlockStateNbt, writeCraftingData, writeCreativeContent, writeDimensionDefinition, writeInventoryAction, writeItemStackDescriptor, writeItemStackRequest, writePlayerAuthInput, writeStructureSettings, writeUseItemData };
@@ -14,6 +14,8 @@ const require_structure_DimensionDefinition = require("../structure/DimensionDef
14
14
  * entry the identifier string followed by a {@link DimensionDefinition} (`Minimum Y`,
15
15
  * `Height Range`, `Generator Type` and `Dimension Type` as ZigZag varint32, `Pack Id` as an
16
16
  * `mce::UUID`, then `Default Biome`). Strings are a varuint32 byte length followed by UTF-8.
17
+ * From protocol 2225 on each definition also carries `Cloud Height` and `Render Clouds`;
18
+ * the packet hands the stamped protocol version to the definition, which picks the layout.
17
19
  *
18
20
  * A vanilla server sends this only when a behavior pack registers a custom dimension. The
19
21
  * three vanilla dimensions keep their built-in heights without it.
@@ -26,7 +28,7 @@ var DimensionDataPacket = class extends require_NetworkPacket.default {
26
28
  stream.writeUnsignedVarInt(data.definitions.length);
27
29
  for (const entry of data.definitions) {
28
30
  stream.writeString(entry.id);
29
- entry.definition.serialize(stream);
31
+ entry.definition.serialize(stream, this.codecProtocol);
30
32
  }
31
33
  }
32
34
  deserializePayload(stream) {
@@ -34,11 +36,11 @@ var DimensionDataPacket = class extends require_NetworkPacket.default {
34
36
  let count = stream.readUnsignedVarInt();
35
37
  while (count-- > 0) definitions.push({
36
38
  id: stream.readString(),
37
- definition: require_structure_DimensionDefinition.default.deserialize(stream)
39
+ definition: require_structure_DimensionDefinition.default.read(stream, this.codecProtocol)
38
40
  });
39
41
  return { definitions };
40
42
  }
41
43
  };
42
44
  exports.default = DimensionDataPacket;
43
45
 
44
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGF0YVBhY2tldC5janMuY2pzIiwibmFtZXMiOlsiTmV0d29ya1BhY2tldCIsIlBhY2tldElkZW50aWZpZXIiLCJEaW1lbnNpb25EZWZpbml0aW9uIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhY2tldC9EaW1lbnNpb25EYXRhUGFja2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBOZXR3b3JrUGFja2V0IGZyb20gJy4uL05ldHdvcmtQYWNrZXQnO1xuaW1wb3J0IHsgUGFja2V0SWRlbnRpZmllciB9IGZyb20gJy4uL1BhY2tldElkZW50aWZpZXInO1xuaW1wb3J0IERpbWVuc2lvbkRlZmluaXRpb24gZnJvbSAnLi4vc3RydWN0dXJlL0RpbWVuc2lvbkRlZmluaXRpb24nO1xuXG5pbXBvcnQgdHlwZSBOZXR3b3JrQmluYXJ5U3RyZWFtIGZyb20gJy4uL05ldHdvcmtCaW5hcnlTdHJlYW0nO1xuXG4vKiogT25lIGVudHJ5IG9mIHRoZSBgRGVmaW5pdGlvbnNgIG1hcDogdGhlIGRpbWVuc2lvbiBpZGVudGlmaWVyIGFuZCBpdHMgZGVmaW5pdGlvbi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGltZW5zaW9uRGF0YUVudHJ5IHtcbiAgICAvKiogVGhlIG1hcCBrZXk6IHRoZSBkaW1lbnNpb24gaWRlbnRpZmllciwgZm9yIGV4YW1wbGUgXCJtaW5lY3JhZnQ6b3ZlcndvcmxkXCIuICovXG4gICAgaWQ6IHN0cmluZztcbiAgICAvKiogVGhlIGBEaW1lbnNpb25EZWZpbml0aW9uYCB0aGUga2V5IG1hcHMgdG8uICovXG4gICAgZGVmaW5pdGlvbjogRGltZW5zaW9uRGVmaW5pdGlvbjtcbn1cblxuLyoqIFRoZSBmaWVsZHMgb2YgYSBgRGltZW5zaW9uRGF0YVBhY2tldGAsIGluIHdpcmUgb3JkZXIuICovXG5leHBvcnQgaW50ZXJmYWNlIERpbWVuc2lvbkRhdGEge1xuICAgIC8qKiBgRGVmaW5pdGlvbnNgLCBvbmUgZW50cnkgcGVyIGRhdGEtZHJpdmVuIGRpbWVuc2lvbiwgaW4gdGhlIG9yZGVyIHRoZXkgZ28gb24gdGhlIHdpcmUuICovXG4gICAgZGVmaW5pdGlvbnM6IERpbWVuc2lvbkRhdGFFbnRyeVtdO1xufVxuXG4vKipcbiAqIFRoZSBoZWlnaHQgYm91bmRzIGFuZCBnZW5lcmF0b3Igb2YgZWFjaCBkYXRhLWRyaXZlbiBkaW1lbnNpb24gdGhlIHNlcnZlciByZWdpc3RlcmVkLlxuICpcbiAqIFByb3RvY29sIDIxOTMgbGF5b3V0LCBpbiB3aXJlIG9yZGVyOiBgRGVmaW5pdGlvbnNgIGFzIGEgdmFydWludDMyIGVudHJ5IGNvdW50LCB0aGVuIHBlclxuICogZW50cnkgdGhlIGlkZW50aWZpZXIgc3RyaW5nIGZvbGxvd2VkIGJ5IGEge0BsaW5rIERpbWVuc2lvbkRlZmluaXRpb259IChgTWluaW11bSBZYCxcbiAqIGBIZWlnaHQgUmFuZ2VgLCBgR2VuZXJhdG9yIFR5cGVgIGFuZCBgRGltZW5zaW9uIFR5cGVgIGFzIFppZ1phZyB2YXJpbnQzMiwgYFBhY2sgSWRgIGFzIGFuXG4gKiBgbWNlOjpVVUlEYCwgdGhlbiBgRGVmYXVsdCBCaW9tZWApLiBTdHJpbmdzIGFyZSBhIHZhcnVpbnQzMiBieXRlIGxlbmd0aCBmb2xsb3dlZCBieSBVVEYtOC5cbiAqXG4gKiBBIHZhbmlsbGEgc2VydmVyIHNlbmRzIHRoaXMgb25seSB3aGVuIGEgYmVoYXZpb3IgcGFjayByZWdpc3RlcnMgYSBjdXN0b20gZGltZW5zaW9uLiBUaGVcbiAqIHRocmVlIHZhbmlsbGEgZGltZW5zaW9ucyBrZWVwIHRoZWlyIGJ1aWx0LWluIGhlaWdodHMgd2l0aG91dCBpdC5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGltZW5zaW9uRGF0YVBhY2tldCBleHRlbmRzIE5ldHdvcmtQYWNrZXQ8RGltZW5zaW9uRGF0YT4ge1xuICAgIHB1YmxpYyBnZXQgaWQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFBhY2tldElkZW50aWZpZXIuRElNRU5TSU9OX0RBVEE7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNlcmlhbGl6ZVBheWxvYWQoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtLCBkYXRhOiBEaW1lbnNpb25EYXRhKTogdm9pZCB7XG4gICAgICAgIHN0cmVhbS53cml0ZVVuc2lnbmVkVmFySW50KGRhdGEuZGVmaW5pdGlvbnMubGVuZ3RoKTtcbiAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiBkYXRhLmRlZmluaXRpb25zKSB7XG4gICAgICAgICAgICBzdHJlYW0ud3JpdGVTdHJpbmcoZW50cnkuaWQpO1xuICAgICAgICAgICAgZW50cnkuZGVmaW5pdGlvbi5zZXJpYWxpemUoc3RyZWFtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBkZXNlcmlhbGl6ZVBheWxvYWQoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtKTogRGltZW5zaW9uRGF0YSB7XG4gICAgICAgIGNvbnN0IGRlZmluaXRpb25zOiBEaW1lbnNpb25EYXRhRW50cnlbXSA9IFtdO1xuICAgICAgICBsZXQgY291bnQgPSBzdHJlYW0ucmVhZFVuc2lnbmVkVmFySW50KCk7XG4gICAgICAgIHdoaWxlIChjb3VudC0tID4gMCkge1xuICAgICAgICAgICAgZGVmaW5pdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IHN0cmVhbS5yZWFkU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgZGVmaW5pdGlvbjogRGltZW5zaW9uRGVmaW5pdGlvbi5kZXNlcmlhbGl6ZShzdHJlYW0pXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7IGRlZmluaXRpb25zIH07XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQStCQSxJQUFxQixzQkFBckIsY0FBaURBLHNCQUFBQSxRQUE2QjtDQUMxRSxJQUFXLEtBQWE7RUFDcEIsT0FBT0MseUJBQUFBLGlCQUFpQjtDQUM1QjtDQUVBLGlCQUEyQixRQUE2QixNQUEyQjtFQUMvRSxPQUFPLG9CQUFvQixLQUFLLFlBQVksTUFBTTtFQUNsRCxLQUFLLE1BQU0sU0FBUyxLQUFLLGFBQWE7R0FDbEMsT0FBTyxZQUFZLE1BQU0sRUFBRTtHQUMzQixNQUFNLFdBQVcsVUFBVSxNQUFNO0VBQ3JDO0NBQ0o7Q0FFQSxtQkFBNkIsUUFBNEM7RUFDckUsTUFBTSxjQUFvQyxDQUFDO0VBQzNDLElBQUksUUFBUSxPQUFPLG1CQUFtQjtFQUN0QyxPQUFPLFVBQVUsR0FDYixZQUFZLEtBQUs7R0FDYixJQUFJLE9BQU8sV0FBVztHQUN0QixZQUFZQyxzQ0FBQUEsUUFBb0IsWUFBWSxNQUFNO0VBQ3RELENBQUM7RUFHTCxPQUFPLEVBQUUsWUFBWTtDQUN6QjtBQUNKIn0=
46
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGF0YVBhY2tldC5janMuY2pzIiwibmFtZXMiOlsiTmV0d29ya1BhY2tldCIsIlBhY2tldElkZW50aWZpZXIiLCJEaW1lbnNpb25EZWZpbml0aW9uIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhY2tldC9EaW1lbnNpb25EYXRhUGFja2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBOZXR3b3JrUGFja2V0IGZyb20gJy4uL05ldHdvcmtQYWNrZXQnO1xuaW1wb3J0IHsgUGFja2V0SWRlbnRpZmllciB9IGZyb20gJy4uL1BhY2tldElkZW50aWZpZXInO1xuaW1wb3J0IERpbWVuc2lvbkRlZmluaXRpb24gZnJvbSAnLi4vc3RydWN0dXJlL0RpbWVuc2lvbkRlZmluaXRpb24nO1xuXG5pbXBvcnQgdHlwZSBOZXR3b3JrQmluYXJ5U3RyZWFtIGZyb20gJy4uL05ldHdvcmtCaW5hcnlTdHJlYW0nO1xuXG4vKiogT25lIGVudHJ5IG9mIHRoZSBgRGVmaW5pdGlvbnNgIG1hcDogdGhlIGRpbWVuc2lvbiBpZGVudGlmaWVyIGFuZCBpdHMgZGVmaW5pdGlvbi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGltZW5zaW9uRGF0YUVudHJ5IHtcbiAgICAvKiogVGhlIG1hcCBrZXk6IHRoZSBkaW1lbnNpb24gaWRlbnRpZmllciwgZm9yIGV4YW1wbGUgXCJtaW5lY3JhZnQ6b3ZlcndvcmxkXCIuICovXG4gICAgaWQ6IHN0cmluZztcbiAgICAvKiogVGhlIGBEaW1lbnNpb25EZWZpbml0aW9uYCB0aGUga2V5IG1hcHMgdG8uICovXG4gICAgZGVmaW5pdGlvbjogRGltZW5zaW9uRGVmaW5pdGlvbjtcbn1cblxuLyoqIFRoZSBmaWVsZHMgb2YgYSBgRGltZW5zaW9uRGF0YVBhY2tldGAsIGluIHdpcmUgb3JkZXIuICovXG5leHBvcnQgaW50ZXJmYWNlIERpbWVuc2lvbkRhdGEge1xuICAgIC8qKiBgRGVmaW5pdGlvbnNgLCBvbmUgZW50cnkgcGVyIGRhdGEtZHJpdmVuIGRpbWVuc2lvbiwgaW4gdGhlIG9yZGVyIHRoZXkgZ28gb24gdGhlIHdpcmUuICovXG4gICAgZGVmaW5pdGlvbnM6IERpbWVuc2lvbkRhdGFFbnRyeVtdO1xufVxuXG4vKipcbiAqIFRoZSBoZWlnaHQgYm91bmRzIGFuZCBnZW5lcmF0b3Igb2YgZWFjaCBkYXRhLWRyaXZlbiBkaW1lbnNpb24gdGhlIHNlcnZlciByZWdpc3RlcmVkLlxuICpcbiAqIFByb3RvY29sIDIxOTMgbGF5b3V0LCBpbiB3aXJlIG9yZGVyOiBgRGVmaW5pdGlvbnNgIGFzIGEgdmFydWludDMyIGVudHJ5IGNvdW50LCB0aGVuIHBlclxuICogZW50cnkgdGhlIGlkZW50aWZpZXIgc3RyaW5nIGZvbGxvd2VkIGJ5IGEge0BsaW5rIERpbWVuc2lvbkRlZmluaXRpb259IChgTWluaW11bSBZYCxcbiAqIGBIZWlnaHQgUmFuZ2VgLCBgR2VuZXJhdG9yIFR5cGVgIGFuZCBgRGltZW5zaW9uIFR5cGVgIGFzIFppZ1phZyB2YXJpbnQzMiwgYFBhY2sgSWRgIGFzIGFuXG4gKiBgbWNlOjpVVUlEYCwgdGhlbiBgRGVmYXVsdCBCaW9tZWApLiBTdHJpbmdzIGFyZSBhIHZhcnVpbnQzMiBieXRlIGxlbmd0aCBmb2xsb3dlZCBieSBVVEYtOC5cbiAqIEZyb20gcHJvdG9jb2wgMjIyNSBvbiBlYWNoIGRlZmluaXRpb24gYWxzbyBjYXJyaWVzIGBDbG91ZCBIZWlnaHRgIGFuZCBgUmVuZGVyIENsb3Vkc2A7XG4gKiB0aGUgcGFja2V0IGhhbmRzIHRoZSBzdGFtcGVkIHByb3RvY29sIHZlcnNpb24gdG8gdGhlIGRlZmluaXRpb24sIHdoaWNoIHBpY2tzIHRoZSBsYXlvdXQuXG4gKlxuICogQSB2YW5pbGxhIHNlcnZlciBzZW5kcyB0aGlzIG9ubHkgd2hlbiBhIGJlaGF2aW9yIHBhY2sgcmVnaXN0ZXJzIGEgY3VzdG9tIGRpbWVuc2lvbi4gVGhlXG4gKiB0aHJlZSB2YW5pbGxhIGRpbWVuc2lvbnMga2VlcCB0aGVpciBidWlsdC1pbiBoZWlnaHRzIHdpdGhvdXQgaXQuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERpbWVuc2lvbkRhdGFQYWNrZXQgZXh0ZW5kcyBOZXR3b3JrUGFja2V0PERpbWVuc2lvbkRhdGE+IHtcbiAgICBwdWJsaWMgZ2V0IGlkKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBQYWNrZXRJZGVudGlmaWVyLkRJTUVOU0lPTl9EQVRBO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXJpYWxpemVQYXlsb2FkKHN0cmVhbTogTmV0d29ya0JpbmFyeVN0cmVhbSwgZGF0YTogRGltZW5zaW9uRGF0YSk6IHZvaWQge1xuICAgICAgICBzdHJlYW0ud3JpdGVVbnNpZ25lZFZhckludChkYXRhLmRlZmluaXRpb25zLmxlbmd0aCk7XG4gICAgICAgIGZvciAoY29uc3QgZW50cnkgb2YgZGF0YS5kZWZpbml0aW9ucykge1xuICAgICAgICAgICAgc3RyZWFtLndyaXRlU3RyaW5nKGVudHJ5LmlkKTtcbiAgICAgICAgICAgIGVudHJ5LmRlZmluaXRpb24uc2VyaWFsaXplKHN0cmVhbSwgdGhpcy5jb2RlY1Byb3RvY29sKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBkZXNlcmlhbGl6ZVBheWxvYWQoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtKTogRGltZW5zaW9uRGF0YSB7XG4gICAgICAgIGNvbnN0IGRlZmluaXRpb25zOiBEaW1lbnNpb25EYXRhRW50cnlbXSA9IFtdO1xuICAgICAgICBsZXQgY291bnQgPSBzdHJlYW0ucmVhZFVuc2lnbmVkVmFySW50KCk7XG4gICAgICAgIHdoaWxlIChjb3VudC0tID4gMCkge1xuICAgICAgICAgICAgZGVmaW5pdGlvbnMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IHN0cmVhbS5yZWFkU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgZGVmaW5pdGlvbjogRGltZW5zaW9uRGVmaW5pdGlvbi5yZWFkKHN0cmVhbSwgdGhpcy5jb2RlY1Byb3RvY29sKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4geyBkZWZpbml0aW9ucyB9O1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWlDQSxJQUFxQixzQkFBckIsY0FBaURBLHNCQUFBQSxRQUE2QjtDQUMxRSxJQUFXLEtBQWE7RUFDcEIsT0FBT0MseUJBQUFBLGlCQUFpQjtDQUM1QjtDQUVBLGlCQUEyQixRQUE2QixNQUEyQjtFQUMvRSxPQUFPLG9CQUFvQixLQUFLLFlBQVksTUFBTTtFQUNsRCxLQUFLLE1BQU0sU0FBUyxLQUFLLGFBQWE7R0FDbEMsT0FBTyxZQUFZLE1BQU0sRUFBRTtHQUMzQixNQUFNLFdBQVcsVUFBVSxRQUFRLEtBQUssYUFBYTtFQUN6RDtDQUNKO0NBRUEsbUJBQTZCLFFBQTRDO0VBQ3JFLE1BQU0sY0FBb0MsQ0FBQztFQUMzQyxJQUFJLFFBQVEsT0FBTyxtQkFBbUI7RUFDdEMsT0FBTyxVQUFVLEdBQ2IsWUFBWSxLQUFLO0dBQ2IsSUFBSSxPQUFPLFdBQVc7R0FDdEIsWUFBWUMsc0NBQUFBLFFBQW9CLEtBQUssUUFBUSxLQUFLLGFBQWE7RUFDbkUsQ0FBQztFQUdMLE9BQU8sRUFBRSxZQUFZO0NBQ3pCO0FBQ0oifQ==
@@ -20,6 +20,8 @@ export interface DimensionData {
20
20
  * entry the identifier string followed by a {@link DimensionDefinition} (`Minimum Y`,
21
21
  * `Height Range`, `Generator Type` and `Dimension Type` as ZigZag varint32, `Pack Id` as an
22
22
  * `mce::UUID`, then `Default Biome`). Strings are a varuint32 byte length followed by UTF-8.
23
+ * From protocol 2225 on each definition also carries `Cloud Height` and `Render Clouds`;
24
+ * the packet hands the stamped protocol version to the definition, which picks the layout.
23
25
  *
24
26
  * A vanilla server sends this only when a behavior pack registers a custom dimension. The
25
27
  * three vanilla dimensions keep their built-in heights without it.
@@ -1 +1 @@
1
- {"version":3,"file":"DimensionDataPacket.d.ts","sourceRoot":"","sources":["../../src/packet/DimensionDataPacket.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAE7C,OAAO,mBAAmB,MAAM,kCAAkC,CAAC;AAEnE,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAE9D,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IAC/B,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,iDAAiD;IACjD,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC1B,4FAA4F;IAC5F,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACrC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,aAAa,CAAC,aAAa,CAAC;IACzE,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,CAMjF;IAED,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,aAAa,CAWvE;CACJ"}
1
+ {"version":3,"file":"DimensionDataPacket.d.ts","sourceRoot":"","sources":["../../src/packet/DimensionDataPacket.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAE7C,OAAO,mBAAmB,MAAM,kCAAkC,CAAC;AAEnE,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAE9D,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IAC/B,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,iDAAiD;IACjD,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC1B,4FAA4F;IAC5F,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACrC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,aAAa,CAAC,aAAa,CAAC;IACzE,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,CAMjF;IAED,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,aAAa,CAWvE;CACJ"}
@@ -9,6 +9,8 @@ import DimensionDefinition from "../structure/DimensionDefinition.es.js";
9
9
  * entry the identifier string followed by a {@link DimensionDefinition} (`Minimum Y`,
10
10
  * `Height Range`, `Generator Type` and `Dimension Type` as ZigZag varint32, `Pack Id` as an
11
11
  * `mce::UUID`, then `Default Biome`). Strings are a varuint32 byte length followed by UTF-8.
12
+ * From protocol 2225 on each definition also carries `Cloud Height` and `Render Clouds`;
13
+ * the packet hands the stamped protocol version to the definition, which picks the layout.
12
14
  *
13
15
  * A vanilla server sends this only when a behavior pack registers a custom dimension. The
14
16
  * three vanilla dimensions keep their built-in heights without it.
@@ -21,7 +23,7 @@ var DimensionDataPacket = class extends NetworkPacket {
21
23
  stream.writeUnsignedVarInt(data.definitions.length);
22
24
  for (const entry of data.definitions) {
23
25
  stream.writeString(entry.id);
24
- entry.definition.serialize(stream);
26
+ entry.definition.serialize(stream, this.codecProtocol);
25
27
  }
26
28
  }
27
29
  deserializePayload(stream) {
@@ -29,11 +31,11 @@ var DimensionDataPacket = class extends NetworkPacket {
29
31
  let count = stream.readUnsignedVarInt();
30
32
  while (count-- > 0) definitions.push({
31
33
  id: stream.readString(),
32
- definition: DimensionDefinition.deserialize(stream)
34
+ definition: DimensionDefinition.read(stream, this.codecProtocol)
33
35
  });
34
36
  return { definitions };
35
37
  }
36
38
  };
37
39
  export { DimensionDataPacket as default };
38
40
 
39
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGF0YVBhY2tldC5lcy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFja2V0L0RpbWVuc2lvbkRhdGFQYWNrZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE5ldHdvcmtQYWNrZXQgZnJvbSAnLi4vTmV0d29ya1BhY2tldCc7XG5pbXBvcnQgeyBQYWNrZXRJZGVudGlmaWVyIH0gZnJvbSAnLi4vUGFja2V0SWRlbnRpZmllcic7XG5pbXBvcnQgRGltZW5zaW9uRGVmaW5pdGlvbiBmcm9tICcuLi9zdHJ1Y3R1cmUvRGltZW5zaW9uRGVmaW5pdGlvbic7XG5cbmltcG9ydCB0eXBlIE5ldHdvcmtCaW5hcnlTdHJlYW0gZnJvbSAnLi4vTmV0d29ya0JpbmFyeVN0cmVhbSc7XG5cbi8qKiBPbmUgZW50cnkgb2YgdGhlIGBEZWZpbml0aW9uc2AgbWFwOiB0aGUgZGltZW5zaW9uIGlkZW50aWZpZXIgYW5kIGl0cyBkZWZpbml0aW9uLiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaW1lbnNpb25EYXRhRW50cnkge1xuICAgIC8qKiBUaGUgbWFwIGtleTogdGhlIGRpbWVuc2lvbiBpZGVudGlmaWVyLCBmb3IgZXhhbXBsZSBcIm1pbmVjcmFmdDpvdmVyd29ybGRcIi4gKi9cbiAgICBpZDogc3RyaW5nO1xuICAgIC8qKiBUaGUgYERpbWVuc2lvbkRlZmluaXRpb25gIHRoZSBrZXkgbWFwcyB0by4gKi9cbiAgICBkZWZpbml0aW9uOiBEaW1lbnNpb25EZWZpbml0aW9uO1xufVxuXG4vKiogVGhlIGZpZWxkcyBvZiBhIGBEaW1lbnNpb25EYXRhUGFja2V0YCwgaW4gd2lyZSBvcmRlci4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGltZW5zaW9uRGF0YSB7XG4gICAgLyoqIGBEZWZpbml0aW9uc2AsIG9uZSBlbnRyeSBwZXIgZGF0YS1kcml2ZW4gZGltZW5zaW9uLCBpbiB0aGUgb3JkZXIgdGhleSBnbyBvbiB0aGUgd2lyZS4gKi9cbiAgICBkZWZpbml0aW9uczogRGltZW5zaW9uRGF0YUVudHJ5W107XG59XG5cbi8qKlxuICogVGhlIGhlaWdodCBib3VuZHMgYW5kIGdlbmVyYXRvciBvZiBlYWNoIGRhdGEtZHJpdmVuIGRpbWVuc2lvbiB0aGUgc2VydmVyIHJlZ2lzdGVyZWQuXG4gKlxuICogUHJvdG9jb2wgMjE5MyBsYXlvdXQsIGluIHdpcmUgb3JkZXI6IGBEZWZpbml0aW9uc2AgYXMgYSB2YXJ1aW50MzIgZW50cnkgY291bnQsIHRoZW4gcGVyXG4gKiBlbnRyeSB0aGUgaWRlbnRpZmllciBzdHJpbmcgZm9sbG93ZWQgYnkgYSB7QGxpbmsgRGltZW5zaW9uRGVmaW5pdGlvbn0gKGBNaW5pbXVtIFlgLFxuICogYEhlaWdodCBSYW5nZWAsIGBHZW5lcmF0b3IgVHlwZWAgYW5kIGBEaW1lbnNpb24gVHlwZWAgYXMgWmlnWmFnIHZhcmludDMyLCBgUGFjayBJZGAgYXMgYW5cbiAqIGBtY2U6OlVVSURgLCB0aGVuIGBEZWZhdWx0IEJpb21lYCkuIFN0cmluZ3MgYXJlIGEgdmFydWludDMyIGJ5dGUgbGVuZ3RoIGZvbGxvd2VkIGJ5IFVURi04LlxuICpcbiAqIEEgdmFuaWxsYSBzZXJ2ZXIgc2VuZHMgdGhpcyBvbmx5IHdoZW4gYSBiZWhhdmlvciBwYWNrIHJlZ2lzdGVycyBhIGN1c3RvbSBkaW1lbnNpb24uIFRoZVxuICogdGhyZWUgdmFuaWxsYSBkaW1lbnNpb25zIGtlZXAgdGhlaXIgYnVpbHQtaW4gaGVpZ2h0cyB3aXRob3V0IGl0LlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEaW1lbnNpb25EYXRhUGFja2V0IGV4dGVuZHMgTmV0d29ya1BhY2tldDxEaW1lbnNpb25EYXRhPiB7XG4gICAgcHVibGljIGdldCBpZCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gUGFja2V0SWRlbnRpZmllci5ESU1FTlNJT05fREFUQTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2VyaWFsaXplUGF5bG9hZChzdHJlYW06IE5ldHdvcmtCaW5hcnlTdHJlYW0sIGRhdGE6IERpbWVuc2lvbkRhdGEpOiB2b2lkIHtcbiAgICAgICAgc3RyZWFtLndyaXRlVW5zaWduZWRWYXJJbnQoZGF0YS5kZWZpbml0aW9ucy5sZW5ndGgpO1xuICAgICAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGRhdGEuZGVmaW5pdGlvbnMpIHtcbiAgICAgICAgICAgIHN0cmVhbS53cml0ZVN0cmluZyhlbnRyeS5pZCk7XG4gICAgICAgICAgICBlbnRyeS5kZWZpbml0aW9uLnNlcmlhbGl6ZShzdHJlYW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGRlc2VyaWFsaXplUGF5bG9hZChzdHJlYW06IE5ldHdvcmtCaW5hcnlTdHJlYW0pOiBEaW1lbnNpb25EYXRhIHtcbiAgICAgICAgY29uc3QgZGVmaW5pdGlvbnM6IERpbWVuc2lvbkRhdGFFbnRyeVtdID0gW107XG4gICAgICAgIGxldCBjb3VudCA9IHN0cmVhbS5yZWFkVW5zaWduZWRWYXJJbnQoKTtcbiAgICAgICAgd2hpbGUgKGNvdW50LS0gPiAwKSB7XG4gICAgICAgICAgICBkZWZpbml0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICBpZDogc3RyZWFtLnJlYWRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgICBkZWZpbml0aW9uOiBEaW1lbnNpb25EZWZpbml0aW9uLmRlc2VyaWFsaXplKHN0cmVhbSlcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHsgZGVmaW5pdGlvbnMgfTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQStCQSxJQUFxQixzQkFBckIsY0FBaUQsY0FBNkI7Q0FDMUUsSUFBVyxLQUFhO0VBQ3BCLE9BQU8saUJBQWlCO0NBQzVCO0NBRUEsaUJBQTJCLFFBQTZCLE1BQTJCO0VBQy9FLE9BQU8sb0JBQW9CLEtBQUssWUFBWSxNQUFNO0VBQ2xELEtBQUssTUFBTSxTQUFTLEtBQUssYUFBYTtHQUNsQyxPQUFPLFlBQVksTUFBTSxFQUFFO0dBQzNCLE1BQU0sV0FBVyxVQUFVLE1BQU07RUFDckM7Q0FDSjtDQUVBLG1CQUE2QixRQUE0QztFQUNyRSxNQUFNLGNBQW9DLENBQUM7RUFDM0MsSUFBSSxRQUFRLE9BQU8sbUJBQW1CO0VBQ3RDLE9BQU8sVUFBVSxHQUNiLFlBQVksS0FBSztHQUNiLElBQUksT0FBTyxXQUFXO0dBQ3RCLFlBQVksb0JBQW9CLFlBQVksTUFBTTtFQUN0RCxDQUFDO0VBR0wsT0FBTyxFQUFFLFlBQVk7Q0FDekI7QUFDSiJ9
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGF0YVBhY2tldC5lcy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFja2V0L0RpbWVuc2lvbkRhdGFQYWNrZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE5ldHdvcmtQYWNrZXQgZnJvbSAnLi4vTmV0d29ya1BhY2tldCc7XG5pbXBvcnQgeyBQYWNrZXRJZGVudGlmaWVyIH0gZnJvbSAnLi4vUGFja2V0SWRlbnRpZmllcic7XG5pbXBvcnQgRGltZW5zaW9uRGVmaW5pdGlvbiBmcm9tICcuLi9zdHJ1Y3R1cmUvRGltZW5zaW9uRGVmaW5pdGlvbic7XG5cbmltcG9ydCB0eXBlIE5ldHdvcmtCaW5hcnlTdHJlYW0gZnJvbSAnLi4vTmV0d29ya0JpbmFyeVN0cmVhbSc7XG5cbi8qKiBPbmUgZW50cnkgb2YgdGhlIGBEZWZpbml0aW9uc2AgbWFwOiB0aGUgZGltZW5zaW9uIGlkZW50aWZpZXIgYW5kIGl0cyBkZWZpbml0aW9uLiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaW1lbnNpb25EYXRhRW50cnkge1xuICAgIC8qKiBUaGUgbWFwIGtleTogdGhlIGRpbWVuc2lvbiBpZGVudGlmaWVyLCBmb3IgZXhhbXBsZSBcIm1pbmVjcmFmdDpvdmVyd29ybGRcIi4gKi9cbiAgICBpZDogc3RyaW5nO1xuICAgIC8qKiBUaGUgYERpbWVuc2lvbkRlZmluaXRpb25gIHRoZSBrZXkgbWFwcyB0by4gKi9cbiAgICBkZWZpbml0aW9uOiBEaW1lbnNpb25EZWZpbml0aW9uO1xufVxuXG4vKiogVGhlIGZpZWxkcyBvZiBhIGBEaW1lbnNpb25EYXRhUGFja2V0YCwgaW4gd2lyZSBvcmRlci4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGltZW5zaW9uRGF0YSB7XG4gICAgLyoqIGBEZWZpbml0aW9uc2AsIG9uZSBlbnRyeSBwZXIgZGF0YS1kcml2ZW4gZGltZW5zaW9uLCBpbiB0aGUgb3JkZXIgdGhleSBnbyBvbiB0aGUgd2lyZS4gKi9cbiAgICBkZWZpbml0aW9uczogRGltZW5zaW9uRGF0YUVudHJ5W107XG59XG5cbi8qKlxuICogVGhlIGhlaWdodCBib3VuZHMgYW5kIGdlbmVyYXRvciBvZiBlYWNoIGRhdGEtZHJpdmVuIGRpbWVuc2lvbiB0aGUgc2VydmVyIHJlZ2lzdGVyZWQuXG4gKlxuICogUHJvdG9jb2wgMjE5MyBsYXlvdXQsIGluIHdpcmUgb3JkZXI6IGBEZWZpbml0aW9uc2AgYXMgYSB2YXJ1aW50MzIgZW50cnkgY291bnQsIHRoZW4gcGVyXG4gKiBlbnRyeSB0aGUgaWRlbnRpZmllciBzdHJpbmcgZm9sbG93ZWQgYnkgYSB7QGxpbmsgRGltZW5zaW9uRGVmaW5pdGlvbn0gKGBNaW5pbXVtIFlgLFxuICogYEhlaWdodCBSYW5nZWAsIGBHZW5lcmF0b3IgVHlwZWAgYW5kIGBEaW1lbnNpb24gVHlwZWAgYXMgWmlnWmFnIHZhcmludDMyLCBgUGFjayBJZGAgYXMgYW5cbiAqIGBtY2U6OlVVSURgLCB0aGVuIGBEZWZhdWx0IEJpb21lYCkuIFN0cmluZ3MgYXJlIGEgdmFydWludDMyIGJ5dGUgbGVuZ3RoIGZvbGxvd2VkIGJ5IFVURi04LlxuICogRnJvbSBwcm90b2NvbCAyMjI1IG9uIGVhY2ggZGVmaW5pdGlvbiBhbHNvIGNhcnJpZXMgYENsb3VkIEhlaWdodGAgYW5kIGBSZW5kZXIgQ2xvdWRzYDtcbiAqIHRoZSBwYWNrZXQgaGFuZHMgdGhlIHN0YW1wZWQgcHJvdG9jb2wgdmVyc2lvbiB0byB0aGUgZGVmaW5pdGlvbiwgd2hpY2ggcGlja3MgdGhlIGxheW91dC5cbiAqXG4gKiBBIHZhbmlsbGEgc2VydmVyIHNlbmRzIHRoaXMgb25seSB3aGVuIGEgYmVoYXZpb3IgcGFjayByZWdpc3RlcnMgYSBjdXN0b20gZGltZW5zaW9uLiBUaGVcbiAqIHRocmVlIHZhbmlsbGEgZGltZW5zaW9ucyBrZWVwIHRoZWlyIGJ1aWx0LWluIGhlaWdodHMgd2l0aG91dCBpdC5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGltZW5zaW9uRGF0YVBhY2tldCBleHRlbmRzIE5ldHdvcmtQYWNrZXQ8RGltZW5zaW9uRGF0YT4ge1xuICAgIHB1YmxpYyBnZXQgaWQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFBhY2tldElkZW50aWZpZXIuRElNRU5TSU9OX0RBVEE7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNlcmlhbGl6ZVBheWxvYWQoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtLCBkYXRhOiBEaW1lbnNpb25EYXRhKTogdm9pZCB7XG4gICAgICAgIHN0cmVhbS53cml0ZVVuc2lnbmVkVmFySW50KGRhdGEuZGVmaW5pdGlvbnMubGVuZ3RoKTtcbiAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiBkYXRhLmRlZmluaXRpb25zKSB7XG4gICAgICAgICAgICBzdHJlYW0ud3JpdGVTdHJpbmcoZW50cnkuaWQpO1xuICAgICAgICAgICAgZW50cnkuZGVmaW5pdGlvbi5zZXJpYWxpemUoc3RyZWFtLCB0aGlzLmNvZGVjUHJvdG9jb2wpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGRlc2VyaWFsaXplUGF5bG9hZChzdHJlYW06IE5ldHdvcmtCaW5hcnlTdHJlYW0pOiBEaW1lbnNpb25EYXRhIHtcbiAgICAgICAgY29uc3QgZGVmaW5pdGlvbnM6IERpbWVuc2lvbkRhdGFFbnRyeVtdID0gW107XG4gICAgICAgIGxldCBjb3VudCA9IHN0cmVhbS5yZWFkVW5zaWduZWRWYXJJbnQoKTtcbiAgICAgICAgd2hpbGUgKGNvdW50LS0gPiAwKSB7XG4gICAgICAgICAgICBkZWZpbml0aW9ucy5wdXNoKHtcbiAgICAgICAgICAgICAgICBpZDogc3RyZWFtLnJlYWRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgICBkZWZpbml0aW9uOiBEaW1lbnNpb25EZWZpbml0aW9uLnJlYWQoc3RyZWFtLCB0aGlzLmNvZGVjUHJvdG9jb2wpXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7IGRlZmluaXRpb25zIH07XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQWlDQSxJQUFxQixzQkFBckIsY0FBaUQsY0FBNkI7Q0FDMUUsSUFBVyxLQUFhO0VBQ3BCLE9BQU8saUJBQWlCO0NBQzVCO0NBRUEsaUJBQTJCLFFBQTZCLE1BQTJCO0VBQy9FLE9BQU8sb0JBQW9CLEtBQUssWUFBWSxNQUFNO0VBQ2xELEtBQUssTUFBTSxTQUFTLEtBQUssYUFBYTtHQUNsQyxPQUFPLFlBQVksTUFBTSxFQUFFO0dBQzNCLE1BQU0sV0FBVyxVQUFVLFFBQVEsS0FBSyxhQUFhO0VBQ3pEO0NBQ0o7Q0FFQSxtQkFBNkIsUUFBNEM7RUFDckUsTUFBTSxjQUFvQyxDQUFDO0VBQzNDLElBQUksUUFBUSxPQUFPLG1CQUFtQjtFQUN0QyxPQUFPLFVBQVUsR0FDYixZQUFZLEtBQUs7R0FDYixJQUFJLE9BQU8sV0FBVztHQUN0QixZQUFZLG9CQUFvQixLQUFLLFFBQVEsS0FBSyxhQUFhO0VBQ25FLENBQUM7RUFHTCxPQUFPLEVBQUUsWUFBWTtDQUN6QjtBQUNKIn0=
@@ -3,13 +3,19 @@ Object.defineProperties(exports, {
3
3
  __esModule: { value: true },
4
4
  [Symbol.toStringTag]: { value: "Module" }
5
5
  });
6
+ const require_wire_versions_v2193 = require("../wire/versions/v2193.cjs.cjs");
6
7
  const require_NetworkStructure = require("../NetworkStructure.cjs.cjs");
7
8
  const require_structure_UUID = require("./UUID.cjs.cjs");
9
+ const require_wire_structures_DimensionDefinition = require("../wire/structures/DimensionDefinition.cjs.cjs");
8
10
  let _jsprismarine_minecraft = require("@jsprismarine/minecraft");
9
11
  // src/structure/DimensionDefinition.ts
10
12
  /**
11
- * A `DimensionDefinition`: the height bounds and generator of one data-driven dimension, as
12
- * `DimensionDataPacket` lists them.
13
+ * A `DimensionDefinition`: the height bounds, generator and sky of one data-driven dimension,
14
+ * as `DimensionDataPacket` lists them.
15
+ *
16
+ * The wire layout lives in `wire/structures/DimensionDefinition.ts`'s declarative definition,
17
+ * which this class walks at the protocol version it is handed: the six 2193 fields below,
18
+ * plus `Cloud Height` and `Render Clouds` from 2225 on.
13
19
  *
14
20
  * Protocol 2193 wire order:
15
21
  * 0. `Minimum Y`: ZigZag varint32, the lowest block y of the dimension.
@@ -18,26 +24,34 @@ let _jsprismarine_minecraft = require("@jsprismarine/minecraft");
18
24
  * 3. `Dimension Type`: ZigZag varint32, the dimension's runtime id.
19
25
  * 4. `Pack Id`: an `mce::UUID`, the behavior pack that registered the dimension.
20
26
  * 5. `Default Biome`: string, the biome identifier the dimension generates with.
27
+ *
28
+ * Protocol 2225 appends:
29
+ * 6. `Cloud Height`: ZigZag varint32, the block y clouds render at.
30
+ * 7. `Render Clouds`: bool, whether the dimension draws clouds.
21
31
  * {@link https://mojang.github.io/bedrock-protocol-docs/1.26.51/types/dimension-definition/}
22
32
  */
23
- var DimensionDefinition = class extends require_NetworkStructure.default {
33
+ var DimensionDefinition = class DimensionDefinition extends require_NetworkStructure.default {
24
34
  minimumY;
25
35
  heightRange;
26
36
  generatorType;
27
37
  dimensionType;
28
38
  packId;
29
39
  defaultBiome;
40
+ cloudHeight;
41
+ renderClouds;
30
42
  /**
31
- * Creates a definition from its fields. Every parameter has a default so the static
32
- * `deserialize` can construct an empty instance before reading the stream.
43
+ * Creates a definition from its fields. Every parameter has a default so `deserialize`
44
+ * can construct an empty instance before reading the stream.
33
45
  * @param minimumY - `Minimum Y`, the lowest block y.
34
46
  * @param heightRange - `Height Range`, the block count above `minimumY`; the top y is `minimumY + heightRange - 1`.
35
47
  * @param generatorType - `Generator Type`.
36
48
  * @param dimensionType - `Dimension Type`, the runtime id. The vanilla ones are 0 to 2; custom dimensions count from 1000.
37
49
  * @param packId - `Pack Id` of the registering behavior pack.
38
50
  * @param defaultBiome - `Default Biome` identifier, for example "minecraft:plains".
51
+ * @param cloudHeight - `Cloud Height`, the block y clouds render at. On the wire from 2225 on.
52
+ * @param renderClouds - `Render Clouds`, whether the dimension draws clouds. On the wire from 2225 on.
39
53
  */
40
- constructor(minimumY = 0, heightRange = 0, generatorType = _jsprismarine_minecraft.Generator.UNDEFINED, dimensionType = 0, packId = new require_structure_UUID.default(0n, 0n), defaultBiome = "") {
54
+ constructor(minimumY = 0, heightRange = 0, generatorType = _jsprismarine_minecraft.Generator.UNDEFINED, dimensionType = 0, packId = new require_structure_UUID.default(0n, 0n), defaultBiome = "", cloudHeight = 0, renderClouds = false) {
41
55
  super();
42
56
  this.minimumY = minimumY;
43
57
  this.heightRange = heightRange;
@@ -45,26 +59,36 @@ var DimensionDefinition = class extends require_NetworkStructure.default {
45
59
  this.dimensionType = dimensionType;
46
60
  this.packId = packId;
47
61
  this.defaultBiome = defaultBiome;
62
+ this.cloudHeight = cloudHeight;
63
+ this.renderClouds = renderClouds;
48
64
  }
49
- /** Writes the six fields in wire order. */
50
- serialize(stream) {
51
- stream.writeVarInt(this.minimumY);
52
- stream.writeVarInt(this.heightRange);
53
- stream.writeVarInt(this.generatorType);
54
- stream.writeVarInt(this.dimensionType);
55
- this.packId.serialize(stream);
56
- stream.writeString(this.defaultBiome);
65
+ /**
66
+ * Writes the fields the protocol version puts on the wire, in layout order.
67
+ * @param stream - The stream to write to.
68
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
69
+ */
70
+ serialize(stream, protocolVersion$1 = require_wire_versions_v2193.protocolVersion) {
71
+ require_wire_structures_DimensionDefinition.writeDimensionDefinition(stream, this, protocolVersion$1);
57
72
  }
58
- /** Reads the six fields in wire order. */
59
- deserialize(stream) {
60
- this.minimumY = stream.readVarInt();
61
- this.heightRange = stream.readVarInt();
62
- this.generatorType = stream.readVarInt();
63
- this.dimensionType = stream.readVarInt();
64
- this.packId = require_structure_UUID.default.deserialize(stream);
65
- this.defaultBiome = stream.readString();
73
+ /**
74
+ * Reads them back in the same order, filling version-absent fields with their fallbacks.
75
+ * @param stream - The stream to read from.
76
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
77
+ */
78
+ deserialize(stream, protocolVersion$2 = require_wire_versions_v2193.protocolVersion) {
79
+ Object.assign(this, require_wire_structures_DimensionDefinition.readDimensionDefinition(stream, protocolVersion$2));
80
+ }
81
+ /**
82
+ * Reads a definition in the layout of the given protocol version.
83
+ * @param stream - The stream to read from.
84
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
85
+ */
86
+ static read(stream, protocolVersion$3 = require_wire_versions_v2193.protocolVersion) {
87
+ const definition = new DimensionDefinition();
88
+ definition.deserialize(stream, protocolVersion$3);
89
+ return definition;
66
90
  }
67
91
  };
68
92
  exports.default = DimensionDefinition;
69
93
 
70
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGVmaW5pdGlvbi5janMuY2pzIiwibmFtZXMiOlsiTmV0d29ya1N0cnVjdHVyZSIsIkdlbmVyYXRvciIsIlVVSUQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RydWN0dXJlL0RpbWVuc2lvbkRlZmluaXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBOZXR3b3JrQmluYXJ5U3RyZWFtIH0gZnJvbSAnLi4vJztcbmltcG9ydCBOZXR3b3JrU3RydWN0dXJlIGZyb20gJy4uL05ldHdvcmtTdHJ1Y3R1cmUnO1xuaW1wb3J0IFVVSUQgZnJvbSAnLi9VVUlEJztcbmltcG9ydCB7IEdlbmVyYXRvciB9IGZyb20gJ0Bqc3ByaXNtYXJpbmUvbWluZWNyYWZ0JztcblxuLyoqXG4gKiBBIGBEaW1lbnNpb25EZWZpbml0aW9uYDogdGhlIGhlaWdodCBib3VuZHMgYW5kIGdlbmVyYXRvciBvZiBvbmUgZGF0YS1kcml2ZW4gZGltZW5zaW9uLCBhc1xuICogYERpbWVuc2lvbkRhdGFQYWNrZXRgIGxpc3RzIHRoZW0uXG4gKlxuICogUHJvdG9jb2wgMjE5MyB3aXJlIG9yZGVyOlxuICogMC4gYE1pbmltdW0gWWA6IFppZ1phZyB2YXJpbnQzMiwgdGhlIGxvd2VzdCBibG9jayB5IG9mIHRoZSBkaW1lbnNpb24uXG4gKiAxLiBgSGVpZ2h0IFJhbmdlYDogWmlnWmFnIHZhcmludDMyLCBob3cgbWFueSBibG9ja3Mgc2l0IGFib3ZlIGBNaW5pbXVtIFlgLlxuICogMi4gYEdlbmVyYXRvciBUeXBlYDogWmlnWmFnIHZhcmludDMyIHdpdGggdGhlIG51bWVyaWMgdmFsdWVzIG9mIHtAbGluayBHZW5lcmF0b3J9LlxuICogMy4gYERpbWVuc2lvbiBUeXBlYDogWmlnWmFnIHZhcmludDMyLCB0aGUgZGltZW5zaW9uJ3MgcnVudGltZSBpZC5cbiAqIDQuIGBQYWNrIElkYDogYW4gYG1jZTo6VVVJRGAsIHRoZSBiZWhhdmlvciBwYWNrIHRoYXQgcmVnaXN0ZXJlZCB0aGUgZGltZW5zaW9uLlxuICogNS4gYERlZmF1bHQgQmlvbWVgOiBzdHJpbmcsIHRoZSBiaW9tZSBpZGVudGlmaWVyIHRoZSBkaW1lbnNpb24gZ2VuZXJhdGVzIHdpdGguXG4gKiB7QGxpbmsgaHR0cHM6Ly9tb2phbmcuZ2l0aHViLmlvL2JlZHJvY2stcHJvdG9jb2wtZG9jcy8xLjI2LjUxL3R5cGVzL2RpbWVuc2lvbi1kZWZpbml0aW9uL31cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGltZW5zaW9uRGVmaW5pdGlvbiBleHRlbmRzIE5ldHdvcmtTdHJ1Y3R1cmUge1xuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBkZWZpbml0aW9uIGZyb20gaXRzIGZpZWxkcy4gRXZlcnkgcGFyYW1ldGVyIGhhcyBhIGRlZmF1bHQgc28gdGhlIHN0YXRpY1xuICAgICAqIGBkZXNlcmlhbGl6ZWAgY2FuIGNvbnN0cnVjdCBhbiBlbXB0eSBpbnN0YW5jZSBiZWZvcmUgcmVhZGluZyB0aGUgc3RyZWFtLlxuICAgICAqIEBwYXJhbSBtaW5pbXVtWSAtIGBNaW5pbXVtIFlgLCB0aGUgbG93ZXN0IGJsb2NrIHkuXG4gICAgICogQHBhcmFtIGhlaWdodFJhbmdlIC0gYEhlaWdodCBSYW5nZWAsIHRoZSBibG9jayBjb3VudCBhYm92ZSBgbWluaW11bVlgOyB0aGUgdG9wIHkgaXMgYG1pbmltdW1ZICsgaGVpZ2h0UmFuZ2UgLSAxYC5cbiAgICAgKiBAcGFyYW0gZ2VuZXJhdG9yVHlwZSAtIGBHZW5lcmF0b3IgVHlwZWAuXG4gICAgICogQHBhcmFtIGRpbWVuc2lvblR5cGUgLSBgRGltZW5zaW9uIFR5cGVgLCB0aGUgcnVudGltZSBpZC4gVGhlIHZhbmlsbGEgb25lcyBhcmUgMCB0byAyOyBjdXN0b20gZGltZW5zaW9ucyBjb3VudCBmcm9tIDEwMDAuXG4gICAgICogQHBhcmFtIHBhY2tJZCAtIGBQYWNrIElkYCBvZiB0aGUgcmVnaXN0ZXJpbmcgYmVoYXZpb3IgcGFjay5cbiAgICAgKiBAcGFyYW0gZGVmYXVsdEJpb21lIC0gYERlZmF1bHQgQmlvbWVgIGlkZW50aWZpZXIsIGZvciBleGFtcGxlIFwibWluZWNyYWZ0OnBsYWluc1wiLlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIG1pbmltdW1ZID0gMCxcbiAgICAgICAgcHVibGljIGhlaWdodFJhbmdlID0gMCxcbiAgICAgICAgcHVibGljIGdlbmVyYXRvclR5cGU6IEdlbmVyYXRvciA9IEdlbmVyYXRvci5VTkRFRklORUQsXG4gICAgICAgIHB1YmxpYyBkaW1lbnNpb25UeXBlID0gMCxcbiAgICAgICAgcHVibGljIHBhY2tJZDogVVVJRCA9IG5ldyBVVUlEKDBuLCAwbiksXG4gICAgICAgIHB1YmxpYyBkZWZhdWx0QmlvbWUgPSAnJ1xuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIC8qKiBXcml0ZXMgdGhlIHNpeCBmaWVsZHMgaW4gd2lyZSBvcmRlci4gKi9cbiAgICBwdWJsaWMgc2VyaWFsaXplKHN0cmVhbTogTmV0d29ya0JpbmFyeVN0cmVhbSk6IHZvaWQge1xuICAgICAgICBzdHJlYW0ud3JpdGVWYXJJbnQodGhpcy5taW5pbXVtWSk7XG4gICAgICAgIHN0cmVhbS53cml0ZVZhckludCh0aGlzLmhlaWdodFJhbmdlKTtcbiAgICAgICAgc3RyZWFtLndyaXRlVmFySW50KHRoaXMuZ2VuZXJhdG9yVHlwZSk7XG4gICAgICAgIHN0cmVhbS53cml0ZVZhckludCh0aGlzLmRpbWVuc2lvblR5cGUpO1xuICAgICAgICB0aGlzLnBhY2tJZC5zZXJpYWxpemUoc3RyZWFtKTtcbiAgICAgICAgc3RyZWFtLndyaXRlU3RyaW5nKHRoaXMuZGVmYXVsdEJpb21lKTtcbiAgICB9XG5cbiAgICAvKiogUmVhZHMgdGhlIHNpeCBmaWVsZHMgaW4gd2lyZSBvcmRlci4gKi9cbiAgICBwdWJsaWMgZGVzZXJpYWxpemUoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtKTogdm9pZCB7XG4gICAgICAgIHRoaXMubWluaW11bVkgPSBzdHJlYW0ucmVhZFZhckludCgpO1xuICAgICAgICB0aGlzLmhlaWdodFJhbmdlID0gc3RyZWFtLnJlYWRWYXJJbnQoKTtcbiAgICAgICAgdGhpcy5nZW5lcmF0b3JUeXBlID0gc3RyZWFtLnJlYWRWYXJJbnQoKTtcbiAgICAgICAgdGhpcy5kaW1lbnNpb25UeXBlID0gc3RyZWFtLnJlYWRWYXJJbnQoKTtcbiAgICAgICAgdGhpcy5wYWNrSWQgPSBVVUlELmRlc2VyaWFsaXplKHN0cmVhbSk7XG4gICAgICAgIHRoaXMuZGVmYXVsdEJpb21lID0gc3RyZWFtLnJlYWRTdHJpbmcoKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFrQkEsSUFBcUIsc0JBQXJCLGNBQWlEQSx5QkFBQUEsUUFBaUI7Q0FZbkQ7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBOzs7Ozs7Ozs7OztDQU5YLFlBQ0ksV0FBa0IsR0FDbEIsY0FBcUIsR0FDckIsZ0JBQWtDQyx3QkFBQUEsVUFBVSxXQUM1QyxnQkFBdUIsR0FDdkIsU0FBc0IsSUFBSUMsdUJBQUFBLFFBQUssSUFBSSxFQUFFLEdBQ3JDLGVBQXNCLElBQ3hCO0VBQ0UsTUFBTTtFQVBDLEtBQUEsV0FBQTtFQUNBLEtBQUEsY0FBQTtFQUNBLEtBQUEsZ0JBQUE7RUFDQSxLQUFBLGdCQUFBO0VBQ0EsS0FBQSxTQUFBO0VBQ0EsS0FBQSxlQUFBO0NBR1g7O0NBR0EsVUFBaUIsUUFBbUM7RUFDaEQsT0FBTyxZQUFZLEtBQUssUUFBUTtFQUNoQyxPQUFPLFlBQVksS0FBSyxXQUFXO0VBQ25DLE9BQU8sWUFBWSxLQUFLLGFBQWE7RUFDckMsT0FBTyxZQUFZLEtBQUssYUFBYTtFQUNyQyxLQUFLLE9BQU8sVUFBVSxNQUFNO0VBQzVCLE9BQU8sWUFBWSxLQUFLLFlBQVk7Q0FDeEM7O0NBR0EsWUFBbUIsUUFBbUM7RUFDbEQsS0FBSyxXQUFXLE9BQU8sV0FBVztFQUNsQyxLQUFLLGNBQWMsT0FBTyxXQUFXO0VBQ3JDLEtBQUssZ0JBQWdCLE9BQU8sV0FBVztFQUN2QyxLQUFLLGdCQUFnQixPQUFPLFdBQVc7RUFDdkMsS0FBSyxTQUFTQSx1QkFBQUEsUUFBSyxZQUFZLE1BQU07RUFDckMsS0FBSyxlQUFlLE9BQU8sV0FBVztDQUMxQztBQUNKIn0=
94
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGVmaW5pdGlvbi5janMuY2pzIiwibmFtZXMiOlsiTmV0d29ya1N0cnVjdHVyZSIsIkdlbmVyYXRvciIsIlVVSUQiLCJwcm90b2NvbFZlcnNpb24yMTkzIiwicHJvdG9jb2xWZXJzaW9uIiwicmVhZERpbWVuc2lvbkRlZmluaXRpb24iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RydWN0dXJlL0RpbWVuc2lvbkRlZmluaXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBOZXR3b3JrQmluYXJ5U3RyZWFtIH0gZnJvbSAnLi4vJztcbmltcG9ydCBOZXR3b3JrU3RydWN0dXJlIGZyb20gJy4uL05ldHdvcmtTdHJ1Y3R1cmUnO1xuaW1wb3J0IFVVSUQgZnJvbSAnLi9VVUlEJztcbmltcG9ydCB7IHJlYWREaW1lbnNpb25EZWZpbml0aW9uLCB3cml0ZURpbWVuc2lvbkRlZmluaXRpb24gfSBmcm9tICcuLi93aXJlL3N0cnVjdHVyZXMvRGltZW5zaW9uRGVmaW5pdGlvbic7XG5pbXBvcnQgeyBwcm90b2NvbFZlcnNpb24gYXMgcHJvdG9jb2xWZXJzaW9uMjE5MyB9IGZyb20gJy4uL3dpcmUvdmVyc2lvbnMvdjIxOTMnO1xuaW1wb3J0IHsgR2VuZXJhdG9yIH0gZnJvbSAnQGpzcHJpc21hcmluZS9taW5lY3JhZnQnO1xuXG4vKipcbiAqIEEgYERpbWVuc2lvbkRlZmluaXRpb25gOiB0aGUgaGVpZ2h0IGJvdW5kcywgZ2VuZXJhdG9yIGFuZCBza3kgb2Ygb25lIGRhdGEtZHJpdmVuIGRpbWVuc2lvbixcbiAqIGFzIGBEaW1lbnNpb25EYXRhUGFja2V0YCBsaXN0cyB0aGVtLlxuICpcbiAqIFRoZSB3aXJlIGxheW91dCBsaXZlcyBpbiBgd2lyZS9zdHJ1Y3R1cmVzL0RpbWVuc2lvbkRlZmluaXRpb24udHNgJ3MgZGVjbGFyYXRpdmUgZGVmaW5pdGlvbixcbiAqIHdoaWNoIHRoaXMgY2xhc3Mgd2Fsa3MgYXQgdGhlIHByb3RvY29sIHZlcnNpb24gaXQgaXMgaGFuZGVkOiB0aGUgc2l4IDIxOTMgZmllbGRzIGJlbG93LFxuICogcGx1cyBgQ2xvdWQgSGVpZ2h0YCBhbmQgYFJlbmRlciBDbG91ZHNgIGZyb20gMjIyNSBvbi5cbiAqXG4gKiBQcm90b2NvbCAyMTkzIHdpcmUgb3JkZXI6XG4gKiAwLiBgTWluaW11bSBZYDogWmlnWmFnIHZhcmludDMyLCB0aGUgbG93ZXN0IGJsb2NrIHkgb2YgdGhlIGRpbWVuc2lvbi5cbiAqIDEuIGBIZWlnaHQgUmFuZ2VgOiBaaWdaYWcgdmFyaW50MzIsIGhvdyBtYW55IGJsb2NrcyBzaXQgYWJvdmUgYE1pbmltdW0gWWAuXG4gKiAyLiBgR2VuZXJhdG9yIFR5cGVgOiBaaWdaYWcgdmFyaW50MzIgd2l0aCB0aGUgbnVtZXJpYyB2YWx1ZXMgb2Yge0BsaW5rIEdlbmVyYXRvcn0uXG4gKiAzLiBgRGltZW5zaW9uIFR5cGVgOiBaaWdaYWcgdmFyaW50MzIsIHRoZSBkaW1lbnNpb24ncyBydW50aW1lIGlkLlxuICogNC4gYFBhY2sgSWRgOiBhbiBgbWNlOjpVVUlEYCwgdGhlIGJlaGF2aW9yIHBhY2sgdGhhdCByZWdpc3RlcmVkIHRoZSBkaW1lbnNpb24uXG4gKiA1LiBgRGVmYXVsdCBCaW9tZWA6IHN0cmluZywgdGhlIGJpb21lIGlkZW50aWZpZXIgdGhlIGRpbWVuc2lvbiBnZW5lcmF0ZXMgd2l0aC5cbiAqXG4gKiBQcm90b2NvbCAyMjI1IGFwcGVuZHM6XG4gKiA2LiBgQ2xvdWQgSGVpZ2h0YDogWmlnWmFnIHZhcmludDMyLCB0aGUgYmxvY2sgeSBjbG91ZHMgcmVuZGVyIGF0LlxuICogNy4gYFJlbmRlciBDbG91ZHNgOiBib29sLCB3aGV0aGVyIHRoZSBkaW1lbnNpb24gZHJhd3MgY2xvdWRzLlxuICoge0BsaW5rIGh0dHBzOi8vbW9qYW5nLmdpdGh1Yi5pby9iZWRyb2NrLXByb3RvY29sLWRvY3MvMS4yNi41MS90eXBlcy9kaW1lbnNpb24tZGVmaW5pdGlvbi99XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERpbWVuc2lvbkRlZmluaXRpb24gZXh0ZW5kcyBOZXR3b3JrU3RydWN0dXJlIHtcbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgZGVmaW5pdGlvbiBmcm9tIGl0cyBmaWVsZHMuIEV2ZXJ5IHBhcmFtZXRlciBoYXMgYSBkZWZhdWx0IHNvIGBkZXNlcmlhbGl6ZWBcbiAgICAgKiBjYW4gY29uc3RydWN0IGFuIGVtcHR5IGluc3RhbmNlIGJlZm9yZSByZWFkaW5nIHRoZSBzdHJlYW0uXG4gICAgICogQHBhcmFtIG1pbmltdW1ZIC0gYE1pbmltdW0gWWAsIHRoZSBsb3dlc3QgYmxvY2sgeS5cbiAgICAgKiBAcGFyYW0gaGVpZ2h0UmFuZ2UgLSBgSGVpZ2h0IFJhbmdlYCwgdGhlIGJsb2NrIGNvdW50IGFib3ZlIGBtaW5pbXVtWWA7IHRoZSB0b3AgeSBpcyBgbWluaW11bVkgKyBoZWlnaHRSYW5nZSAtIDFgLlxuICAgICAqIEBwYXJhbSBnZW5lcmF0b3JUeXBlIC0gYEdlbmVyYXRvciBUeXBlYC5cbiAgICAgKiBAcGFyYW0gZGltZW5zaW9uVHlwZSAtIGBEaW1lbnNpb24gVHlwZWAsIHRoZSBydW50aW1lIGlkLiBUaGUgdmFuaWxsYSBvbmVzIGFyZSAwIHRvIDI7IGN1c3RvbSBkaW1lbnNpb25zIGNvdW50IGZyb20gMTAwMC5cbiAgICAgKiBAcGFyYW0gcGFja0lkIC0gYFBhY2sgSWRgIG9mIHRoZSByZWdpc3RlcmluZyBiZWhhdmlvciBwYWNrLlxuICAgICAqIEBwYXJhbSBkZWZhdWx0QmlvbWUgLSBgRGVmYXVsdCBCaW9tZWAgaWRlbnRpZmllciwgZm9yIGV4YW1wbGUgXCJtaW5lY3JhZnQ6cGxhaW5zXCIuXG4gICAgICogQHBhcmFtIGNsb3VkSGVpZ2h0IC0gYENsb3VkIEhlaWdodGAsIHRoZSBibG9jayB5IGNsb3VkcyByZW5kZXIgYXQuIE9uIHRoZSB3aXJlIGZyb20gMjIyNSBvbi5cbiAgICAgKiBAcGFyYW0gcmVuZGVyQ2xvdWRzIC0gYFJlbmRlciBDbG91ZHNgLCB3aGV0aGVyIHRoZSBkaW1lbnNpb24gZHJhd3MgY2xvdWRzLiBPbiB0aGUgd2lyZSBmcm9tIDIyMjUgb24uXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgbWluaW11bVkgPSAwLFxuICAgICAgICBwdWJsaWMgaGVpZ2h0UmFuZ2UgPSAwLFxuICAgICAgICBwdWJsaWMgZ2VuZXJhdG9yVHlwZTogR2VuZXJhdG9yID0gR2VuZXJhdG9yLlVOREVGSU5FRCxcbiAgICAgICAgcHVibGljIGRpbWVuc2lvblR5cGUgPSAwLFxuICAgICAgICBwdWJsaWMgcGFja0lkOiBVVUlEID0gbmV3IFVVSUQoMG4sIDBuKSxcbiAgICAgICAgcHVibGljIGRlZmF1bHRCaW9tZSA9ICcnLFxuICAgICAgICBwdWJsaWMgY2xvdWRIZWlnaHQgPSAwLFxuICAgICAgICBwdWJsaWMgcmVuZGVyQ2xvdWRzID0gZmFsc2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXcml0ZXMgdGhlIGZpZWxkcyB0aGUgcHJvdG9jb2wgdmVyc2lvbiBwdXRzIG9uIHRoZSB3aXJlLCBpbiBsYXlvdXQgb3JkZXIuXG4gICAgICogQHBhcmFtIHN0cmVhbSAtIFRoZSBzdHJlYW0gdG8gd3JpdGUgdG8uXG4gICAgICogQHBhcmFtIHByb3RvY29sVmVyc2lvbiAtIFRoZSBuZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb247IGRlZmF1bHRzIHRvIDIxOTMuXG4gICAgICovXG4gICAgcHVibGljIHNlcmlhbGl6ZShzdHJlYW06IE5ldHdvcmtCaW5hcnlTdHJlYW0sIHByb3RvY29sVmVyc2lvbiA9IHByb3RvY29sVmVyc2lvbjIxOTMpOiB2b2lkIHtcbiAgICAgICAgd3JpdGVEaW1lbnNpb25EZWZpbml0aW9uKHN0cmVhbSwgdGhpcywgcHJvdG9jb2xWZXJzaW9uKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWFkcyB0aGVtIGJhY2sgaW4gdGhlIHNhbWUgb3JkZXIsIGZpbGxpbmcgdmVyc2lvbi1hYnNlbnQgZmllbGRzIHdpdGggdGhlaXIgZmFsbGJhY2tzLlxuICAgICAqIEBwYXJhbSBzdHJlYW0gLSBUaGUgc3RyZWFtIHRvIHJlYWQgZnJvbS5cbiAgICAgKiBAcGFyYW0gcHJvdG9jb2xWZXJzaW9uIC0gVGhlIG5lZ290aWF0ZWQgcHJvdG9jb2wgdmVyc2lvbjsgZGVmYXVsdHMgdG8gMjE5My5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGVzZXJpYWxpemUoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtLCBwcm90b2NvbFZlcnNpb24gPSBwcm90b2NvbFZlcnNpb24yMTkzKTogdm9pZCB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgcmVhZERpbWVuc2lvbkRlZmluaXRpb24oc3RyZWFtLCBwcm90b2NvbFZlcnNpb24pKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWFkcyBhIGRlZmluaXRpb24gaW4gdGhlIGxheW91dCBvZiB0aGUgZ2l2ZW4gcHJvdG9jb2wgdmVyc2lvbi5cbiAgICAgKiBAcGFyYW0gc3RyZWFtIC0gVGhlIHN0cmVhbSB0byByZWFkIGZyb20uXG4gICAgICogQHBhcmFtIHByb3RvY29sVmVyc2lvbiAtIFRoZSBuZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb247IGRlZmF1bHRzIHRvIDIxOTMuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyByZWFkKHN0cmVhbTogTmV0d29ya0JpbmFyeVN0cmVhbSwgcHJvdG9jb2xWZXJzaW9uID0gcHJvdG9jb2xWZXJzaW9uMjE5Myk6IERpbWVuc2lvbkRlZmluaXRpb24ge1xuICAgICAgICBjb25zdCBkZWZpbml0aW9uID0gbmV3IERpbWVuc2lvbkRlZmluaXRpb24oKTtcbiAgICAgICAgZGVmaW5pdGlvbi5kZXNlcmlhbGl6ZShzdHJlYW0sIHByb3RvY29sVmVyc2lvbik7XG4gICAgICAgIHJldHVybiBkZWZpbml0aW9uO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE0QkEsSUFBcUIsc0JBQXJCLE1BQXFCLDRCQUE0QkEseUJBQUFBLFFBQWlCO0NBY25EO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Ozs7Ozs7Ozs7Ozs7Q0FSWCxZQUNJLFdBQWtCLEdBQ2xCLGNBQXFCLEdBQ3JCLGdCQUFrQ0Msd0JBQUFBLFVBQVUsV0FDNUMsZ0JBQXVCLEdBQ3ZCLFNBQXNCLElBQUlDLHVCQUFBQSxRQUFLLElBQUksRUFBRSxHQUNyQyxlQUFzQixJQUN0QixjQUFxQixHQUNyQixlQUFzQixPQUN4QjtFQUNFLE1BQU07RUFUQyxLQUFBLFdBQUE7RUFDQSxLQUFBLGNBQUE7RUFDQSxLQUFBLGdCQUFBO0VBQ0EsS0FBQSxnQkFBQTtFQUNBLEtBQUEsU0FBQTtFQUNBLEtBQUEsZUFBQTtFQUNBLEtBQUEsY0FBQTtFQUNBLEtBQUEsZUFBQTtDQUdYOzs7Ozs7Q0FPQSxVQUFpQixRQUE2QixvQkFBa0JDLDRCQUFBQSxpQkFBMkI7RUFDdkYsNENBQUEseUJBQXlCLFFBQVEsTUFBTUMsaUJBQWU7Q0FDMUQ7Ozs7OztDQU9BLFlBQW1CLFFBQTZCLG9CQUFrQkQsNEJBQUFBLGlCQUEyQjtFQUN6RixPQUFPLE9BQU8sTUFBTUUsNENBQUFBLHdCQUF3QixRQUFRRCxpQkFBZSxDQUFDO0NBQ3hFOzs7Ozs7Q0FPQSxPQUFjLEtBQUssUUFBNkIsb0JBQWtCRCw0QkFBQUEsaUJBQTBDO0VBQ3hHLE1BQU0sYUFBYSxJQUFJLG9CQUFvQjtFQUMzQyxXQUFXLFlBQVksUUFBUUMsaUJBQWU7RUFDOUMsT0FBTztDQUNYO0FBQ0oifQ==
@@ -3,8 +3,12 @@ import NetworkStructure from '../NetworkStructure';
3
3
  import UUID from './UUID';
4
4
  import { Generator } from '@jsprismarine/minecraft';
5
5
  /**
6
- * A `DimensionDefinition`: the height bounds and generator of one data-driven dimension, as
7
- * `DimensionDataPacket` lists them.
6
+ * A `DimensionDefinition`: the height bounds, generator and sky of one data-driven dimension,
7
+ * as `DimensionDataPacket` lists them.
8
+ *
9
+ * The wire layout lives in `wire/structures/DimensionDefinition.ts`'s declarative definition,
10
+ * which this class walks at the protocol version it is handed: the six 2193 fields below,
11
+ * plus `Cloud Height` and `Render Clouds` from 2225 on.
8
12
  *
9
13
  * Protocol 2193 wire order:
10
14
  * 0. `Minimum Y`: ZigZag varint32, the lowest block y of the dimension.
@@ -13,6 +17,10 @@ import { Generator } from '@jsprismarine/minecraft';
13
17
  * 3. `Dimension Type`: ZigZag varint32, the dimension's runtime id.
14
18
  * 4. `Pack Id`: an `mce::UUID`, the behavior pack that registered the dimension.
15
19
  * 5. `Default Biome`: string, the biome identifier the dimension generates with.
20
+ *
21
+ * Protocol 2225 appends:
22
+ * 6. `Cloud Height`: ZigZag varint32, the block y clouds render at.
23
+ * 7. `Render Clouds`: bool, whether the dimension draws clouds.
16
24
  * {@link https://mojang.github.io/bedrock-protocol-docs/1.26.51/types/dimension-definition/}
17
25
  */
18
26
  export default class DimensionDefinition extends NetworkStructure {
@@ -22,20 +30,38 @@ export default class DimensionDefinition extends NetworkStructure {
22
30
  dimensionType: number;
23
31
  packId: UUID;
24
32
  defaultBiome: string;
33
+ cloudHeight: number;
34
+ renderClouds: boolean;
25
35
  /**
26
- * Creates a definition from its fields. Every parameter has a default so the static
27
- * `deserialize` can construct an empty instance before reading the stream.
36
+ * Creates a definition from its fields. Every parameter has a default so `deserialize`
37
+ * can construct an empty instance before reading the stream.
28
38
  * @param minimumY - `Minimum Y`, the lowest block y.
29
39
  * @param heightRange - `Height Range`, the block count above `minimumY`; the top y is `minimumY + heightRange - 1`.
30
40
  * @param generatorType - `Generator Type`.
31
41
  * @param dimensionType - `Dimension Type`, the runtime id. The vanilla ones are 0 to 2; custom dimensions count from 1000.
32
42
  * @param packId - `Pack Id` of the registering behavior pack.
33
43
  * @param defaultBiome - `Default Biome` identifier, for example "minecraft:plains".
44
+ * @param cloudHeight - `Cloud Height`, the block y clouds render at. On the wire from 2225 on.
45
+ * @param renderClouds - `Render Clouds`, whether the dimension draws clouds. On the wire from 2225 on.
46
+ */
47
+ constructor(minimumY?: number, heightRange?: number, generatorType?: Generator, dimensionType?: number, packId?: UUID, defaultBiome?: string, cloudHeight?: number, renderClouds?: boolean);
48
+ /**
49
+ * Writes the fields the protocol version puts on the wire, in layout order.
50
+ * @param stream - The stream to write to.
51
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
52
+ */
53
+ serialize(stream: NetworkBinaryStream, protocolVersion?: number): void;
54
+ /**
55
+ * Reads them back in the same order, filling version-absent fields with their fallbacks.
56
+ * @param stream - The stream to read from.
57
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
58
+ */
59
+ deserialize(stream: NetworkBinaryStream, protocolVersion?: number): void;
60
+ /**
61
+ * Reads a definition in the layout of the given protocol version.
62
+ * @param stream - The stream to read from.
63
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
34
64
  */
35
- constructor(minimumY?: number, heightRange?: number, generatorType?: Generator, dimensionType?: number, packId?: UUID, defaultBiome?: string);
36
- /** Writes the six fields in wire order. */
37
- serialize(stream: NetworkBinaryStream): void;
38
- /** Reads the six fields in wire order. */
39
- deserialize(stream: NetworkBinaryStream): void;
65
+ static read(stream: NetworkBinaryStream, protocolVersion?: number): DimensionDefinition;
40
66
  }
41
67
  //# sourceMappingURL=DimensionDefinition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DimensionDefinition.d.ts","sourceRoot":"","sources":["../../src/structure/DimensionDefinition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,KAAK,CAAC;AAC/C,OAAO,gBAAgB,MAAM,qBAAqB,CAAC;AACnD,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,gBAAgB;IAYlD,QAAQ;IACR,WAAW;IACX,aAAa,EAAE,SAAS;IACxB,aAAa;IACb,MAAM,EAAE,IAAI;IACZ,YAAY;IAhBvB;;;;;;;;;OASG;IACH,YACW,QAAQ,SAAI,EACZ,WAAW,SAAI,EACf,aAAa,GAAE,SAA+B,EAC9C,aAAa,SAAI,EACjB,MAAM,GAAE,IAAuB,EAC/B,YAAY,SAAK,EAG3B;IAED,2CAA2C;IACpC,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAOlD;IAED,0CAA0C;IACnC,WAAW,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAOpD;CACJ"}
1
+ {"version":3,"file":"DimensionDefinition.d.ts","sourceRoot":"","sources":["../../src/structure/DimensionDefinition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,KAAK,CAAC;AAC/C,OAAO,gBAAgB,MAAM,qBAAqB,CAAC;AACnD,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,gBAAgB;IAclD,QAAQ;IACR,WAAW;IACX,aAAa,EAAE,SAAS;IACxB,aAAa;IACb,MAAM,EAAE,IAAI;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IApBvB;;;;;;;;;;;OAWG;IACH,YACW,QAAQ,SAAI,EACZ,WAAW,SAAI,EACf,aAAa,GAAE,SAA+B,EAC9C,aAAa,SAAI,EACjB,MAAM,GAAE,IAAuB,EAC/B,YAAY,SAAK,EACjB,WAAW,SAAI,EACf,YAAY,UAAQ,EAG9B;IAED;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,eAAe,SAAsB,GAAG,IAAI,CAEzF;IAED;;;;OAIG;IACI,WAAW,CAAC,MAAM,EAAE,mBAAmB,EAAE,eAAe,SAAsB,GAAG,IAAI,CAE3F;IAED;;;;OAIG;IACH,OAAc,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,eAAe,SAAsB,GAAG,mBAAmB,CAI1G;CACJ"}
@@ -1,10 +1,16 @@
1
+ import { protocolVersion } from "../wire/versions/v2193.es.js";
1
2
  import NetworkStructure from "../NetworkStructure.es.js";
2
3
  import UUID from "./UUID.es.js";
4
+ import { readDimensionDefinition, writeDimensionDefinition } from "../wire/structures/DimensionDefinition.es.js";
3
5
  import { Generator } from "@jsprismarine/minecraft";
4
6
  // src/structure/DimensionDefinition.ts
5
7
  /**
6
- * A `DimensionDefinition`: the height bounds and generator of one data-driven dimension, as
7
- * `DimensionDataPacket` lists them.
8
+ * A `DimensionDefinition`: the height bounds, generator and sky of one data-driven dimension,
9
+ * as `DimensionDataPacket` lists them.
10
+ *
11
+ * The wire layout lives in `wire/structures/DimensionDefinition.ts`'s declarative definition,
12
+ * which this class walks at the protocol version it is handed: the six 2193 fields below,
13
+ * plus `Cloud Height` and `Render Clouds` from 2225 on.
8
14
  *
9
15
  * Protocol 2193 wire order:
10
16
  * 0. `Minimum Y`: ZigZag varint32, the lowest block y of the dimension.
@@ -13,26 +19,34 @@ import { Generator } from "@jsprismarine/minecraft";
13
19
  * 3. `Dimension Type`: ZigZag varint32, the dimension's runtime id.
14
20
  * 4. `Pack Id`: an `mce::UUID`, the behavior pack that registered the dimension.
15
21
  * 5. `Default Biome`: string, the biome identifier the dimension generates with.
22
+ *
23
+ * Protocol 2225 appends:
24
+ * 6. `Cloud Height`: ZigZag varint32, the block y clouds render at.
25
+ * 7. `Render Clouds`: bool, whether the dimension draws clouds.
16
26
  * {@link https://mojang.github.io/bedrock-protocol-docs/1.26.51/types/dimension-definition/}
17
27
  */
18
- var DimensionDefinition = class extends NetworkStructure {
28
+ var DimensionDefinition = class DimensionDefinition extends NetworkStructure {
19
29
  minimumY;
20
30
  heightRange;
21
31
  generatorType;
22
32
  dimensionType;
23
33
  packId;
24
34
  defaultBiome;
35
+ cloudHeight;
36
+ renderClouds;
25
37
  /**
26
- * Creates a definition from its fields. Every parameter has a default so the static
27
- * `deserialize` can construct an empty instance before reading the stream.
38
+ * Creates a definition from its fields. Every parameter has a default so `deserialize`
39
+ * can construct an empty instance before reading the stream.
28
40
  * @param minimumY - `Minimum Y`, the lowest block y.
29
41
  * @param heightRange - `Height Range`, the block count above `minimumY`; the top y is `minimumY + heightRange - 1`.
30
42
  * @param generatorType - `Generator Type`.
31
43
  * @param dimensionType - `Dimension Type`, the runtime id. The vanilla ones are 0 to 2; custom dimensions count from 1000.
32
44
  * @param packId - `Pack Id` of the registering behavior pack.
33
45
  * @param defaultBiome - `Default Biome` identifier, for example "minecraft:plains".
46
+ * @param cloudHeight - `Cloud Height`, the block y clouds render at. On the wire from 2225 on.
47
+ * @param renderClouds - `Render Clouds`, whether the dimension draws clouds. On the wire from 2225 on.
34
48
  */
35
- constructor(minimumY = 0, heightRange = 0, generatorType = Generator.UNDEFINED, dimensionType = 0, packId = new UUID(0n, 0n), defaultBiome = "") {
49
+ constructor(minimumY = 0, heightRange = 0, generatorType = Generator.UNDEFINED, dimensionType = 0, packId = new UUID(0n, 0n), defaultBiome = "", cloudHeight = 0, renderClouds = false) {
36
50
  super();
37
51
  this.minimumY = minimumY;
38
52
  this.heightRange = heightRange;
@@ -40,26 +54,36 @@ var DimensionDefinition = class extends NetworkStructure {
40
54
  this.dimensionType = dimensionType;
41
55
  this.packId = packId;
42
56
  this.defaultBiome = defaultBiome;
57
+ this.cloudHeight = cloudHeight;
58
+ this.renderClouds = renderClouds;
43
59
  }
44
- /** Writes the six fields in wire order. */
45
- serialize(stream) {
46
- stream.writeVarInt(this.minimumY);
47
- stream.writeVarInt(this.heightRange);
48
- stream.writeVarInt(this.generatorType);
49
- stream.writeVarInt(this.dimensionType);
50
- this.packId.serialize(stream);
51
- stream.writeString(this.defaultBiome);
60
+ /**
61
+ * Writes the fields the protocol version puts on the wire, in layout order.
62
+ * @param stream - The stream to write to.
63
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
64
+ */
65
+ serialize(stream, protocolVersion$1 = protocolVersion) {
66
+ writeDimensionDefinition(stream, this, protocolVersion$1);
52
67
  }
53
- /** Reads the six fields in wire order. */
54
- deserialize(stream) {
55
- this.minimumY = stream.readVarInt();
56
- this.heightRange = stream.readVarInt();
57
- this.generatorType = stream.readVarInt();
58
- this.dimensionType = stream.readVarInt();
59
- this.packId = UUID.deserialize(stream);
60
- this.defaultBiome = stream.readString();
68
+ /**
69
+ * Reads them back in the same order, filling version-absent fields with their fallbacks.
70
+ * @param stream - The stream to read from.
71
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
72
+ */
73
+ deserialize(stream, protocolVersion$2 = protocolVersion) {
74
+ Object.assign(this, readDimensionDefinition(stream, protocolVersion$2));
75
+ }
76
+ /**
77
+ * Reads a definition in the layout of the given protocol version.
78
+ * @param stream - The stream to read from.
79
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
80
+ */
81
+ static read(stream, protocolVersion$3 = protocolVersion) {
82
+ const definition = new DimensionDefinition();
83
+ definition.deserialize(stream, protocolVersion$3);
84
+ return definition;
61
85
  }
62
86
  };
63
87
  export { DimensionDefinition as default };
64
88
 
65
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGVmaW5pdGlvbi5lcy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RydWN0dXJlL0RpbWVuc2lvbkRlZmluaXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBOZXR3b3JrQmluYXJ5U3RyZWFtIH0gZnJvbSAnLi4vJztcbmltcG9ydCBOZXR3b3JrU3RydWN0dXJlIGZyb20gJy4uL05ldHdvcmtTdHJ1Y3R1cmUnO1xuaW1wb3J0IFVVSUQgZnJvbSAnLi9VVUlEJztcbmltcG9ydCB7IEdlbmVyYXRvciB9IGZyb20gJ0Bqc3ByaXNtYXJpbmUvbWluZWNyYWZ0JztcblxuLyoqXG4gKiBBIGBEaW1lbnNpb25EZWZpbml0aW9uYDogdGhlIGhlaWdodCBib3VuZHMgYW5kIGdlbmVyYXRvciBvZiBvbmUgZGF0YS1kcml2ZW4gZGltZW5zaW9uLCBhc1xuICogYERpbWVuc2lvbkRhdGFQYWNrZXRgIGxpc3RzIHRoZW0uXG4gKlxuICogUHJvdG9jb2wgMjE5MyB3aXJlIG9yZGVyOlxuICogMC4gYE1pbmltdW0gWWA6IFppZ1phZyB2YXJpbnQzMiwgdGhlIGxvd2VzdCBibG9jayB5IG9mIHRoZSBkaW1lbnNpb24uXG4gKiAxLiBgSGVpZ2h0IFJhbmdlYDogWmlnWmFnIHZhcmludDMyLCBob3cgbWFueSBibG9ja3Mgc2l0IGFib3ZlIGBNaW5pbXVtIFlgLlxuICogMi4gYEdlbmVyYXRvciBUeXBlYDogWmlnWmFnIHZhcmludDMyIHdpdGggdGhlIG51bWVyaWMgdmFsdWVzIG9mIHtAbGluayBHZW5lcmF0b3J9LlxuICogMy4gYERpbWVuc2lvbiBUeXBlYDogWmlnWmFnIHZhcmludDMyLCB0aGUgZGltZW5zaW9uJ3MgcnVudGltZSBpZC5cbiAqIDQuIGBQYWNrIElkYDogYW4gYG1jZTo6VVVJRGAsIHRoZSBiZWhhdmlvciBwYWNrIHRoYXQgcmVnaXN0ZXJlZCB0aGUgZGltZW5zaW9uLlxuICogNS4gYERlZmF1bHQgQmlvbWVgOiBzdHJpbmcsIHRoZSBiaW9tZSBpZGVudGlmaWVyIHRoZSBkaW1lbnNpb24gZ2VuZXJhdGVzIHdpdGguXG4gKiB7QGxpbmsgaHR0cHM6Ly9tb2phbmcuZ2l0aHViLmlvL2JlZHJvY2stcHJvdG9jb2wtZG9jcy8xLjI2LjUxL3R5cGVzL2RpbWVuc2lvbi1kZWZpbml0aW9uL31cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGltZW5zaW9uRGVmaW5pdGlvbiBleHRlbmRzIE5ldHdvcmtTdHJ1Y3R1cmUge1xuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBkZWZpbml0aW9uIGZyb20gaXRzIGZpZWxkcy4gRXZlcnkgcGFyYW1ldGVyIGhhcyBhIGRlZmF1bHQgc28gdGhlIHN0YXRpY1xuICAgICAqIGBkZXNlcmlhbGl6ZWAgY2FuIGNvbnN0cnVjdCBhbiBlbXB0eSBpbnN0YW5jZSBiZWZvcmUgcmVhZGluZyB0aGUgc3RyZWFtLlxuICAgICAqIEBwYXJhbSBtaW5pbXVtWSAtIGBNaW5pbXVtIFlgLCB0aGUgbG93ZXN0IGJsb2NrIHkuXG4gICAgICogQHBhcmFtIGhlaWdodFJhbmdlIC0gYEhlaWdodCBSYW5nZWAsIHRoZSBibG9jayBjb3VudCBhYm92ZSBgbWluaW11bVlgOyB0aGUgdG9wIHkgaXMgYG1pbmltdW1ZICsgaGVpZ2h0UmFuZ2UgLSAxYC5cbiAgICAgKiBAcGFyYW0gZ2VuZXJhdG9yVHlwZSAtIGBHZW5lcmF0b3IgVHlwZWAuXG4gICAgICogQHBhcmFtIGRpbWVuc2lvblR5cGUgLSBgRGltZW5zaW9uIFR5cGVgLCB0aGUgcnVudGltZSBpZC4gVGhlIHZhbmlsbGEgb25lcyBhcmUgMCB0byAyOyBjdXN0b20gZGltZW5zaW9ucyBjb3VudCBmcm9tIDEwMDAuXG4gICAgICogQHBhcmFtIHBhY2tJZCAtIGBQYWNrIElkYCBvZiB0aGUgcmVnaXN0ZXJpbmcgYmVoYXZpb3IgcGFjay5cbiAgICAgKiBAcGFyYW0gZGVmYXVsdEJpb21lIC0gYERlZmF1bHQgQmlvbWVgIGlkZW50aWZpZXIsIGZvciBleGFtcGxlIFwibWluZWNyYWZ0OnBsYWluc1wiLlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIG1pbmltdW1ZID0gMCxcbiAgICAgICAgcHVibGljIGhlaWdodFJhbmdlID0gMCxcbiAgICAgICAgcHVibGljIGdlbmVyYXRvclR5cGU6IEdlbmVyYXRvciA9IEdlbmVyYXRvci5VTkRFRklORUQsXG4gICAgICAgIHB1YmxpYyBkaW1lbnNpb25UeXBlID0gMCxcbiAgICAgICAgcHVibGljIHBhY2tJZDogVVVJRCA9IG5ldyBVVUlEKDBuLCAwbiksXG4gICAgICAgIHB1YmxpYyBkZWZhdWx0QmlvbWUgPSAnJ1xuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIC8qKiBXcml0ZXMgdGhlIHNpeCBmaWVsZHMgaW4gd2lyZSBvcmRlci4gKi9cbiAgICBwdWJsaWMgc2VyaWFsaXplKHN0cmVhbTogTmV0d29ya0JpbmFyeVN0cmVhbSk6IHZvaWQge1xuICAgICAgICBzdHJlYW0ud3JpdGVWYXJJbnQodGhpcy5taW5pbXVtWSk7XG4gICAgICAgIHN0cmVhbS53cml0ZVZhckludCh0aGlzLmhlaWdodFJhbmdlKTtcbiAgICAgICAgc3RyZWFtLndyaXRlVmFySW50KHRoaXMuZ2VuZXJhdG9yVHlwZSk7XG4gICAgICAgIHN0cmVhbS53cml0ZVZhckludCh0aGlzLmRpbWVuc2lvblR5cGUpO1xuICAgICAgICB0aGlzLnBhY2tJZC5zZXJpYWxpemUoc3RyZWFtKTtcbiAgICAgICAgc3RyZWFtLndyaXRlU3RyaW5nKHRoaXMuZGVmYXVsdEJpb21lKTtcbiAgICB9XG5cbiAgICAvKiogUmVhZHMgdGhlIHNpeCBmaWVsZHMgaW4gd2lyZSBvcmRlci4gKi9cbiAgICBwdWJsaWMgZGVzZXJpYWxpemUoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtKTogdm9pZCB7XG4gICAgICAgIHRoaXMubWluaW11bVkgPSBzdHJlYW0ucmVhZFZhckludCgpO1xuICAgICAgICB0aGlzLmhlaWdodFJhbmdlID0gc3RyZWFtLnJlYWRWYXJJbnQoKTtcbiAgICAgICAgdGhpcy5nZW5lcmF0b3JUeXBlID0gc3RyZWFtLnJlYWRWYXJJbnQoKTtcbiAgICAgICAgdGhpcy5kaW1lbnNpb25UeXBlID0gc3RyZWFtLnJlYWRWYXJJbnQoKTtcbiAgICAgICAgdGhpcy5wYWNrSWQgPSBVVUlELmRlc2VyaWFsaXplKHN0cmVhbSk7XG4gICAgICAgIHRoaXMuZGVmYXVsdEJpb21lID0gc3RyZWFtLnJlYWRTdHJpbmcoKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBa0JBLElBQXFCLHNCQUFyQixjQUFpRCxpQkFBaUI7Q0FZbkQ7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBOzs7Ozs7Ozs7OztDQU5YLFlBQ0ksV0FBa0IsR0FDbEIsY0FBcUIsR0FDckIsZ0JBQWtDLFVBQVUsV0FDNUMsZ0JBQXVCLEdBQ3ZCLFNBQXNCLElBQUksS0FBSyxJQUFJLEVBQUUsR0FDckMsZUFBc0IsSUFDeEI7RUFDRSxNQUFNO0VBUEMsS0FBQSxXQUFBO0VBQ0EsS0FBQSxjQUFBO0VBQ0EsS0FBQSxnQkFBQTtFQUNBLEtBQUEsZ0JBQUE7RUFDQSxLQUFBLFNBQUE7RUFDQSxLQUFBLGVBQUE7Q0FHWDs7Q0FHQSxVQUFpQixRQUFtQztFQUNoRCxPQUFPLFlBQVksS0FBSyxRQUFRO0VBQ2hDLE9BQU8sWUFBWSxLQUFLLFdBQVc7RUFDbkMsT0FBTyxZQUFZLEtBQUssYUFBYTtFQUNyQyxPQUFPLFlBQVksS0FBSyxhQUFhO0VBQ3JDLEtBQUssT0FBTyxVQUFVLE1BQU07RUFDNUIsT0FBTyxZQUFZLEtBQUssWUFBWTtDQUN4Qzs7Q0FHQSxZQUFtQixRQUFtQztFQUNsRCxLQUFLLFdBQVcsT0FBTyxXQUFXO0VBQ2xDLEtBQUssY0FBYyxPQUFPLFdBQVc7RUFDckMsS0FBSyxnQkFBZ0IsT0FBTyxXQUFXO0VBQ3ZDLEtBQUssZ0JBQWdCLE9BQU8sV0FBVztFQUN2QyxLQUFLLFNBQVMsS0FBSyxZQUFZLE1BQU07RUFDckMsS0FBSyxlQUFlLE9BQU8sV0FBVztDQUMxQztBQUNKIn0=
89
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGVmaW5pdGlvbi5lcy5qcyIsIm5hbWVzIjpbInByb3RvY29sVmVyc2lvbjIxOTMiLCJwcm90b2NvbFZlcnNpb24iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RydWN0dXJlL0RpbWVuc2lvbkRlZmluaXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBOZXR3b3JrQmluYXJ5U3RyZWFtIH0gZnJvbSAnLi4vJztcbmltcG9ydCBOZXR3b3JrU3RydWN0dXJlIGZyb20gJy4uL05ldHdvcmtTdHJ1Y3R1cmUnO1xuaW1wb3J0IFVVSUQgZnJvbSAnLi9VVUlEJztcbmltcG9ydCB7IHJlYWREaW1lbnNpb25EZWZpbml0aW9uLCB3cml0ZURpbWVuc2lvbkRlZmluaXRpb24gfSBmcm9tICcuLi93aXJlL3N0cnVjdHVyZXMvRGltZW5zaW9uRGVmaW5pdGlvbic7XG5pbXBvcnQgeyBwcm90b2NvbFZlcnNpb24gYXMgcHJvdG9jb2xWZXJzaW9uMjE5MyB9IGZyb20gJy4uL3dpcmUvdmVyc2lvbnMvdjIxOTMnO1xuaW1wb3J0IHsgR2VuZXJhdG9yIH0gZnJvbSAnQGpzcHJpc21hcmluZS9taW5lY3JhZnQnO1xuXG4vKipcbiAqIEEgYERpbWVuc2lvbkRlZmluaXRpb25gOiB0aGUgaGVpZ2h0IGJvdW5kcywgZ2VuZXJhdG9yIGFuZCBza3kgb2Ygb25lIGRhdGEtZHJpdmVuIGRpbWVuc2lvbixcbiAqIGFzIGBEaW1lbnNpb25EYXRhUGFja2V0YCBsaXN0cyB0aGVtLlxuICpcbiAqIFRoZSB3aXJlIGxheW91dCBsaXZlcyBpbiBgd2lyZS9zdHJ1Y3R1cmVzL0RpbWVuc2lvbkRlZmluaXRpb24udHNgJ3MgZGVjbGFyYXRpdmUgZGVmaW5pdGlvbixcbiAqIHdoaWNoIHRoaXMgY2xhc3Mgd2Fsa3MgYXQgdGhlIHByb3RvY29sIHZlcnNpb24gaXQgaXMgaGFuZGVkOiB0aGUgc2l4IDIxOTMgZmllbGRzIGJlbG93LFxuICogcGx1cyBgQ2xvdWQgSGVpZ2h0YCBhbmQgYFJlbmRlciBDbG91ZHNgIGZyb20gMjIyNSBvbi5cbiAqXG4gKiBQcm90b2NvbCAyMTkzIHdpcmUgb3JkZXI6XG4gKiAwLiBgTWluaW11bSBZYDogWmlnWmFnIHZhcmludDMyLCB0aGUgbG93ZXN0IGJsb2NrIHkgb2YgdGhlIGRpbWVuc2lvbi5cbiAqIDEuIGBIZWlnaHQgUmFuZ2VgOiBaaWdaYWcgdmFyaW50MzIsIGhvdyBtYW55IGJsb2NrcyBzaXQgYWJvdmUgYE1pbmltdW0gWWAuXG4gKiAyLiBgR2VuZXJhdG9yIFR5cGVgOiBaaWdaYWcgdmFyaW50MzIgd2l0aCB0aGUgbnVtZXJpYyB2YWx1ZXMgb2Yge0BsaW5rIEdlbmVyYXRvcn0uXG4gKiAzLiBgRGltZW5zaW9uIFR5cGVgOiBaaWdaYWcgdmFyaW50MzIsIHRoZSBkaW1lbnNpb24ncyBydW50aW1lIGlkLlxuICogNC4gYFBhY2sgSWRgOiBhbiBgbWNlOjpVVUlEYCwgdGhlIGJlaGF2aW9yIHBhY2sgdGhhdCByZWdpc3RlcmVkIHRoZSBkaW1lbnNpb24uXG4gKiA1LiBgRGVmYXVsdCBCaW9tZWA6IHN0cmluZywgdGhlIGJpb21lIGlkZW50aWZpZXIgdGhlIGRpbWVuc2lvbiBnZW5lcmF0ZXMgd2l0aC5cbiAqXG4gKiBQcm90b2NvbCAyMjI1IGFwcGVuZHM6XG4gKiA2LiBgQ2xvdWQgSGVpZ2h0YDogWmlnWmFnIHZhcmludDMyLCB0aGUgYmxvY2sgeSBjbG91ZHMgcmVuZGVyIGF0LlxuICogNy4gYFJlbmRlciBDbG91ZHNgOiBib29sLCB3aGV0aGVyIHRoZSBkaW1lbnNpb24gZHJhd3MgY2xvdWRzLlxuICoge0BsaW5rIGh0dHBzOi8vbW9qYW5nLmdpdGh1Yi5pby9iZWRyb2NrLXByb3RvY29sLWRvY3MvMS4yNi41MS90eXBlcy9kaW1lbnNpb24tZGVmaW5pdGlvbi99XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERpbWVuc2lvbkRlZmluaXRpb24gZXh0ZW5kcyBOZXR3b3JrU3RydWN0dXJlIHtcbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgZGVmaW5pdGlvbiBmcm9tIGl0cyBmaWVsZHMuIEV2ZXJ5IHBhcmFtZXRlciBoYXMgYSBkZWZhdWx0IHNvIGBkZXNlcmlhbGl6ZWBcbiAgICAgKiBjYW4gY29uc3RydWN0IGFuIGVtcHR5IGluc3RhbmNlIGJlZm9yZSByZWFkaW5nIHRoZSBzdHJlYW0uXG4gICAgICogQHBhcmFtIG1pbmltdW1ZIC0gYE1pbmltdW0gWWAsIHRoZSBsb3dlc3QgYmxvY2sgeS5cbiAgICAgKiBAcGFyYW0gaGVpZ2h0UmFuZ2UgLSBgSGVpZ2h0IFJhbmdlYCwgdGhlIGJsb2NrIGNvdW50IGFib3ZlIGBtaW5pbXVtWWA7IHRoZSB0b3AgeSBpcyBgbWluaW11bVkgKyBoZWlnaHRSYW5nZSAtIDFgLlxuICAgICAqIEBwYXJhbSBnZW5lcmF0b3JUeXBlIC0gYEdlbmVyYXRvciBUeXBlYC5cbiAgICAgKiBAcGFyYW0gZGltZW5zaW9uVHlwZSAtIGBEaW1lbnNpb24gVHlwZWAsIHRoZSBydW50aW1lIGlkLiBUaGUgdmFuaWxsYSBvbmVzIGFyZSAwIHRvIDI7IGN1c3RvbSBkaW1lbnNpb25zIGNvdW50IGZyb20gMTAwMC5cbiAgICAgKiBAcGFyYW0gcGFja0lkIC0gYFBhY2sgSWRgIG9mIHRoZSByZWdpc3RlcmluZyBiZWhhdmlvciBwYWNrLlxuICAgICAqIEBwYXJhbSBkZWZhdWx0QmlvbWUgLSBgRGVmYXVsdCBCaW9tZWAgaWRlbnRpZmllciwgZm9yIGV4YW1wbGUgXCJtaW5lY3JhZnQ6cGxhaW5zXCIuXG4gICAgICogQHBhcmFtIGNsb3VkSGVpZ2h0IC0gYENsb3VkIEhlaWdodGAsIHRoZSBibG9jayB5IGNsb3VkcyByZW5kZXIgYXQuIE9uIHRoZSB3aXJlIGZyb20gMjIyNSBvbi5cbiAgICAgKiBAcGFyYW0gcmVuZGVyQ2xvdWRzIC0gYFJlbmRlciBDbG91ZHNgLCB3aGV0aGVyIHRoZSBkaW1lbnNpb24gZHJhd3MgY2xvdWRzLiBPbiB0aGUgd2lyZSBmcm9tIDIyMjUgb24uXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgbWluaW11bVkgPSAwLFxuICAgICAgICBwdWJsaWMgaGVpZ2h0UmFuZ2UgPSAwLFxuICAgICAgICBwdWJsaWMgZ2VuZXJhdG9yVHlwZTogR2VuZXJhdG9yID0gR2VuZXJhdG9yLlVOREVGSU5FRCxcbiAgICAgICAgcHVibGljIGRpbWVuc2lvblR5cGUgPSAwLFxuICAgICAgICBwdWJsaWMgcGFja0lkOiBVVUlEID0gbmV3IFVVSUQoMG4sIDBuKSxcbiAgICAgICAgcHVibGljIGRlZmF1bHRCaW9tZSA9ICcnLFxuICAgICAgICBwdWJsaWMgY2xvdWRIZWlnaHQgPSAwLFxuICAgICAgICBwdWJsaWMgcmVuZGVyQ2xvdWRzID0gZmFsc2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXcml0ZXMgdGhlIGZpZWxkcyB0aGUgcHJvdG9jb2wgdmVyc2lvbiBwdXRzIG9uIHRoZSB3aXJlLCBpbiBsYXlvdXQgb3JkZXIuXG4gICAgICogQHBhcmFtIHN0cmVhbSAtIFRoZSBzdHJlYW0gdG8gd3JpdGUgdG8uXG4gICAgICogQHBhcmFtIHByb3RvY29sVmVyc2lvbiAtIFRoZSBuZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb247IGRlZmF1bHRzIHRvIDIxOTMuXG4gICAgICovXG4gICAgcHVibGljIHNlcmlhbGl6ZShzdHJlYW06IE5ldHdvcmtCaW5hcnlTdHJlYW0sIHByb3RvY29sVmVyc2lvbiA9IHByb3RvY29sVmVyc2lvbjIxOTMpOiB2b2lkIHtcbiAgICAgICAgd3JpdGVEaW1lbnNpb25EZWZpbml0aW9uKHN0cmVhbSwgdGhpcywgcHJvdG9jb2xWZXJzaW9uKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWFkcyB0aGVtIGJhY2sgaW4gdGhlIHNhbWUgb3JkZXIsIGZpbGxpbmcgdmVyc2lvbi1hYnNlbnQgZmllbGRzIHdpdGggdGhlaXIgZmFsbGJhY2tzLlxuICAgICAqIEBwYXJhbSBzdHJlYW0gLSBUaGUgc3RyZWFtIHRvIHJlYWQgZnJvbS5cbiAgICAgKiBAcGFyYW0gcHJvdG9jb2xWZXJzaW9uIC0gVGhlIG5lZ290aWF0ZWQgcHJvdG9jb2wgdmVyc2lvbjsgZGVmYXVsdHMgdG8gMjE5My5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGVzZXJpYWxpemUoc3RyZWFtOiBOZXR3b3JrQmluYXJ5U3RyZWFtLCBwcm90b2NvbFZlcnNpb24gPSBwcm90b2NvbFZlcnNpb24yMTkzKTogdm9pZCB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgcmVhZERpbWVuc2lvbkRlZmluaXRpb24oc3RyZWFtLCBwcm90b2NvbFZlcnNpb24pKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWFkcyBhIGRlZmluaXRpb24gaW4gdGhlIGxheW91dCBvZiB0aGUgZ2l2ZW4gcHJvdG9jb2wgdmVyc2lvbi5cbiAgICAgKiBAcGFyYW0gc3RyZWFtIC0gVGhlIHN0cmVhbSB0byByZWFkIGZyb20uXG4gICAgICogQHBhcmFtIHByb3RvY29sVmVyc2lvbiAtIFRoZSBuZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb247IGRlZmF1bHRzIHRvIDIxOTMuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyByZWFkKHN0cmVhbTogTmV0d29ya0JpbmFyeVN0cmVhbSwgcHJvdG9jb2xWZXJzaW9uID0gcHJvdG9jb2xWZXJzaW9uMjE5Myk6IERpbWVuc2lvbkRlZmluaXRpb24ge1xuICAgICAgICBjb25zdCBkZWZpbml0aW9uID0gbmV3IERpbWVuc2lvbkRlZmluaXRpb24oKTtcbiAgICAgICAgZGVmaW5pdGlvbi5kZXNlcmlhbGl6ZShzdHJlYW0sIHByb3RvY29sVmVyc2lvbik7XG4gICAgICAgIHJldHVybiBkZWZpbml0aW9uO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNEJBLElBQXFCLHNCQUFyQixNQUFxQiw0QkFBNEIsaUJBQWlCO0NBY25EO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Ozs7Ozs7Ozs7Ozs7Q0FSWCxZQUNJLFdBQWtCLEdBQ2xCLGNBQXFCLEdBQ3JCLGdCQUFrQyxVQUFVLFdBQzVDLGdCQUF1QixHQUN2QixTQUFzQixJQUFJLEtBQUssSUFBSSxFQUFFLEdBQ3JDLGVBQXNCLElBQ3RCLGNBQXFCLEdBQ3JCLGVBQXNCLE9BQ3hCO0VBQ0UsTUFBTTtFQVRDLEtBQUEsV0FBQTtFQUNBLEtBQUEsY0FBQTtFQUNBLEtBQUEsZ0JBQUE7RUFDQSxLQUFBLGdCQUFBO0VBQ0EsS0FBQSxTQUFBO0VBQ0EsS0FBQSxlQUFBO0VBQ0EsS0FBQSxjQUFBO0VBQ0EsS0FBQSxlQUFBO0NBR1g7Ozs7OztDQU9BLFVBQWlCLFFBQTZCLG9CQUFrQkEsaUJBQTJCO0VBQ3ZGLHlCQUF5QixRQUFRLE1BQU1DLGlCQUFlO0NBQzFEOzs7Ozs7Q0FPQSxZQUFtQixRQUE2QixvQkFBa0JELGlCQUEyQjtFQUN6RixPQUFPLE9BQU8sTUFBTSx3QkFBd0IsUUFBUUMsaUJBQWUsQ0FBQztDQUN4RTs7Ozs7O0NBT0EsT0FBYyxLQUFLLFFBQTZCLG9CQUFrQkQsaUJBQTBDO0VBQ3hHLE1BQU0sYUFBYSxJQUFJLG9CQUFvQjtFQUMzQyxXQUFXLFlBQVksUUFBUUMsaUJBQWU7RUFDOUMsT0FBTztDQUNYO0FBQ0oifQ==
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const require_wire_versions_v2193 = require("../versions/v2193.cjs.cjs");
4
+ const require_wire_define = require("../define.cjs.cjs");
5
+ const require_wire_fieldTypes = require("../fieldTypes.cjs.cjs");
6
+ const require_wire_WireLayout = require("../WireLayout.cjs.cjs");
7
+ const require_wire_wireGates = require("../wireGates.cjs.cjs");
8
+ const require_structure_UUID = require("../../structure/UUID.cjs.cjs");
9
+ // src/wire/structures/DimensionDefinition.ts
10
+ /**
11
+ * The docs' `DimensionDefinition`: the height bounds, generator and sky of one data-driven
12
+ * dimension, as `DimensionDataPacket` lists them, described as a declarative field list.
13
+ *
14
+ * Field names and order follow the schema's `x-ordinal-index`. Protocol 2225 appended
15
+ * `Cloud Height` (ordinal 6) and `Render Clouds` (ordinal 7), verified against the v1.26.60
16
+ * `metadata.zip` (`DimensionDefinition.json`) side by side with the v1.26.51 one, which ends
17
+ * at `Default Biome` (ordinal 5). Nothing before them changed.
18
+ * {@link https://mojang.github.io/bedrock-protocol-docs/1.26.51/types/dimension-definition/}
19
+ */
20
+ /** `mce::UUID` as the `structure/UUID` of two unsigned 64-bit halves, which `Pack Id` has always been. */
21
+ var packId = require_wire_fieldTypes.custom("mce::UUID", (stream, value) => {
22
+ stream.writeUnsignedLongLE(value.most);
23
+ stream.writeUnsignedLongLE(value.least);
24
+ }, (stream) => new require_structure_UUID.default(stream.readUnsignedLongLE(), stream.readUnsignedLongLE()));
25
+ /** The `DimensionDefinition` field list; the module doc carries the wire provenance. */
26
+ var dimensionDefinition = require_wire_define.definePacket("DimensionDefinition", {
27
+ /** `Minimum Y`: the lowest block y of the dimension. */
28
+ minimumY: require_wire_fieldTypes.varint32,
29
+ /** `Height Range`: how many blocks sit above `Minimum Y`. */
30
+ heightRange: require_wire_fieldTypes.varint32,
31
+ /** `Generator Type`: a `Generator` value (0 Legacy, 1 Overworld, 2 Flat, 3 Nether, 4 TheEnd, 5 Void, 6 Undefined). */
32
+ generatorType: require_wire_fieldTypes.varint32,
33
+ /** `Dimension Type`: the dimension's runtime id. Vanilla uses 0 to 2; custom dimensions count from 1000. */
34
+ dimensionType: require_wire_fieldTypes.varint32,
35
+ /** `Pack Id`: the behavior pack that registered the dimension. */
36
+ packId,
37
+ /** `Default Biome`: the biome identifier the dimension generates with. */
38
+ defaultBiome: require_wire_fieldTypes.string,
39
+ /** `Cloud Height`: the block y clouds render at; 2225 on. */
40
+ cloudHeight: require_wire_define.gated(require_wire_wireGates.SINCE_2225, require_wire_fieldTypes.varint32, 0),
41
+ /** `Render Clouds`: whether the dimension draws clouds at all; 2225 on. */
42
+ renderClouds: require_wire_define.gated(require_wire_wireGates.SINCE_2225, require_wire_fieldTypes.bool, false)
43
+ });
44
+ /**
45
+ * Writes a `DimensionDefinition` in the layout of the given protocol version.
46
+ * @param stream - The stream to write to.
47
+ * @param value - The definition's fields.
48
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
49
+ */
50
+ var writeDimensionDefinition = (stream, value, protocolVersion$1 = require_wire_versions_v2193.protocolVersion) => {
51
+ require_wire_WireLayout.layoutAt(dimensionDefinition, protocolVersion$1).encode(stream, value);
52
+ };
53
+ /**
54
+ * Reads a `DimensionDefinition` in the layout of the given protocol version, the mirror of
55
+ * {@link writeDimensionDefinition}. Fields the version leaves off the wire take their
56
+ * fallbacks, so a 2193 read still yields `cloudHeight` and `renderClouds`.
57
+ * @param stream - The stream to read from.
58
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
59
+ */
60
+ var readDimensionDefinition = (stream, protocolVersion$2 = require_wire_versions_v2193.protocolVersion) => require_wire_WireLayout.layoutAt(dimensionDefinition, protocolVersion$2).decode(stream);
61
+ exports.dimensionDefinition = dimensionDefinition;
62
+ exports.readDimensionDefinition = readDimensionDefinition;
63
+ exports.writeDimensionDefinition = writeDimensionDefinition;
64
+
65
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGVmaW5pdGlvbi5janMuY2pzIiwibmFtZXMiOlsiVVVJRCIsImRlZmluZVBhY2tldCIsImdhdGVkIiwiU0lOQ0VfMjIyNSIsInByb3RvY29sVmVyc2lvbjIxOTMiLCJwcm90b2NvbFZlcnNpb24iLCJsYXlvdXRBdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy93aXJlL3N0cnVjdHVyZXMvRGltZW5zaW9uRGVmaW5pdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBkb2NzJyBgRGltZW5zaW9uRGVmaW5pdGlvbmA6IHRoZSBoZWlnaHQgYm91bmRzLCBnZW5lcmF0b3IgYW5kIHNreSBvZiBvbmUgZGF0YS1kcml2ZW5cbiAqIGRpbWVuc2lvbiwgYXMgYERpbWVuc2lvbkRhdGFQYWNrZXRgIGxpc3RzIHRoZW0sIGRlc2NyaWJlZCBhcyBhIGRlY2xhcmF0aXZlIGZpZWxkIGxpc3QuXG4gKlxuICogRmllbGQgbmFtZXMgYW5kIG9yZGVyIGZvbGxvdyB0aGUgc2NoZW1hJ3MgYHgtb3JkaW5hbC1pbmRleGAuIFByb3RvY29sIDIyMjUgYXBwZW5kZWRcbiAqIGBDbG91ZCBIZWlnaHRgIChvcmRpbmFsIDYpIGFuZCBgUmVuZGVyIENsb3Vkc2AgKG9yZGluYWwgNyksIHZlcmlmaWVkIGFnYWluc3QgdGhlIHYxLjI2LjYwXG4gKiBgbWV0YWRhdGEuemlwYCAoYERpbWVuc2lvbkRlZmluaXRpb24uanNvbmApIHNpZGUgYnkgc2lkZSB3aXRoIHRoZSB2MS4yNi41MSBvbmUsIHdoaWNoIGVuZHNcbiAqIGF0IGBEZWZhdWx0IEJpb21lYCAob3JkaW5hbCA1KS4gTm90aGluZyBiZWZvcmUgdGhlbSBjaGFuZ2VkLlxuICoge0BsaW5rIGh0dHBzOi8vbW9qYW5nLmdpdGh1Yi5pby9iZWRyb2NrLXByb3RvY29sLWRvY3MvMS4yNi41MS90eXBlcy9kaW1lbnNpb24tZGVmaW5pdGlvbi99XG4gKi9cbmltcG9ydCB7IGRlZmluZVBhY2tldCwgZ2F0ZWQgfSBmcm9tICcuLi9kZWZpbmUnO1xuaW1wb3J0ICogYXMgdCBmcm9tICcuLi9maWVsZFR5cGVzJztcbmltcG9ydCB7IGxheW91dEF0IH0gZnJvbSAnLi4vV2lyZUxheW91dCc7XG5pbXBvcnQgeyBTSU5DRV8yMjI1IH0gZnJvbSAnLi4vd2lyZUdhdGVzJztcbmltcG9ydCB7IHByb3RvY29sVmVyc2lvbiBhcyBwcm90b2NvbFZlcnNpb24yMTkzIH0gZnJvbSAnLi4vdmVyc2lvbnMvdjIxOTMnO1xuaW1wb3J0IFVVSUQgZnJvbSAnLi4vLi4vc3RydWN0dXJlL1VVSUQnO1xuXG5pbXBvcnQgdHlwZSBCaW5hcnlTdHJlYW0gZnJvbSAnQGpzcHJpc21hcmluZS9iaW5hcnl1dGlscyc7XG5pbXBvcnQgdHlwZSB7IFBheWxvYWRPZiB9IGZyb20gJy4uL2RlZmluZSc7XG5cbi8qKiBgbWNlOjpVVUlEYCBhcyB0aGUgYHN0cnVjdHVyZS9VVUlEYCBvZiB0d28gdW5zaWduZWQgNjQtYml0IGhhbHZlcywgd2hpY2ggYFBhY2sgSWRgIGhhcyBhbHdheXMgYmVlbi4gKi9cbmNvbnN0IHBhY2tJZCA9IHQuY3VzdG9tPFVVSUQ+KFxuICAgICdtY2U6OlVVSUQnLFxuICAgIChzdHJlYW0sIHZhbHVlKSA9PiB7XG4gICAgICAgIHN0cmVhbS53cml0ZVVuc2lnbmVkTG9uZ0xFKHZhbHVlLm1vc3QpO1xuICAgICAgICBzdHJlYW0ud3JpdGVVbnNpZ25lZExvbmdMRSh2YWx1ZS5sZWFzdCk7XG4gICAgfSxcbiAgICAoc3RyZWFtKSA9PiBuZXcgVVVJRChzdHJlYW0ucmVhZFVuc2lnbmVkTG9uZ0xFKCksIHN0cmVhbS5yZWFkVW5zaWduZWRMb25nTEUoKSlcbik7XG5cbi8qKiBUaGUgYERpbWVuc2lvbkRlZmluaXRpb25gIGZpZWxkIGxpc3Q7IHRoZSBtb2R1bGUgZG9jIGNhcnJpZXMgdGhlIHdpcmUgcHJvdmVuYW5jZS4gKi9cbmV4cG9ydCBjb25zdCBkaW1lbnNpb25EZWZpbml0aW9uID0gZGVmaW5lUGFja2V0KCdEaW1lbnNpb25EZWZpbml0aW9uJywge1xuICAgIC8qKiBgTWluaW11bSBZYDogdGhlIGxvd2VzdCBibG9jayB5IG9mIHRoZSBkaW1lbnNpb24uICovXG4gICAgbWluaW11bVk6IHQudmFyaW50MzIsXG4gICAgLyoqIGBIZWlnaHQgUmFuZ2VgOiBob3cgbWFueSBibG9ja3Mgc2l0IGFib3ZlIGBNaW5pbXVtIFlgLiAqL1xuICAgIGhlaWdodFJhbmdlOiB0LnZhcmludDMyLFxuICAgIC8qKiBgR2VuZXJhdG9yIFR5cGVgOiBhIGBHZW5lcmF0b3JgIHZhbHVlICgwIExlZ2FjeSwgMSBPdmVyd29ybGQsIDIgRmxhdCwgMyBOZXRoZXIsIDQgVGhlRW5kLCA1IFZvaWQsIDYgVW5kZWZpbmVkKS4gKi9cbiAgICBnZW5lcmF0b3JUeXBlOiB0LnZhcmludDMyLFxuICAgIC8qKiBgRGltZW5zaW9uIFR5cGVgOiB0aGUgZGltZW5zaW9uJ3MgcnVudGltZSBpZC4gVmFuaWxsYSB1c2VzIDAgdG8gMjsgY3VzdG9tIGRpbWVuc2lvbnMgY291bnQgZnJvbSAxMDAwLiAqL1xuICAgIGRpbWVuc2lvblR5cGU6IHQudmFyaW50MzIsXG4gICAgLyoqIGBQYWNrIElkYDogdGhlIGJlaGF2aW9yIHBhY2sgdGhhdCByZWdpc3RlcmVkIHRoZSBkaW1lbnNpb24uICovXG4gICAgcGFja0lkLFxuICAgIC8qKiBgRGVmYXVsdCBCaW9tZWA6IHRoZSBiaW9tZSBpZGVudGlmaWVyIHRoZSBkaW1lbnNpb24gZ2VuZXJhdGVzIHdpdGguICovXG4gICAgZGVmYXVsdEJpb21lOiB0LnN0cmluZyxcbiAgICAvKiogYENsb3VkIEhlaWdodGA6IHRoZSBibG9jayB5IGNsb3VkcyByZW5kZXIgYXQ7IDIyMjUgb24uICovXG4gICAgY2xvdWRIZWlnaHQ6IGdhdGVkKFNJTkNFXzIyMjUsIHQudmFyaW50MzIsIDApLFxuICAgIC8qKiBgUmVuZGVyIENsb3Vkc2A6IHdoZXRoZXIgdGhlIGRpbWVuc2lvbiBkcmF3cyBjbG91ZHMgYXQgYWxsOyAyMjI1IG9uLiAqL1xuICAgIHJlbmRlckNsb3VkczogZ2F0ZWQoU0lOQ0VfMjIyNSwgdC5ib29sLCBmYWxzZSlcbn0pO1xuXG4vKiogVGhlIGZpZWxkcyBvZiBvbmUgYERpbWVuc2lvbkRlZmluaXRpb25gLCB0aGUgc2FtZSBzaGFwZSBhdCBldmVyeSBwcm90b2NvbCB2ZXJzaW9uLiAqL1xuZXhwb3J0IHR5cGUgRGltZW5zaW9uRGVmaW5pdGlvbkZpZWxkcyA9IFBheWxvYWRPZjx0eXBlb2YgZGltZW5zaW9uRGVmaW5pdGlvbj47XG5cbi8qKlxuICogV3JpdGVzIGEgYERpbWVuc2lvbkRlZmluaXRpb25gIGluIHRoZSBsYXlvdXQgb2YgdGhlIGdpdmVuIHByb3RvY29sIHZlcnNpb24uXG4gKiBAcGFyYW0gc3RyZWFtIC0gVGhlIHN0cmVhbSB0byB3cml0ZSB0by5cbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBkZWZpbml0aW9uJ3MgZmllbGRzLlxuICogQHBhcmFtIHByb3RvY29sVmVyc2lvbiAtIFRoZSBuZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb247IGRlZmF1bHRzIHRvIDIxOTMuXG4gKi9cbmV4cG9ydCBjb25zdCB3cml0ZURpbWVuc2lvbkRlZmluaXRpb24gPSAoXG4gICAgc3RyZWFtOiBCaW5hcnlTdHJlYW0sXG4gICAgdmFsdWU6IERpbWVuc2lvbkRlZmluaXRpb25GaWVsZHMsXG4gICAgcHJvdG9jb2xWZXJzaW9uID0gcHJvdG9jb2xWZXJzaW9uMjE5M1xuKTogdm9pZCA9PiB7XG4gICAgbGF5b3V0QXQoZGltZW5zaW9uRGVmaW5pdGlvbiwgcHJvdG9jb2xWZXJzaW9uKS5lbmNvZGUoc3RyZWFtLCB2YWx1ZSk7XG59O1xuXG4vKipcbiAqIFJlYWRzIGEgYERpbWVuc2lvbkRlZmluaXRpb25gIGluIHRoZSBsYXlvdXQgb2YgdGhlIGdpdmVuIHByb3RvY29sIHZlcnNpb24sIHRoZSBtaXJyb3Igb2ZcbiAqIHtAbGluayB3cml0ZURpbWVuc2lvbkRlZmluaXRpb259LiBGaWVsZHMgdGhlIHZlcnNpb24gbGVhdmVzIG9mZiB0aGUgd2lyZSB0YWtlIHRoZWlyXG4gKiBmYWxsYmFja3MsIHNvIGEgMjE5MyByZWFkIHN0aWxsIHlpZWxkcyBgY2xvdWRIZWlnaHRgIGFuZCBgcmVuZGVyQ2xvdWRzYC5cbiAqIEBwYXJhbSBzdHJlYW0gLSBUaGUgc3RyZWFtIHRvIHJlYWQgZnJvbS5cbiAqIEBwYXJhbSBwcm90b2NvbFZlcnNpb24gLSBUaGUgbmVnb3RpYXRlZCBwcm90b2NvbCB2ZXJzaW9uOyBkZWZhdWx0cyB0byAyMTkzLlxuICovXG5leHBvcnQgY29uc3QgcmVhZERpbWVuc2lvbkRlZmluaXRpb24gPSAoXG4gICAgc3RyZWFtOiBCaW5hcnlTdHJlYW0sXG4gICAgcHJvdG9jb2xWZXJzaW9uID0gcHJvdG9jb2xWZXJzaW9uMjE5M1xuKTogRGltZW5zaW9uRGVmaW5pdGlvbkZpZWxkcyA9PiBsYXlvdXRBdChkaW1lbnNpb25EZWZpbml0aW9uLCBwcm90b2NvbFZlcnNpb24pLmRlY29kZShzdHJlYW0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFCQSxJQUFNLFNBQUEsd0JBQUEsT0FDRixjQUNDLFFBQVEsVUFBVTtDQUNmLE9BQU8sb0JBQW9CLE1BQU0sSUFBSTtDQUNyQyxPQUFPLG9CQUFvQixNQUFNLEtBQUs7QUFDMUMsSUFDQyxXQUFXLElBQUlBLHVCQUFBQSxRQUFLLE9BQU8sbUJBQW1CLEdBQUcsT0FBTyxtQkFBbUIsQ0FBQyxDQUNqRjs7QUFHQSxJQUFhLHNCQUFzQkMsb0JBQUFBLGFBQWEsdUJBQXVCOztDQUVuRSxVQUFBLHdCQUFBOztDQUVBLGFBQUEsd0JBQUE7O0NBRUEsZUFBQSx3QkFBQTs7Q0FFQSxlQUFBLHdCQUFBOztDQUVBOztDQUVBLGNBQUEsd0JBQUE7O0NBRUEsYUFBYUMsb0JBQUFBLE1BQU1DLHVCQUFBQSxZQUFBQSx3QkFBQUEsVUFBd0IsQ0FBQzs7Q0FFNUMsY0FBY0Qsb0JBQUFBLE1BQU1DLHVCQUFBQSxZQUFBQSx3QkFBQUEsTUFBb0IsS0FBSztBQUNqRCxDQUFDOzs7Ozs7O0FBV0QsSUFBYSw0QkFDVCxRQUNBLE9BQ0Esb0JBQWtCQyw0QkFBQUEsb0JBQ1g7Q0FDUCx3QkFBQSxTQUFTLHFCQUFxQkMsaUJBQWUsQ0FBQyxDQUFDLE9BQU8sUUFBUSxLQUFLO0FBQ3ZFOzs7Ozs7OztBQVNBLElBQWEsMkJBQ1QsUUFDQSxvQkFBa0JELDRCQUFBQSxvQkFDVUUsd0JBQUFBLFNBQVMscUJBQXFCRCxpQkFBZSxDQUFDLENBQUMsT0FBTyxNQUFNIn0=
@@ -0,0 +1,41 @@
1
+ import * as t from '../fieldTypes';
2
+ import UUID from '../../structure/UUID';
3
+ import type BinaryStream from '@jsprismarine/binaryutils';
4
+ import type { PayloadOf } from '../define';
5
+ /** The `DimensionDefinition` field list; the module doc carries the wire provenance. */
6
+ export declare const dimensionDefinition: import("../define").PacketDefinition<{
7
+ /** `Minimum Y`: the lowest block y of the dimension. */
8
+ minimumY: t.WireType<number>;
9
+ /** `Height Range`: how many blocks sit above `Minimum Y`. */
10
+ heightRange: t.WireType<number>;
11
+ /** `Generator Type`: a `Generator` value (0 Legacy, 1 Overworld, 2 Flat, 3 Nether, 4 TheEnd, 5 Void, 6 Undefined). */
12
+ generatorType: t.WireType<number>;
13
+ /** `Dimension Type`: the dimension's runtime id. Vanilla uses 0 to 2; custom dimensions count from 1000. */
14
+ dimensionType: t.WireType<number>;
15
+ /** `Pack Id`: the behavior pack that registered the dimension. */
16
+ packId: t.WireType<UUID>;
17
+ /** `Default Biome`: the biome identifier the dimension generates with. */
18
+ defaultBiome: t.WireType<string>;
19
+ /** `Cloud Height`: the block y clouds render at; 2225 on. */
20
+ cloudHeight: import("../define").GatedField<number>;
21
+ /** `Render Clouds`: whether the dimension draws clouds at all; 2225 on. */
22
+ renderClouds: import("../define").GatedField<boolean>;
23
+ }>;
24
+ /** The fields of one `DimensionDefinition`, the same shape at every protocol version. */
25
+ export type DimensionDefinitionFields = PayloadOf<typeof dimensionDefinition>;
26
+ /**
27
+ * Writes a `DimensionDefinition` in the layout of the given protocol version.
28
+ * @param stream - The stream to write to.
29
+ * @param value - The definition's fields.
30
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
31
+ */
32
+ export declare const writeDimensionDefinition: (stream: BinaryStream, value: DimensionDefinitionFields, protocolVersion?: number) => void;
33
+ /**
34
+ * Reads a `DimensionDefinition` in the layout of the given protocol version, the mirror of
35
+ * {@link writeDimensionDefinition}. Fields the version leaves off the wire take their
36
+ * fallbacks, so a 2193 read still yields `cloudHeight` and `renderClouds`.
37
+ * @param stream - The stream to read from.
38
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
39
+ */
40
+ export declare const readDimensionDefinition: (stream: BinaryStream, protocolVersion?: number) => DimensionDefinitionFields;
41
+ //# sourceMappingURL=DimensionDefinition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DimensionDefinition.d.ts","sourceRoot":"","sources":["../../../src/wire/structures/DimensionDefinition.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,CAAC,MAAM,eAAe,CAAC;AAInC,OAAO,IAAI,MAAM,sBAAsB,CAAC;AAExC,OAAO,KAAK,YAAY,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAY3C,wFAAwF;AACxF,eAAO,MAAM,mBAAmB;IAC5B,wDAAwD;;IAExD,6DAA6D;;IAE7D,sHAAsH;;IAEtH,4GAA4G;;IAE5G,kEAAkE;;IAElE,0EAA0E;;IAE1E,6DAA6D;;IAE7D,2EAA2E;;EAE7E,CAAC;AAEH,yFAAyF;AACzF,MAAM,MAAM,yBAAyB,GAAG,SAAS,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,WACzB,YAAY,SACb,yBAAyB,+BAEjC,IAEF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,WACxB,YAAY,+BAErB,yBAA0F,CAAC"}
@@ -0,0 +1,61 @@
1
+ import { protocolVersion } from "../versions/v2193.es.js";
2
+ import { definePacket, gated } from "../define.es.js";
3
+ import { bool, custom, string, varint32 } from "../fieldTypes.es.js";
4
+ import { layoutAt } from "../WireLayout.es.js";
5
+ import { SINCE_2225 } from "../wireGates.es.js";
6
+ import UUID from "../../structure/UUID.es.js";
7
+ // src/wire/structures/DimensionDefinition.ts
8
+ /**
9
+ * The docs' `DimensionDefinition`: the height bounds, generator and sky of one data-driven
10
+ * dimension, as `DimensionDataPacket` lists them, described as a declarative field list.
11
+ *
12
+ * Field names and order follow the schema's `x-ordinal-index`. Protocol 2225 appended
13
+ * `Cloud Height` (ordinal 6) and `Render Clouds` (ordinal 7), verified against the v1.26.60
14
+ * `metadata.zip` (`DimensionDefinition.json`) side by side with the v1.26.51 one, which ends
15
+ * at `Default Biome` (ordinal 5). Nothing before them changed.
16
+ * {@link https://mojang.github.io/bedrock-protocol-docs/1.26.51/types/dimension-definition/}
17
+ */
18
+ /** `mce::UUID` as the `structure/UUID` of two unsigned 64-bit halves, which `Pack Id` has always been. */
19
+ var packId = custom("mce::UUID", (stream, value) => {
20
+ stream.writeUnsignedLongLE(value.most);
21
+ stream.writeUnsignedLongLE(value.least);
22
+ }, (stream) => new UUID(stream.readUnsignedLongLE(), stream.readUnsignedLongLE()));
23
+ /** The `DimensionDefinition` field list; the module doc carries the wire provenance. */
24
+ var dimensionDefinition = definePacket("DimensionDefinition", {
25
+ /** `Minimum Y`: the lowest block y of the dimension. */
26
+ minimumY: varint32,
27
+ /** `Height Range`: how many blocks sit above `Minimum Y`. */
28
+ heightRange: varint32,
29
+ /** `Generator Type`: a `Generator` value (0 Legacy, 1 Overworld, 2 Flat, 3 Nether, 4 TheEnd, 5 Void, 6 Undefined). */
30
+ generatorType: varint32,
31
+ /** `Dimension Type`: the dimension's runtime id. Vanilla uses 0 to 2; custom dimensions count from 1000. */
32
+ dimensionType: varint32,
33
+ /** `Pack Id`: the behavior pack that registered the dimension. */
34
+ packId,
35
+ /** `Default Biome`: the biome identifier the dimension generates with. */
36
+ defaultBiome: string,
37
+ /** `Cloud Height`: the block y clouds render at; 2225 on. */
38
+ cloudHeight: gated(SINCE_2225, varint32, 0),
39
+ /** `Render Clouds`: whether the dimension draws clouds at all; 2225 on. */
40
+ renderClouds: gated(SINCE_2225, bool, false)
41
+ });
42
+ /**
43
+ * Writes a `DimensionDefinition` in the layout of the given protocol version.
44
+ * @param stream - The stream to write to.
45
+ * @param value - The definition's fields.
46
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
47
+ */
48
+ var writeDimensionDefinition = (stream, value, protocolVersion$1 = protocolVersion) => {
49
+ layoutAt(dimensionDefinition, protocolVersion$1).encode(stream, value);
50
+ };
51
+ /**
52
+ * Reads a `DimensionDefinition` in the layout of the given protocol version, the mirror of
53
+ * {@link writeDimensionDefinition}. Fields the version leaves off the wire take their
54
+ * fallbacks, so a 2193 read still yields `cloudHeight` and `renderClouds`.
55
+ * @param stream - The stream to read from.
56
+ * @param protocolVersion - The negotiated protocol version; defaults to 2193.
57
+ */
58
+ var readDimensionDefinition = (stream, protocolVersion$2 = protocolVersion) => layoutAt(dimensionDefinition, protocolVersion$2).decode(stream);
59
+ export { dimensionDefinition, readDimensionDefinition, writeDimensionDefinition };
60
+
61
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGltZW5zaW9uRGVmaW5pdGlvbi5lcy5qcyIsIm5hbWVzIjpbInQuY3VzdG9tIiwidC52YXJpbnQzMiIsInQuc3RyaW5nIiwidC5ib29sIiwicHJvdG9jb2xWZXJzaW9uMjE5MyIsInByb3RvY29sVmVyc2lvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy93aXJlL3N0cnVjdHVyZXMvRGltZW5zaW9uRGVmaW5pdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBkb2NzJyBgRGltZW5zaW9uRGVmaW5pdGlvbmA6IHRoZSBoZWlnaHQgYm91bmRzLCBnZW5lcmF0b3IgYW5kIHNreSBvZiBvbmUgZGF0YS1kcml2ZW5cbiAqIGRpbWVuc2lvbiwgYXMgYERpbWVuc2lvbkRhdGFQYWNrZXRgIGxpc3RzIHRoZW0sIGRlc2NyaWJlZCBhcyBhIGRlY2xhcmF0aXZlIGZpZWxkIGxpc3QuXG4gKlxuICogRmllbGQgbmFtZXMgYW5kIG9yZGVyIGZvbGxvdyB0aGUgc2NoZW1hJ3MgYHgtb3JkaW5hbC1pbmRleGAuIFByb3RvY29sIDIyMjUgYXBwZW5kZWRcbiAqIGBDbG91ZCBIZWlnaHRgIChvcmRpbmFsIDYpIGFuZCBgUmVuZGVyIENsb3Vkc2AgKG9yZGluYWwgNyksIHZlcmlmaWVkIGFnYWluc3QgdGhlIHYxLjI2LjYwXG4gKiBgbWV0YWRhdGEuemlwYCAoYERpbWVuc2lvbkRlZmluaXRpb24uanNvbmApIHNpZGUgYnkgc2lkZSB3aXRoIHRoZSB2MS4yNi41MSBvbmUsIHdoaWNoIGVuZHNcbiAqIGF0IGBEZWZhdWx0IEJpb21lYCAob3JkaW5hbCA1KS4gTm90aGluZyBiZWZvcmUgdGhlbSBjaGFuZ2VkLlxuICoge0BsaW5rIGh0dHBzOi8vbW9qYW5nLmdpdGh1Yi5pby9iZWRyb2NrLXByb3RvY29sLWRvY3MvMS4yNi41MS90eXBlcy9kaW1lbnNpb24tZGVmaW5pdGlvbi99XG4gKi9cbmltcG9ydCB7IGRlZmluZVBhY2tldCwgZ2F0ZWQgfSBmcm9tICcuLi9kZWZpbmUnO1xuaW1wb3J0ICogYXMgdCBmcm9tICcuLi9maWVsZFR5cGVzJztcbmltcG9ydCB7IGxheW91dEF0IH0gZnJvbSAnLi4vV2lyZUxheW91dCc7XG5pbXBvcnQgeyBTSU5DRV8yMjI1IH0gZnJvbSAnLi4vd2lyZUdhdGVzJztcbmltcG9ydCB7IHByb3RvY29sVmVyc2lvbiBhcyBwcm90b2NvbFZlcnNpb24yMTkzIH0gZnJvbSAnLi4vdmVyc2lvbnMvdjIxOTMnO1xuaW1wb3J0IFVVSUQgZnJvbSAnLi4vLi4vc3RydWN0dXJlL1VVSUQnO1xuXG5pbXBvcnQgdHlwZSBCaW5hcnlTdHJlYW0gZnJvbSAnQGpzcHJpc21hcmluZS9iaW5hcnl1dGlscyc7XG5pbXBvcnQgdHlwZSB7IFBheWxvYWRPZiB9IGZyb20gJy4uL2RlZmluZSc7XG5cbi8qKiBgbWNlOjpVVUlEYCBhcyB0aGUgYHN0cnVjdHVyZS9VVUlEYCBvZiB0d28gdW5zaWduZWQgNjQtYml0IGhhbHZlcywgd2hpY2ggYFBhY2sgSWRgIGhhcyBhbHdheXMgYmVlbi4gKi9cbmNvbnN0IHBhY2tJZCA9IHQuY3VzdG9tPFVVSUQ+KFxuICAgICdtY2U6OlVVSUQnLFxuICAgIChzdHJlYW0sIHZhbHVlKSA9PiB7XG4gICAgICAgIHN0cmVhbS53cml0ZVVuc2lnbmVkTG9uZ0xFKHZhbHVlLm1vc3QpO1xuICAgICAgICBzdHJlYW0ud3JpdGVVbnNpZ25lZExvbmdMRSh2YWx1ZS5sZWFzdCk7XG4gICAgfSxcbiAgICAoc3RyZWFtKSA9PiBuZXcgVVVJRChzdHJlYW0ucmVhZFVuc2lnbmVkTG9uZ0xFKCksIHN0cmVhbS5yZWFkVW5zaWduZWRMb25nTEUoKSlcbik7XG5cbi8qKiBUaGUgYERpbWVuc2lvbkRlZmluaXRpb25gIGZpZWxkIGxpc3Q7IHRoZSBtb2R1bGUgZG9jIGNhcnJpZXMgdGhlIHdpcmUgcHJvdmVuYW5jZS4gKi9cbmV4cG9ydCBjb25zdCBkaW1lbnNpb25EZWZpbml0aW9uID0gZGVmaW5lUGFja2V0KCdEaW1lbnNpb25EZWZpbml0aW9uJywge1xuICAgIC8qKiBgTWluaW11bSBZYDogdGhlIGxvd2VzdCBibG9jayB5IG9mIHRoZSBkaW1lbnNpb24uICovXG4gICAgbWluaW11bVk6IHQudmFyaW50MzIsXG4gICAgLyoqIGBIZWlnaHQgUmFuZ2VgOiBob3cgbWFueSBibG9ja3Mgc2l0IGFib3ZlIGBNaW5pbXVtIFlgLiAqL1xuICAgIGhlaWdodFJhbmdlOiB0LnZhcmludDMyLFxuICAgIC8qKiBgR2VuZXJhdG9yIFR5cGVgOiBhIGBHZW5lcmF0b3JgIHZhbHVlICgwIExlZ2FjeSwgMSBPdmVyd29ybGQsIDIgRmxhdCwgMyBOZXRoZXIsIDQgVGhlRW5kLCA1IFZvaWQsIDYgVW5kZWZpbmVkKS4gKi9cbiAgICBnZW5lcmF0b3JUeXBlOiB0LnZhcmludDMyLFxuICAgIC8qKiBgRGltZW5zaW9uIFR5cGVgOiB0aGUgZGltZW5zaW9uJ3MgcnVudGltZSBpZC4gVmFuaWxsYSB1c2VzIDAgdG8gMjsgY3VzdG9tIGRpbWVuc2lvbnMgY291bnQgZnJvbSAxMDAwLiAqL1xuICAgIGRpbWVuc2lvblR5cGU6IHQudmFyaW50MzIsXG4gICAgLyoqIGBQYWNrIElkYDogdGhlIGJlaGF2aW9yIHBhY2sgdGhhdCByZWdpc3RlcmVkIHRoZSBkaW1lbnNpb24uICovXG4gICAgcGFja0lkLFxuICAgIC8qKiBgRGVmYXVsdCBCaW9tZWA6IHRoZSBiaW9tZSBpZGVudGlmaWVyIHRoZSBkaW1lbnNpb24gZ2VuZXJhdGVzIHdpdGguICovXG4gICAgZGVmYXVsdEJpb21lOiB0LnN0cmluZyxcbiAgICAvKiogYENsb3VkIEhlaWdodGA6IHRoZSBibG9jayB5IGNsb3VkcyByZW5kZXIgYXQ7IDIyMjUgb24uICovXG4gICAgY2xvdWRIZWlnaHQ6IGdhdGVkKFNJTkNFXzIyMjUsIHQudmFyaW50MzIsIDApLFxuICAgIC8qKiBgUmVuZGVyIENsb3Vkc2A6IHdoZXRoZXIgdGhlIGRpbWVuc2lvbiBkcmF3cyBjbG91ZHMgYXQgYWxsOyAyMjI1IG9uLiAqL1xuICAgIHJlbmRlckNsb3VkczogZ2F0ZWQoU0lOQ0VfMjIyNSwgdC5ib29sLCBmYWxzZSlcbn0pO1xuXG4vKiogVGhlIGZpZWxkcyBvZiBvbmUgYERpbWVuc2lvbkRlZmluaXRpb25gLCB0aGUgc2FtZSBzaGFwZSBhdCBldmVyeSBwcm90b2NvbCB2ZXJzaW9uLiAqL1xuZXhwb3J0IHR5cGUgRGltZW5zaW9uRGVmaW5pdGlvbkZpZWxkcyA9IFBheWxvYWRPZjx0eXBlb2YgZGltZW5zaW9uRGVmaW5pdGlvbj47XG5cbi8qKlxuICogV3JpdGVzIGEgYERpbWVuc2lvbkRlZmluaXRpb25gIGluIHRoZSBsYXlvdXQgb2YgdGhlIGdpdmVuIHByb3RvY29sIHZlcnNpb24uXG4gKiBAcGFyYW0gc3RyZWFtIC0gVGhlIHN0cmVhbSB0byB3cml0ZSB0by5cbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBkZWZpbml0aW9uJ3MgZmllbGRzLlxuICogQHBhcmFtIHByb3RvY29sVmVyc2lvbiAtIFRoZSBuZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb247IGRlZmF1bHRzIHRvIDIxOTMuXG4gKi9cbmV4cG9ydCBjb25zdCB3cml0ZURpbWVuc2lvbkRlZmluaXRpb24gPSAoXG4gICAgc3RyZWFtOiBCaW5hcnlTdHJlYW0sXG4gICAgdmFsdWU6IERpbWVuc2lvbkRlZmluaXRpb25GaWVsZHMsXG4gICAgcHJvdG9jb2xWZXJzaW9uID0gcHJvdG9jb2xWZXJzaW9uMjE5M1xuKTogdm9pZCA9PiB7XG4gICAgbGF5b3V0QXQoZGltZW5zaW9uRGVmaW5pdGlvbiwgcHJvdG9jb2xWZXJzaW9uKS5lbmNvZGUoc3RyZWFtLCB2YWx1ZSk7XG59O1xuXG4vKipcbiAqIFJlYWRzIGEgYERpbWVuc2lvbkRlZmluaXRpb25gIGluIHRoZSBsYXlvdXQgb2YgdGhlIGdpdmVuIHByb3RvY29sIHZlcnNpb24sIHRoZSBtaXJyb3Igb2ZcbiAqIHtAbGluayB3cml0ZURpbWVuc2lvbkRlZmluaXRpb259LiBGaWVsZHMgdGhlIHZlcnNpb24gbGVhdmVzIG9mZiB0aGUgd2lyZSB0YWtlIHRoZWlyXG4gKiBmYWxsYmFja3MsIHNvIGEgMjE5MyByZWFkIHN0aWxsIHlpZWxkcyBgY2xvdWRIZWlnaHRgIGFuZCBgcmVuZGVyQ2xvdWRzYC5cbiAqIEBwYXJhbSBzdHJlYW0gLSBUaGUgc3RyZWFtIHRvIHJlYWQgZnJvbS5cbiAqIEBwYXJhbSBwcm90b2NvbFZlcnNpb24gLSBUaGUgbmVnb3RpYXRlZCBwcm90b2NvbCB2ZXJzaW9uOyBkZWZhdWx0cyB0byAyMTkzLlxuICovXG5leHBvcnQgY29uc3QgcmVhZERpbWVuc2lvbkRlZmluaXRpb24gPSAoXG4gICAgc3RyZWFtOiBCaW5hcnlTdHJlYW0sXG4gICAgcHJvdG9jb2xWZXJzaW9uID0gcHJvdG9jb2xWZXJzaW9uMjE5M1xuKTogRGltZW5zaW9uRGVmaW5pdGlvbkZpZWxkcyA9PiBsYXlvdXRBdChkaW1lbnNpb25EZWZpbml0aW9uLCBwcm90b2NvbFZlcnNpb24pLmRlY29kZShzdHJlYW0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFxQkEsSUFBTSxTQUFTQSxPQUNYLGNBQ0MsUUFBUSxVQUFVO0NBQ2YsT0FBTyxvQkFBb0IsTUFBTSxJQUFJO0NBQ3JDLE9BQU8sb0JBQW9CLE1BQU0sS0FBSztBQUMxQyxJQUNDLFdBQVcsSUFBSSxLQUFLLE9BQU8sbUJBQW1CLEdBQUcsT0FBTyxtQkFBbUIsQ0FBQyxDQUNqRjs7QUFHQSxJQUFhLHNCQUFzQixhQUFhLHVCQUF1Qjs7Q0FFbkUsVUFBVUM7O0NBRVYsYUFBYUE7O0NBRWIsZUFBZUE7O0NBRWYsZUFBZUE7O0NBRWY7O0NBRUEsY0FBY0M7O0NBRWQsYUFBYSxNQUFNLFlBQVlELFVBQVksQ0FBQzs7Q0FFNUMsY0FBYyxNQUFNLFlBQVlFLE1BQVEsS0FBSztBQUNqRCxDQUFDOzs7Ozs7O0FBV0QsSUFBYSw0QkFDVCxRQUNBLE9BQ0Esb0JBQWtCQyxvQkFDWDtDQUNQLFNBQVMscUJBQXFCQyxpQkFBZSxDQUFDLENBQUMsT0FBTyxRQUFRLEtBQUs7QUFDdkU7Ozs7Ozs7O0FBU0EsSUFBYSwyQkFDVCxRQUNBLG9CQUFrQkQsb0JBQ1UsU0FBUyxxQkFBcUJDLGlCQUFlLENBQUMsQ0FBQyxPQUFPLE1BQU0ifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jsprismarine/protocol",
3
- "version": "0.16.0-unstable-20261031080506",
3
+ "version": "0.16.0",
4
4
  "description": "Protocol package used by JSPrismarine packages",
5
5
  "sideEffects": false,
6
6
  "publishConfig": {
@@ -48,8 +48,8 @@
48
48
  "license": "MIT",
49
49
  "homepage": "https://github.com/JSPrismarine/JSPrismarine/tree/master/packages/protocol",
50
50
  "devDependencies": {
51
- "@jsprismarine/bedrock-data": "0.16.0-unstable-20261031080506",
52
- "@jsprismarine/packs": "0.16.0-unstable-20261031080506",
51
+ "@jsprismarine/bedrock-data": "0.16.0",
52
+ "@jsprismarine/packs": "0.16.0",
53
53
  "@types/node": "24.19.2",
54
54
  "glob": "13.0.6",
55
55
  "typescript": "7.0.2",
@@ -57,14 +57,14 @@
57
57
  "vitest": "5.0.5"
58
58
  },
59
59
  "dependencies": {
60
- "@jsprismarine/binaryutils": "0.16.0-unstable-20261031080506",
61
- "@jsprismarine/blocks": "0.16.0-unstable-20261031080506",
62
- "@jsprismarine/content": "0.16.0-unstable-20261031080506",
63
- "@jsprismarine/items": "0.16.0-unstable-20261031080506",
64
- "@jsprismarine/math": "0.16.0-unstable-20261031080506",
65
- "@jsprismarine/minecraft": "0.16.0-unstable-20261031080506",
66
- "@jsprismarine/nbt": "0.16.0-unstable-20261031080506",
67
- "@jsprismarine/recipes": "0.16.0-unstable-20261031080506"
60
+ "@jsprismarine/binaryutils": "0.16.0",
61
+ "@jsprismarine/blocks": "0.16.0",
62
+ "@jsprismarine/content": "0.16.0",
63
+ "@jsprismarine/items": "0.16.0",
64
+ "@jsprismarine/math": "0.16.0",
65
+ "@jsprismarine/minecraft": "0.16.0",
66
+ "@jsprismarine/nbt": "0.16.0",
67
+ "@jsprismarine/recipes": "0.16.0"
68
68
  },
69
69
  "scripts": {
70
70
  "build": "vite build && node ../../scripts/emit-dts.mts",