minerender 2.1.0-alpha.37 → 2.1.0-alpha.39
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/dist/browser/index.d.mts +117 -25
- package/dist/browser/index.d.ts +117 -25
- package/dist/browser/index.js +2266 -121
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/index.mjs +2208 -63
- package/dist/browser/index.mjs.map +1 -1
- package/dist/bundle.js +2179 -25
- package/dist/bundle.js.map +1 -1
- package/dist/node/index.d.mts +117 -25
- package/dist/node/index.d.ts +117 -25
- package/dist/node/index.js +2269 -121
- package/dist/node/index.js.map +1 -1
- package/dist/node/index.mjs +2208 -63
- package/dist/node/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/browser/index.js
CHANGED
|
@@ -125,6 +125,7 @@ var require_dist = __commonJS({
|
|
|
125
125
|
var index_browser_exports = {};
|
|
126
126
|
__export(index_browser_exports, {
|
|
127
127
|
AXES: () => AXES,
|
|
128
|
+
AnvilParser: () => AnvilParser,
|
|
128
129
|
ArchiveAssetSource: () => ArchiveAssetSource,
|
|
129
130
|
AssetKey: () => AssetKey,
|
|
130
131
|
AssetLoadError: () => AssetLoadError,
|
|
@@ -144,6 +145,7 @@ __export(index_browser_exports, {
|
|
|
144
145
|
BrowserCache: () => BrowserCache,
|
|
145
146
|
BrowserEnv: () => BrowserEnv,
|
|
146
147
|
CUBE_FACES: () => CUBE_FACES,
|
|
148
|
+
CUBE_FACE_OFFSETS: () => CUBE_FACE_OFFSETS,
|
|
147
149
|
Caching: () => Caching,
|
|
148
150
|
CanvasImage: () => CanvasImage,
|
|
149
151
|
Chunk: () => Chunk,
|
|
@@ -177,6 +179,7 @@ __export(index_browser_exports, {
|
|
|
177
179
|
MineRenderWorld: () => MineRenderWorld,
|
|
178
180
|
MinecraftCubeTexture: () => MinecraftCubeTexture,
|
|
179
181
|
MinecraftFaceUV: () => MinecraftFaceUV,
|
|
182
|
+
ModelCulling: () => ModelCulling,
|
|
180
183
|
ModelGenerator: () => ModelGenerator,
|
|
181
184
|
ModelMerger: () => ModelMerger,
|
|
182
185
|
ModelObject: () => ModelObject,
|
|
@@ -474,6 +477,14 @@ var CubeFaceIndex = /* @__PURE__ */ ((CubeFaceIndex2) => {
|
|
|
474
477
|
return CubeFaceIndex2;
|
|
475
478
|
})(CubeFaceIndex || {});
|
|
476
479
|
var CUBE_FACES = Object.values(CubeFace);
|
|
480
|
+
var CUBE_FACE_OFFSETS = [
|
|
481
|
+
[1, 0, 0],
|
|
482
|
+
[-1, 0, 0],
|
|
483
|
+
[0, 1, 0],
|
|
484
|
+
[0, -1, 0],
|
|
485
|
+
[0, 0, 1],
|
|
486
|
+
[0, 0, -1]
|
|
487
|
+
];
|
|
477
488
|
|
|
478
489
|
// src/Disposable.ts
|
|
479
490
|
function isDisposable(obj) {
|
|
@@ -1771,11 +1782,17 @@ function isOrthographicCamera(obj) {
|
|
|
1771
1782
|
}
|
|
1772
1783
|
|
|
1773
1784
|
// src/nbt/NBTHelper.ts
|
|
1785
|
+
var import_buffer2 = require("buffer");
|
|
1774
1786
|
var NBTHelper = class {
|
|
1775
|
-
static async fromBuffer(
|
|
1787
|
+
static async fromBuffer(data, format) {
|
|
1788
|
+
const buffer = import_buffer2.Buffer.from(data instanceof Uint8Array ? data : new Uint8Array(data));
|
|
1776
1789
|
const prismarineNbt = await import("prismarine-nbt");
|
|
1777
|
-
const { parsed, type, metadata } = await prismarineNbt.parse(buffer);
|
|
1778
|
-
return parsed
|
|
1790
|
+
const { parsed, type, metadata } = await prismarineNbt.parse(buffer, format);
|
|
1791
|
+
return Object.assign(parsed, {
|
|
1792
|
+
format: type,
|
|
1793
|
+
metadata,
|
|
1794
|
+
compression: buffer[0] === 31 && buffer[1] === 139 ? "gzip" : "none"
|
|
1795
|
+
});
|
|
1779
1796
|
}
|
|
1780
1797
|
};
|
|
1781
1798
|
|
|
@@ -2543,6 +2560,9 @@ var UVMapper = class {
|
|
|
2543
2560
|
const textureMap = {};
|
|
2544
2561
|
const metaMap = {};
|
|
2545
2562
|
const model = { ...originalModel };
|
|
2563
|
+
if (originalModel.elements) {
|
|
2564
|
+
model.elements = originalModel.elements.map((element) => ({ ...element }));
|
|
2565
|
+
}
|
|
2546
2566
|
const isItemModel = !("elements" in model);
|
|
2547
2567
|
console.debug(p5, "Creating Atlas for", model.key);
|
|
2548
2568
|
if (model.textures) {
|
|
@@ -3962,6 +3982,42 @@ function isQuadArray(obj) {
|
|
|
3962
3982
|
return Array.isArray(obj) && obj.length === 4;
|
|
3963
3983
|
}
|
|
3964
3984
|
|
|
3985
|
+
// src/model/ModelCulling.ts
|
|
3986
|
+
var import_three16 = require("three");
|
|
3987
|
+
var ModelCulling = class {
|
|
3988
|
+
static toLocalMask(worldMask, rotation) {
|
|
3989
|
+
let localMask = 0;
|
|
3990
|
+
for (const [localFace, offset] of CUBE_FACE_OFFSETS.entries()) {
|
|
3991
|
+
const normal = new import_three16.Vector3(...offset).applyEuler(rotation);
|
|
3992
|
+
const worldFace = CUBE_FACE_OFFSETS.findIndex(([x, y, z]) => Math.abs(normal.x - x) < 1e-6 && Math.abs(normal.y - y) < 1e-6 && Math.abs(normal.z - z) < 1e-6);
|
|
3993
|
+
if (worldFace < 0) return 0;
|
|
3994
|
+
if (worldMask & 1 << worldFace) localMask |= 1 << localFace;
|
|
3995
|
+
}
|
|
3996
|
+
return localMask;
|
|
3997
|
+
}
|
|
3998
|
+
static isOpaqueFullCube(atlas) {
|
|
3999
|
+
if (!atlas || atlas.hasTransparency !== false || atlas.model.elements?.length !== 1) return false;
|
|
4000
|
+
const element = atlas.model.elements[0];
|
|
4001
|
+
if (element.from.length !== 3 || !element.from.every((value) => value === 0) || element.to.length !== 3 || !element.to.every((value) => value === 16) || element.rotation && element.rotation.angle !== 0 || element.mappedUv?.length !== 48 || !element.mappedUv.every(Number.isFinite)) return false;
|
|
4002
|
+
if (!(atlas.image.width > 0 && atlas.image.height > 0)) return false;
|
|
4003
|
+
return CUBE_FACES.every((face, faceIndex) => {
|
|
4004
|
+
const texture = element.faces[face]?.texture;
|
|
4005
|
+
if (!texture?.startsWith("#")) return false;
|
|
4006
|
+
const key = texture.slice(1);
|
|
4007
|
+
const position = atlas.positions[key];
|
|
4008
|
+
const size = atlas.sizes[key];
|
|
4009
|
+
if (position?.length !== 2 || !position.every(Number.isFinite) || size?.length !== 2 || !size.every((value) => value > 0 && Number.isFinite(value))) return false;
|
|
4010
|
+
for (let vertex = 0; vertex < 4; vertex++) {
|
|
4011
|
+
const uvIndex = (faceIndex * 4 + vertex) * 2;
|
|
4012
|
+
const x = element.mappedUv[uvIndex] * atlas.image.width;
|
|
4013
|
+
const y = (1 - element.mappedUv[uvIndex + 1]) * atlas.image.height;
|
|
4014
|
+
if (x < position[0] - 1e-6 || x > position[0] + size[0] + 1e-6 || y < position[1] - 1e-6 || y > position[1] + size[1] + 1e-6) return false;
|
|
4015
|
+
}
|
|
4016
|
+
return true;
|
|
4017
|
+
});
|
|
4018
|
+
}
|
|
4019
|
+
};
|
|
4020
|
+
|
|
3965
4021
|
// src/model/block/blockTints.json
|
|
3966
4022
|
var blockTints_default = {
|
|
3967
4023
|
"minecraft:large_fern": { source: "grass" },
|
|
@@ -4048,10 +4104,10 @@ var BlockTints = class {
|
|
|
4048
4104
|
};
|
|
4049
4105
|
|
|
4050
4106
|
// src/model/scene/ModelObject.ts
|
|
4051
|
-
var
|
|
4107
|
+
var import_three18 = require("three");
|
|
4052
4108
|
|
|
4053
4109
|
// src/three/BufferGeometryUtils.js
|
|
4054
|
-
var
|
|
4110
|
+
var import_three17 = require("three");
|
|
4055
4111
|
function computeTangents(geometry) {
|
|
4056
4112
|
geometry.computeTangents();
|
|
4057
4113
|
console.warn("THREE.BufferGeometryUtils: .computeTangents() has been removed. Use BufferGeometry.computeTangents() instead.");
|
|
@@ -4063,7 +4119,7 @@ function mergeBufferGeometries(geometries, useGroups = false) {
|
|
|
4063
4119
|
const attributes = {};
|
|
4064
4120
|
const morphAttributes = {};
|
|
4065
4121
|
const morphTargetsRelative = geometries[0].morphTargetsRelative;
|
|
4066
|
-
const mergedGeometry = new
|
|
4122
|
+
const mergedGeometry = new import_three17.BufferGeometry();
|
|
4067
4123
|
let offset = 0;
|
|
4068
4124
|
for (let i = 0; i < geometries.length; ++i) {
|
|
4069
4125
|
const geometry = geometries[i];
|
|
@@ -4187,7 +4243,7 @@ function mergeBufferAttributes(attributes) {
|
|
|
4187
4243
|
array.set(attributes[i].array, offset);
|
|
4188
4244
|
offset += attributes[i].array.length;
|
|
4189
4245
|
}
|
|
4190
|
-
return new
|
|
4246
|
+
return new import_three17.BufferAttribute(array, itemSize, normalized);
|
|
4191
4247
|
}
|
|
4192
4248
|
function interleaveAttributes(attributes) {
|
|
4193
4249
|
let TypedArray;
|
|
@@ -4203,7 +4259,7 @@ function interleaveAttributes(attributes) {
|
|
|
4203
4259
|
arrayLength += attribute.array.length;
|
|
4204
4260
|
stride += attribute.itemSize;
|
|
4205
4261
|
}
|
|
4206
|
-
const interleavedBuffer = new
|
|
4262
|
+
const interleavedBuffer = new import_three17.InterleavedBuffer(new TypedArray(arrayLength), stride);
|
|
4207
4263
|
let offset = 0;
|
|
4208
4264
|
const res = [];
|
|
4209
4265
|
const getters = ["getX", "getY", "getZ", "getW"];
|
|
@@ -4212,7 +4268,7 @@ function interleaveAttributes(attributes) {
|
|
|
4212
4268
|
const attribute = attributes[j];
|
|
4213
4269
|
const itemSize = attribute.itemSize;
|
|
4214
4270
|
const count = attribute.count;
|
|
4215
|
-
const iba = new
|
|
4271
|
+
const iba = new import_three17.InterleavedBufferAttribute(interleavedBuffer, itemSize, offset, attribute.normalized);
|
|
4216
4272
|
res.push(iba);
|
|
4217
4273
|
offset += itemSize;
|
|
4218
4274
|
for (let c = 0; c < count; c++) {
|
|
@@ -4296,13 +4352,13 @@ function mergeVertices(geometry, tolerance = 1e-4) {
|
|
|
4296
4352
|
const name = attributeNames[i];
|
|
4297
4353
|
const oldAttribute = geometry.getAttribute(name);
|
|
4298
4354
|
const buffer = new oldAttribute.array.constructor(attrArrays[name]);
|
|
4299
|
-
const attribute = new
|
|
4355
|
+
const attribute = new import_three17.BufferAttribute(buffer, oldAttribute.itemSize, oldAttribute.normalized);
|
|
4300
4356
|
result.setAttribute(name, attribute);
|
|
4301
4357
|
if (name in morphAttrsArrays) {
|
|
4302
4358
|
for (let j = 0; j < morphAttrsArrays[name].length; j++) {
|
|
4303
4359
|
const oldMorphAttribute = geometry.morphAttributes[name][j];
|
|
4304
4360
|
const buffer2 = new oldMorphAttribute.array.constructor(morphAttrsArrays[name][j]);
|
|
4305
|
-
const morphAttribute = new
|
|
4361
|
+
const morphAttribute = new import_three17.BufferAttribute(buffer2, oldMorphAttribute.itemSize, oldMorphAttribute.normalized);
|
|
4306
4362
|
result.morphAttributes[name][j] = morphAttribute;
|
|
4307
4363
|
}
|
|
4308
4364
|
}
|
|
@@ -4311,11 +4367,11 @@ function mergeVertices(geometry, tolerance = 1e-4) {
|
|
|
4311
4367
|
return result;
|
|
4312
4368
|
}
|
|
4313
4369
|
function toTrianglesDrawMode(geometry, drawMode) {
|
|
4314
|
-
if (drawMode ===
|
|
4370
|
+
if (drawMode === import_three17.TrianglesDrawMode) {
|
|
4315
4371
|
console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.");
|
|
4316
4372
|
return geometry;
|
|
4317
4373
|
}
|
|
4318
|
-
if (drawMode ===
|
|
4374
|
+
if (drawMode === import_three17.TriangleFanDrawMode || drawMode === import_three17.TriangleStripDrawMode) {
|
|
4319
4375
|
let index = geometry.getIndex();
|
|
4320
4376
|
if (index === null) {
|
|
4321
4377
|
const indices = [];
|
|
@@ -4333,7 +4389,7 @@ function toTrianglesDrawMode(geometry, drawMode) {
|
|
|
4333
4389
|
}
|
|
4334
4390
|
const numberOfTriangles = index.count - 2;
|
|
4335
4391
|
const newIndices = [];
|
|
4336
|
-
if (drawMode ===
|
|
4392
|
+
if (drawMode === import_three17.TriangleFanDrawMode) {
|
|
4337
4393
|
for (let i = 1; i <= numberOfTriangles; i++) {
|
|
4338
4394
|
newIndices.push(index.getX(0));
|
|
4339
4395
|
newIndices.push(index.getX(i));
|
|
@@ -4369,15 +4425,15 @@ function computeMorphedAttributes(object) {
|
|
|
4369
4425
|
console.error("THREE.BufferGeometryUtils: Geometry is not of type BufferGeometry.");
|
|
4370
4426
|
return null;
|
|
4371
4427
|
}
|
|
4372
|
-
const _vA = new
|
|
4373
|
-
const _vB = new
|
|
4374
|
-
const _vC = new
|
|
4375
|
-
const _tempA = new
|
|
4376
|
-
const _tempB = new
|
|
4377
|
-
const _tempC = new
|
|
4378
|
-
const _morphA = new
|
|
4379
|
-
const _morphB = new
|
|
4380
|
-
const _morphC = new
|
|
4428
|
+
const _vA = new import_three17.Vector3();
|
|
4429
|
+
const _vB = new import_three17.Vector3();
|
|
4430
|
+
const _vC = new import_three17.Vector3();
|
|
4431
|
+
const _tempA = new import_three17.Vector3();
|
|
4432
|
+
const _tempB = new import_three17.Vector3();
|
|
4433
|
+
const _tempC = new import_three17.Vector3();
|
|
4434
|
+
const _morphA = new import_three17.Vector3();
|
|
4435
|
+
const _morphB = new import_three17.Vector3();
|
|
4436
|
+
const _morphC = new import_three17.Vector3();
|
|
4381
4437
|
function _calculateMorphedAttributeData(object2, material2, attribute, morphAttribute, morphTargetsRelative2, a2, b2, c2, modifiedAttributeArray) {
|
|
4382
4438
|
_vA.fromBufferAttribute(attribute, a2);
|
|
4383
4439
|
_vB.fromBufferAttribute(attribute, b2);
|
|
@@ -4572,8 +4628,8 @@ function computeMorphedAttributes(object) {
|
|
|
4572
4628
|
}
|
|
4573
4629
|
}
|
|
4574
4630
|
}
|
|
4575
|
-
const morphedPositionAttribute = new
|
|
4576
|
-
const morphedNormalAttribute = new
|
|
4631
|
+
const morphedPositionAttribute = new import_three17.Float32BufferAttribute(modifiedPosition, 3);
|
|
4632
|
+
const morphedNormalAttribute = new import_three17.Float32BufferAttribute(modifiedNormal, 3);
|
|
4577
4633
|
return {
|
|
4578
4634
|
positionAttribute,
|
|
4579
4635
|
normalAttribute,
|
|
@@ -4603,6 +4659,9 @@ var _ModelObject = class _ModelObject extends SceneObject {
|
|
|
4603
4659
|
get textureAtlas() {
|
|
4604
4660
|
return this.atlas;
|
|
4605
4661
|
}
|
|
4662
|
+
get isOpaqueFullCube() {
|
|
4663
|
+
return !this.options.displayPosition && ModelCulling.isOpaqueFullCube(this.atlas);
|
|
4664
|
+
}
|
|
4606
4665
|
//TODO: support for replacing textures
|
|
4607
4666
|
async loadTextures() {
|
|
4608
4667
|
this.atlas = await UVMapper.getAtlas(this.originalModel);
|
|
@@ -4616,8 +4675,17 @@ var _ModelObject = class _ModelObject extends SceneObject {
|
|
|
4616
4675
|
if (this.atlas.model.elements) {
|
|
4617
4676
|
this.atlas.model.elements?.forEach((el) => {
|
|
4618
4677
|
const elGeo = this._getBoxGeometryFromElement(el).clone();
|
|
4678
|
+
if (this.options.cullMask) {
|
|
4679
|
+
const indices = Array.from(elGeo.getIndex().array);
|
|
4680
|
+
elGeo.setIndex(indices.filter((_, index) => {
|
|
4681
|
+
const face = CUBE_FACES[Math.floor(index / 6)];
|
|
4682
|
+
const direction = CUBE_FACES.findIndex((name) => name === el.faces[face]?.cullface);
|
|
4683
|
+
return direction < 0 || !(this.options.cullMask & 1 << direction);
|
|
4684
|
+
}));
|
|
4685
|
+
elGeo.clearGroups();
|
|
4686
|
+
}
|
|
4619
4687
|
if (this.options.uvLockRotation) {
|
|
4620
|
-
UVMapper.lockUvs(elGeo, el.faces, this.atlas, new
|
|
4688
|
+
UVMapper.lockUvs(elGeo, el.faces, this.atlas, new import_three18.Euler(...this.options.uvLockRotation));
|
|
4621
4689
|
}
|
|
4622
4690
|
if (this.options.tints) {
|
|
4623
4691
|
const colors = new Float32Array(elGeo.getAttribute("position").count * 3).fill(1);
|
|
@@ -4626,19 +4694,19 @@ var _ModelObject = class _ModelObject extends SceneObject {
|
|
|
4626
4694
|
if (tintIndex === void 0 || tintIndex < 0) continue;
|
|
4627
4695
|
const tint = this.options.tints[tintIndex];
|
|
4628
4696
|
if (tint === void 0) continue;
|
|
4629
|
-
const color = new
|
|
4697
|
+
const color = new import_three18.Color(tint);
|
|
4630
4698
|
for (let vertex = 0; vertex < 4; vertex++) {
|
|
4631
4699
|
color.toArray(colors, (faceIndex * 4 + vertex) * 3);
|
|
4632
4700
|
}
|
|
4633
4701
|
}
|
|
4634
|
-
elGeo.setAttribute("color", new
|
|
4702
|
+
elGeo.setAttribute("color", new import_three18.BufferAttribute(colors, 3));
|
|
4635
4703
|
}
|
|
4636
|
-
elGeo.applyMatrix4(new
|
|
4637
|
-
elGeo.applyMatrix4(new
|
|
4704
|
+
elGeo.applyMatrix4(new import_three18.Matrix4().makeTranslation((el.to[0] - el.from[0]) / 2, (el.to[1] - el.from[1]) / 2, (el.to[2] - el.from[2]) / 2));
|
|
4705
|
+
elGeo.applyMatrix4(new import_three18.Matrix4().makeTranslation(el.from[0], el.from[1], el.from[2]));
|
|
4638
4706
|
if (el.rotation) {
|
|
4639
4707
|
applyElementRotation(el.rotation, elGeo);
|
|
4640
4708
|
}
|
|
4641
|
-
elGeo.applyMatrix4(new
|
|
4709
|
+
elGeo.applyMatrix4(new import_three18.Matrix4().makeTranslation(-8, -8, -8));
|
|
4642
4710
|
if (displayTransform) DisplayTransforms.apply(elGeo, displayTransform);
|
|
4643
4711
|
if (this.options.mergeMeshes) {
|
|
4644
4712
|
allGeos.push(elGeo);
|
|
@@ -4660,7 +4728,7 @@ var _ModelObject = class _ModelObject extends SceneObject {
|
|
|
4660
4728
|
if (allGeos.length > 0) {
|
|
4661
4729
|
combinedGeo = mergeBufferGeometries(allGeos);
|
|
4662
4730
|
} else {
|
|
4663
|
-
combinedGeo = new
|
|
4731
|
+
combinedGeo = new import_three18.BoxGeometry(16, 16, 16);
|
|
4664
4732
|
if (displayTransform) DisplayTransforms.apply(combinedGeo, displayTransform);
|
|
4665
4733
|
}
|
|
4666
4734
|
combinedGeo.computeBoundingBox();
|
|
@@ -4715,7 +4783,7 @@ function isModelObject(obj) {
|
|
|
4715
4783
|
|
|
4716
4784
|
// src/model/block/scene/BlockObject.ts
|
|
4717
4785
|
var import_ts_deepmerge6 = __toESM(require_dist());
|
|
4718
|
-
var
|
|
4786
|
+
var import_three19 = require("three");
|
|
4719
4787
|
var p10 = prefix("BlockObject");
|
|
4720
4788
|
function matchesCondition(condition, state) {
|
|
4721
4789
|
return Object.entries(condition).every(([key, value]) => {
|
|
@@ -4740,6 +4808,7 @@ var _BlockObject = class _BlockObject extends SceneObject {
|
|
|
4740
4808
|
this._instanceModel = [];
|
|
4741
4809
|
this._variants = [];
|
|
4742
4810
|
this._models = [];
|
|
4811
|
+
this._cullMask = 0;
|
|
4743
4812
|
this.options = (0, import_ts_deepmerge6.default)({}, _BlockObject.DEFAULT_OPTIONS, options ?? {});
|
|
4744
4813
|
}
|
|
4745
4814
|
async init() {
|
|
@@ -4773,12 +4842,69 @@ var _BlockObject = class _BlockObject extends SceneObject {
|
|
|
4773
4842
|
super.removeFromScene();
|
|
4774
4843
|
}
|
|
4775
4844
|
clearModels() {
|
|
4776
|
-
|
|
4845
|
+
this.removeModels(this._models.splice(0));
|
|
4846
|
+
this._isInstanced = false;
|
|
4847
|
+
this._instanceCounter = 0;
|
|
4848
|
+
}
|
|
4849
|
+
removeModels(models) {
|
|
4850
|
+
for (const model of models) {
|
|
4777
4851
|
model.removeFromScene();
|
|
4778
4852
|
if (!isInstanceReference(model)) model.dispose();
|
|
4779
4853
|
}
|
|
4780
|
-
|
|
4781
|
-
|
|
4854
|
+
}
|
|
4855
|
+
get isOccluding() {
|
|
4856
|
+
return this._models.some((model) => {
|
|
4857
|
+
const object = isInstanceReference(model) ? model.instanceable : model;
|
|
4858
|
+
return object.isOpaqueFullCube && this.getModelCullMask(model, 63) === 63;
|
|
4859
|
+
});
|
|
4860
|
+
}
|
|
4861
|
+
getModelMatrix(model) {
|
|
4862
|
+
if (isInstanceReference(model)) return model.getMatrix();
|
|
4863
|
+
if (model.matrixAutoUpdate) model.updateMatrix();
|
|
4864
|
+
return model.matrix.clone();
|
|
4865
|
+
}
|
|
4866
|
+
getModelCullMask(model, worldMask) {
|
|
4867
|
+
const object = isInstanceReference(model) ? model.instanceable : model;
|
|
4868
|
+
if (object.options.displayPosition) return 0;
|
|
4869
|
+
const position = new import_three19.Vector3();
|
|
4870
|
+
const rotation = new import_three19.Quaternion();
|
|
4871
|
+
const scale = new import_three19.Vector3();
|
|
4872
|
+
this.getModelMatrix(model).decompose(position, rotation, scale);
|
|
4873
|
+
if (position.distanceToSquared(this.position) > 1e-10 || scale.distanceToSquared(new import_three19.Vector3(1, 1, 1)) > 1e-10) return 0;
|
|
4874
|
+
return ModelCulling.toLocalMask(worldMask, new import_three19.Euler().setFromQuaternion(rotation));
|
|
4875
|
+
}
|
|
4876
|
+
async setCullMask(worldMask) {
|
|
4877
|
+
worldMask &= 63;
|
|
4878
|
+
const replacements = [];
|
|
4879
|
+
try {
|
|
4880
|
+
for (const model of this._models) {
|
|
4881
|
+
const object = isInstanceReference(model) ? model.instanceable : model;
|
|
4882
|
+
const cullMask = this.getModelCullMask(model, worldMask);
|
|
4883
|
+
if (cullMask === (object.options.cullMask ?? 0)) {
|
|
4884
|
+
replacements.push(model);
|
|
4885
|
+
continue;
|
|
4886
|
+
}
|
|
4887
|
+
const matrix = this.getModelMatrix(model);
|
|
4888
|
+
const replacement = await this.scene.addModel(object.originalModel, { ...object.options, cullMask });
|
|
4889
|
+
replacements.push(replacement);
|
|
4890
|
+
if (isInstanceReference(replacement)) {
|
|
4891
|
+
replacement.setMatrix(matrix);
|
|
4892
|
+
} else {
|
|
4893
|
+
replacement.matrix.copy(matrix);
|
|
4894
|
+
matrix.decompose(replacement.position, replacement.quaternion, replacement.scale);
|
|
4895
|
+
replacement.matrixAutoUpdate = object.matrixAutoUpdate;
|
|
4896
|
+
replacement.visible = object.visible;
|
|
4897
|
+
}
|
|
4898
|
+
}
|
|
4899
|
+
} catch (error) {
|
|
4900
|
+
this.removeModels(replacements.filter((model) => !this._models.includes(model)));
|
|
4901
|
+
throw error;
|
|
4902
|
+
}
|
|
4903
|
+
const previous = this._models;
|
|
4904
|
+
this._models = replacements;
|
|
4905
|
+
this._cullMask = worldMask;
|
|
4906
|
+
this.removeModels(previous.filter((model) => !replacements.includes(model)));
|
|
4907
|
+
this.notifyDirty();
|
|
4782
4908
|
}
|
|
4783
4909
|
get state() {
|
|
4784
4910
|
return this._state;
|
|
@@ -4858,7 +4984,7 @@ var _BlockObject = class _BlockObject extends SceneObject {
|
|
|
4858
4984
|
await this.createVariant(variant);
|
|
4859
4985
|
}
|
|
4860
4986
|
async createVariant(variant) {
|
|
4861
|
-
const rotation = new
|
|
4987
|
+
const rotation = new import_three19.Euler();
|
|
4862
4988
|
if (typeof variant.x !== "undefined") {
|
|
4863
4989
|
rotation.x = toRadians(clampRotationDegrees(variant.x));
|
|
4864
4990
|
}
|
|
@@ -4871,7 +4997,8 @@ var _BlockObject = class _BlockObject extends SceneObject {
|
|
|
4871
4997
|
const options = {
|
|
4872
4998
|
...this.options,
|
|
4873
4999
|
tints: model ? await BlockTints.get(this.blockState.key, this.state, model, this.options.tints) : this.options.tints,
|
|
4874
|
-
uvLockRotation: variant.uvlock && (rotation.x !== 0 || rotation.y !== 0) ? [rotation.x, rotation.y, rotation.z] : void 0
|
|
5000
|
+
uvLockRotation: variant.uvlock && (rotation.x !== 0 || rotation.y !== 0) ? [rotation.x, rotation.y, rotation.z] : void 0,
|
|
5001
|
+
cullMask: this.options.displayPosition ? 0 : ModelCulling.toLocalMask(this._cullMask, rotation)
|
|
4875
5002
|
};
|
|
4876
5003
|
const obj = await this.scene.addModel(model, options);
|
|
4877
5004
|
if (isInstanceReference(obj) || obj.isInstanced) {
|
|
@@ -4948,7 +5075,7 @@ var _BlockObject = class _BlockObject extends SceneObject {
|
|
|
4948
5075
|
setPositionRotationScaleAt(index, position, rotation, scale) {
|
|
4949
5076
|
super.setPositionRotationScaleAt(index, position, rotation, scale);
|
|
4950
5077
|
}
|
|
4951
|
-
getMatrixAt(index, matrix = new
|
|
5078
|
+
getMatrixAt(index, matrix = new import_three19.Matrix4()) {
|
|
4952
5079
|
if (!this.isInstanced) throw new MineRenderError("Object is not instanced");
|
|
4953
5080
|
const child = this._models[0];
|
|
4954
5081
|
if (child && isModelObject(child)) {
|
|
@@ -4986,12 +5113,1780 @@ function isBlockObject(obj) {
|
|
|
4986
5113
|
return obj.isBlockObject;
|
|
4987
5114
|
}
|
|
4988
5115
|
|
|
5116
|
+
// src/model/multiblock/legacyBlocks.json
|
|
5117
|
+
var legacyBlocks_default = {
|
|
5118
|
+
__comment: "Block mappings from res/idsToNames.json (WorldEdit legacy.json); block names and cauldrons updated for Minecraft 1.21.11. Source: https://github.com/sk89q/WorldEdit/blob/master/worldedit-core/src/main/resources/com/sk89q/worldedit/world/registry/legacy.json",
|
|
5119
|
+
blocks: {
|
|
5120
|
+
"0:0": "minecraft:air",
|
|
5121
|
+
"1:0": "minecraft:stone",
|
|
5122
|
+
"1:1": "minecraft:granite",
|
|
5123
|
+
"1:2": "minecraft:polished_granite",
|
|
5124
|
+
"1:3": "minecraft:diorite",
|
|
5125
|
+
"1:4": "minecraft:polished_diorite",
|
|
5126
|
+
"1:5": "minecraft:andesite",
|
|
5127
|
+
"1:6": "minecraft:polished_andesite",
|
|
5128
|
+
"2:0": "minecraft:grass_block[snowy=false]",
|
|
5129
|
+
"3:0": "minecraft:dirt",
|
|
5130
|
+
"3:1": "minecraft:coarse_dirt",
|
|
5131
|
+
"3:2": "minecraft:podzol[snowy=false]",
|
|
5132
|
+
"4:0": "minecraft:cobblestone",
|
|
5133
|
+
"5:0": "minecraft:oak_planks",
|
|
5134
|
+
"5:1": "minecraft:spruce_planks",
|
|
5135
|
+
"5:2": "minecraft:birch_planks",
|
|
5136
|
+
"5:3": "minecraft:jungle_planks",
|
|
5137
|
+
"5:4": "minecraft:acacia_planks",
|
|
5138
|
+
"5:5": "minecraft:dark_oak_planks",
|
|
5139
|
+
"6:0": "minecraft:oak_sapling[stage=0]",
|
|
5140
|
+
"6:1": "minecraft:spruce_sapling[stage=0]",
|
|
5141
|
+
"6:2": "minecraft:birch_sapling[stage=0]",
|
|
5142
|
+
"6:3": "minecraft:jungle_sapling[stage=0]",
|
|
5143
|
+
"6:4": "minecraft:acacia_sapling[stage=0]",
|
|
5144
|
+
"6:5": "minecraft:dark_oak_sapling[stage=0]",
|
|
5145
|
+
"6:8": "minecraft:oak_sapling[stage=1]",
|
|
5146
|
+
"6:9": "minecraft:spruce_sapling[stage=1]",
|
|
5147
|
+
"6:10": "minecraft:birch_sapling[stage=1]",
|
|
5148
|
+
"6:11": "minecraft:jungle_sapling[stage=1]",
|
|
5149
|
+
"6:12": "minecraft:acacia_sapling[stage=1]",
|
|
5150
|
+
"6:13": "minecraft:dark_oak_sapling[stage=1]",
|
|
5151
|
+
"7:0": "minecraft:bedrock",
|
|
5152
|
+
"8:0": "minecraft:water[level=0]",
|
|
5153
|
+
"8:1": "minecraft:water[level=1]",
|
|
5154
|
+
"8:2": "minecraft:water[level=2]",
|
|
5155
|
+
"8:3": "minecraft:water[level=3]",
|
|
5156
|
+
"8:4": "minecraft:water[level=4]",
|
|
5157
|
+
"8:5": "minecraft:water[level=5]",
|
|
5158
|
+
"8:6": "minecraft:water[level=6]",
|
|
5159
|
+
"8:7": "minecraft:water[level=7]",
|
|
5160
|
+
"8:8": "minecraft:water[level=8]",
|
|
5161
|
+
"8:9": "minecraft:water[level=9]",
|
|
5162
|
+
"8:10": "minecraft:water[level=10]",
|
|
5163
|
+
"8:11": "minecraft:water[level=11]",
|
|
5164
|
+
"8:12": "minecraft:water[level=12]",
|
|
5165
|
+
"8:13": "minecraft:water[level=13]",
|
|
5166
|
+
"8:14": "minecraft:water[level=14]",
|
|
5167
|
+
"8:15": "minecraft:water[level=15]",
|
|
5168
|
+
"9:0": "minecraft:water[level=0]",
|
|
5169
|
+
"9:1": "minecraft:water[level=1]",
|
|
5170
|
+
"9:2": "minecraft:water[level=2]",
|
|
5171
|
+
"9:3": "minecraft:water[level=3]",
|
|
5172
|
+
"9:4": "minecraft:water[level=4]",
|
|
5173
|
+
"9:5": "minecraft:water[level=5]",
|
|
5174
|
+
"9:6": "minecraft:water[level=6]",
|
|
5175
|
+
"9:7": "minecraft:water[level=7]",
|
|
5176
|
+
"9:8": "minecraft:water[level=8]",
|
|
5177
|
+
"9:9": "minecraft:water[level=9]",
|
|
5178
|
+
"9:10": "minecraft:water[level=10]",
|
|
5179
|
+
"9:11": "minecraft:water[level=11]",
|
|
5180
|
+
"9:12": "minecraft:water[level=12]",
|
|
5181
|
+
"9:13": "minecraft:water[level=13]",
|
|
5182
|
+
"9:14": "minecraft:water[level=14]",
|
|
5183
|
+
"9:15": "minecraft:water[level=15]",
|
|
5184
|
+
"10:0": "minecraft:lava[level=0]",
|
|
5185
|
+
"10:1": "minecraft:lava[level=1]",
|
|
5186
|
+
"10:2": "minecraft:lava[level=2]",
|
|
5187
|
+
"10:3": "minecraft:lava[level=3]",
|
|
5188
|
+
"10:4": "minecraft:lava[level=4]",
|
|
5189
|
+
"10:5": "minecraft:lava[level=5]",
|
|
5190
|
+
"10:6": "minecraft:lava[level=6]",
|
|
5191
|
+
"10:7": "minecraft:lava[level=7]",
|
|
5192
|
+
"10:8": "minecraft:lava[level=8]",
|
|
5193
|
+
"10:9": "minecraft:lava[level=9]",
|
|
5194
|
+
"10:10": "minecraft:lava[level=10]",
|
|
5195
|
+
"10:11": "minecraft:lava[level=11]",
|
|
5196
|
+
"10:12": "minecraft:lava[level=12]",
|
|
5197
|
+
"10:13": "minecraft:lava[level=13]",
|
|
5198
|
+
"10:14": "minecraft:lava[level=14]",
|
|
5199
|
+
"10:15": "minecraft:lava[level=15]",
|
|
5200
|
+
"11:0": "minecraft:lava[level=0]",
|
|
5201
|
+
"11:1": "minecraft:lava[level=1]",
|
|
5202
|
+
"11:2": "minecraft:lava[level=2]",
|
|
5203
|
+
"11:3": "minecraft:lava[level=3]",
|
|
5204
|
+
"11:4": "minecraft:lava[level=4]",
|
|
5205
|
+
"11:5": "minecraft:lava[level=5]",
|
|
5206
|
+
"11:6": "minecraft:lava[level=6]",
|
|
5207
|
+
"11:7": "minecraft:lava[level=7]",
|
|
5208
|
+
"11:8": "minecraft:lava[level=8]",
|
|
5209
|
+
"11:9": "minecraft:lava[level=9]",
|
|
5210
|
+
"11:10": "minecraft:lava[level=10]",
|
|
5211
|
+
"11:11": "minecraft:lava[level=11]",
|
|
5212
|
+
"11:12": "minecraft:lava[level=12]",
|
|
5213
|
+
"11:13": "minecraft:lava[level=13]",
|
|
5214
|
+
"11:14": "minecraft:lava[level=14]",
|
|
5215
|
+
"11:15": "minecraft:lava[level=15]",
|
|
5216
|
+
"12:0": "minecraft:sand",
|
|
5217
|
+
"12:1": "minecraft:red_sand",
|
|
5218
|
+
"13:0": "minecraft:gravel",
|
|
5219
|
+
"14:0": "minecraft:gold_ore",
|
|
5220
|
+
"15:0": "minecraft:iron_ore",
|
|
5221
|
+
"16:0": "minecraft:coal_ore",
|
|
5222
|
+
"17:0": "minecraft:oak_log[axis=y]",
|
|
5223
|
+
"17:1": "minecraft:spruce_log[axis=y]",
|
|
5224
|
+
"17:2": "minecraft:birch_log[axis=y]",
|
|
5225
|
+
"17:3": "minecraft:jungle_log[axis=y]",
|
|
5226
|
+
"17:4": "minecraft:oak_log[axis=x]",
|
|
5227
|
+
"17:5": "minecraft:spruce_log[axis=x]",
|
|
5228
|
+
"17:6": "minecraft:birch_log[axis=x]",
|
|
5229
|
+
"17:7": "minecraft:jungle_log[axis=x]",
|
|
5230
|
+
"17:8": "minecraft:oak_log[axis=z]",
|
|
5231
|
+
"17:9": "minecraft:spruce_log[axis=z]",
|
|
5232
|
+
"17:10": "minecraft:birch_log[axis=z]",
|
|
5233
|
+
"17:11": "minecraft:jungle_log[axis=z]",
|
|
5234
|
+
"17:12": "minecraft:oak_wood",
|
|
5235
|
+
"17:13": "minecraft:spruce_wood",
|
|
5236
|
+
"17:14": "minecraft:birch_wood",
|
|
5237
|
+
"17:15": "minecraft:jungle_wood",
|
|
5238
|
+
"18:0": "minecraft:oak_leaves[persistent=false,distance=1]",
|
|
5239
|
+
"18:1": "minecraft:spruce_leaves[persistent=false,distance=1]",
|
|
5240
|
+
"18:2": "minecraft:birch_leaves[persistent=false,distance=1]",
|
|
5241
|
+
"18:3": "minecraft:jungle_leaves[persistent=false,distance=1]",
|
|
5242
|
+
"18:4": "minecraft:oak_leaves[persistent=true,distance=1]",
|
|
5243
|
+
"18:5": "minecraft:spruce_leaves[persistent=true,distance=1]",
|
|
5244
|
+
"18:6": "minecraft:birch_leaves[persistent=true,distance=1]",
|
|
5245
|
+
"18:7": "minecraft:jungle_leaves[persistent=true,distance=1]",
|
|
5246
|
+
"18:8": "minecraft:oak_leaves[persistent=false,distance=1]",
|
|
5247
|
+
"18:9": "minecraft:spruce_leaves[persistent=false,distance=1]",
|
|
5248
|
+
"18:10": "minecraft:birch_leaves[persistent=false,distance=1]",
|
|
5249
|
+
"18:11": "minecraft:jungle_leaves[persistent=false,distance=1]",
|
|
5250
|
+
"18:12": "minecraft:oak_leaves[persistent=true,distance=1]",
|
|
5251
|
+
"18:13": "minecraft:spruce_leaves[persistent=true,distance=1]",
|
|
5252
|
+
"18:14": "minecraft:birch_leaves[persistent=true,distance=1]",
|
|
5253
|
+
"18:15": "minecraft:jungle_leaves[persistent=true,distance=1]",
|
|
5254
|
+
"19:0": "minecraft:sponge",
|
|
5255
|
+
"19:1": "minecraft:wet_sponge",
|
|
5256
|
+
"20:0": "minecraft:glass",
|
|
5257
|
+
"21:0": "minecraft:lapis_ore",
|
|
5258
|
+
"22:0": "minecraft:lapis_block",
|
|
5259
|
+
"23:0": "minecraft:dispenser[triggered=false,facing=down]",
|
|
5260
|
+
"23:1": "minecraft:dispenser[triggered=false,facing=up]",
|
|
5261
|
+
"23:2": "minecraft:dispenser[triggered=false,facing=north]",
|
|
5262
|
+
"23:3": "minecraft:dispenser[triggered=false,facing=south]",
|
|
5263
|
+
"23:4": "minecraft:dispenser[triggered=false,facing=west]",
|
|
5264
|
+
"23:5": "minecraft:dispenser[triggered=false,facing=east]",
|
|
5265
|
+
"23:8": "minecraft:dispenser[triggered=true,facing=down]",
|
|
5266
|
+
"23:9": "minecraft:dispenser[triggered=true,facing=up]",
|
|
5267
|
+
"23:10": "minecraft:dispenser[triggered=true,facing=north]",
|
|
5268
|
+
"23:11": "minecraft:dispenser[triggered=true,facing=south]",
|
|
5269
|
+
"23:12": "minecraft:dispenser[triggered=true,facing=west]",
|
|
5270
|
+
"23:13": "minecraft:dispenser[triggered=true,facing=east]",
|
|
5271
|
+
"24:0": "minecraft:sandstone",
|
|
5272
|
+
"24:1": "minecraft:chiseled_sandstone",
|
|
5273
|
+
"24:2": "minecraft:cut_sandstone",
|
|
5274
|
+
"25:0": "minecraft:note_block",
|
|
5275
|
+
"26:0": "minecraft:red_bed[part=foot,facing=south,occupied=false]",
|
|
5276
|
+
"26:1": "minecraft:red_bed[part=foot,facing=west,occupied=false]",
|
|
5277
|
+
"26:2": "minecraft:red_bed[part=foot,facing=north,occupied=false]",
|
|
5278
|
+
"26:3": "minecraft:red_bed[part=foot,facing=east,occupied=false]",
|
|
5279
|
+
"26:4": "minecraft:red_bed[part=foot,facing=south,occupied=true]",
|
|
5280
|
+
"26:5": "minecraft:red_bed[part=foot,facing=west,occupied=true]",
|
|
5281
|
+
"26:6": "minecraft:red_bed[part=foot,facing=north,occupied=true]",
|
|
5282
|
+
"26:7": "minecraft:red_bed[part=foot,facing=east,occupied=true]",
|
|
5283
|
+
"26:8": "minecraft:red_bed[part=head,facing=south,occupied=false]",
|
|
5284
|
+
"26:9": "minecraft:red_bed[part=head,facing=west,occupied=false]",
|
|
5285
|
+
"26:10": "minecraft:red_bed[part=head,facing=north,occupied=false]",
|
|
5286
|
+
"26:11": "minecraft:red_bed[part=head,facing=east,occupied=false]",
|
|
5287
|
+
"26:12": "minecraft:red_bed[part=head,facing=south,occupied=true]",
|
|
5288
|
+
"26:13": "minecraft:red_bed[part=head,facing=west,occupied=true]",
|
|
5289
|
+
"26:14": "minecraft:red_bed[part=head,facing=north,occupied=true]",
|
|
5290
|
+
"26:15": "minecraft:red_bed[part=head,facing=east,occupied=true]",
|
|
5291
|
+
"27:0": "minecraft:powered_rail[shape=north_south,powered=false]",
|
|
5292
|
+
"27:1": "minecraft:powered_rail[shape=east_west,powered=false]",
|
|
5293
|
+
"27:2": "minecraft:powered_rail[shape=ascending_east,powered=false]",
|
|
5294
|
+
"27:3": "minecraft:powered_rail[shape=ascending_west,powered=false]",
|
|
5295
|
+
"27:4": "minecraft:powered_rail[shape=ascending_north,powered=false]",
|
|
5296
|
+
"27:5": "minecraft:powered_rail[shape=ascending_south,powered=false]",
|
|
5297
|
+
"27:8": "minecraft:powered_rail[shape=north_south,powered=true]",
|
|
5298
|
+
"27:9": "minecraft:powered_rail[shape=east_west,powered=true]",
|
|
5299
|
+
"27:10": "minecraft:powered_rail[shape=ascending_east,powered=true]",
|
|
5300
|
+
"27:11": "minecraft:powered_rail[shape=ascending_west,powered=true]",
|
|
5301
|
+
"27:12": "minecraft:powered_rail[shape=ascending_north,powered=true]",
|
|
5302
|
+
"27:13": "minecraft:powered_rail[shape=ascending_south,powered=true]",
|
|
5303
|
+
"28:0": "minecraft:detector_rail[shape=north_south,powered=false]",
|
|
5304
|
+
"28:1": "minecraft:detector_rail[shape=east_west,powered=false]",
|
|
5305
|
+
"28:2": "minecraft:detector_rail[shape=ascending_east,powered=false]",
|
|
5306
|
+
"28:3": "minecraft:detector_rail[shape=ascending_west,powered=false]",
|
|
5307
|
+
"28:4": "minecraft:detector_rail[shape=ascending_north,powered=false]",
|
|
5308
|
+
"28:5": "minecraft:detector_rail[shape=ascending_south,powered=false]",
|
|
5309
|
+
"28:8": "minecraft:detector_rail[shape=north_south,powered=true]",
|
|
5310
|
+
"28:9": "minecraft:detector_rail[shape=east_west,powered=true]",
|
|
5311
|
+
"28:10": "minecraft:detector_rail[shape=ascending_east,powered=true]",
|
|
5312
|
+
"28:11": "minecraft:detector_rail[shape=ascending_west,powered=true]",
|
|
5313
|
+
"28:12": "minecraft:detector_rail[shape=ascending_north,powered=true]",
|
|
5314
|
+
"28:13": "minecraft:detector_rail[shape=ascending_south,powered=true]",
|
|
5315
|
+
"29:0": "minecraft:sticky_piston[facing=down,extended=false]",
|
|
5316
|
+
"29:1": "minecraft:sticky_piston[facing=up,extended=false]",
|
|
5317
|
+
"29:2": "minecraft:sticky_piston[facing=north,extended=false]",
|
|
5318
|
+
"29:3": "minecraft:sticky_piston[facing=south,extended=false]",
|
|
5319
|
+
"29:4": "minecraft:sticky_piston[facing=west,extended=false]",
|
|
5320
|
+
"29:5": "minecraft:sticky_piston[facing=east,extended=false]",
|
|
5321
|
+
"29:8": "minecraft:sticky_piston[facing=down,extended=true]",
|
|
5322
|
+
"29:9": "minecraft:sticky_piston[facing=up,extended=true]",
|
|
5323
|
+
"29:10": "minecraft:sticky_piston[facing=north,extended=true]",
|
|
5324
|
+
"29:11": "minecraft:sticky_piston[facing=south,extended=true]",
|
|
5325
|
+
"29:12": "minecraft:sticky_piston[facing=west,extended=true]",
|
|
5326
|
+
"29:13": "minecraft:sticky_piston[facing=east,extended=true]",
|
|
5327
|
+
"30:0": "minecraft:cobweb",
|
|
5328
|
+
"31:0": "minecraft:dead_bush",
|
|
5329
|
+
"31:1": "minecraft:short_grass",
|
|
5330
|
+
"31:2": "minecraft:fern",
|
|
5331
|
+
"32:0": "minecraft:dead_bush",
|
|
5332
|
+
"33:0": "minecraft:piston[facing=down,extended=false]",
|
|
5333
|
+
"33:1": "minecraft:piston[facing=up,extended=false]",
|
|
5334
|
+
"33:2": "minecraft:piston[facing=north,extended=false]",
|
|
5335
|
+
"33:3": "minecraft:piston[facing=south,extended=false]",
|
|
5336
|
+
"33:4": "minecraft:piston[facing=west,extended=false]",
|
|
5337
|
+
"33:5": "minecraft:piston[facing=east,extended=false]",
|
|
5338
|
+
"33:8": "minecraft:piston[facing=down,extended=true]",
|
|
5339
|
+
"33:9": "minecraft:piston[facing=up,extended=true]",
|
|
5340
|
+
"33:10": "minecraft:piston[facing=north,extended=true]",
|
|
5341
|
+
"33:11": "minecraft:piston[facing=south,extended=true]",
|
|
5342
|
+
"33:12": "minecraft:piston[facing=west,extended=true]",
|
|
5343
|
+
"33:13": "minecraft:piston[facing=east,extended=true]",
|
|
5344
|
+
"34:0": "minecraft:piston_head[short=false,facing=down,type=normal]",
|
|
5345
|
+
"34:1": "minecraft:piston_head[short=false,facing=up,type=normal]",
|
|
5346
|
+
"34:2": "minecraft:piston_head[short=false,facing=north,type=normal]",
|
|
5347
|
+
"34:3": "minecraft:piston_head[short=false,facing=south,type=normal]",
|
|
5348
|
+
"34:4": "minecraft:piston_head[short=false,facing=west,type=normal]",
|
|
5349
|
+
"34:5": "minecraft:piston_head[short=false,facing=east,type=normal]",
|
|
5350
|
+
"34:8": "minecraft:piston_head[short=false,facing=down,type=sticky]",
|
|
5351
|
+
"34:9": "minecraft:piston_head[short=false,facing=up,type=sticky]",
|
|
5352
|
+
"34:10": "minecraft:piston_head[short=false,facing=north,type=sticky]",
|
|
5353
|
+
"34:11": "minecraft:piston_head[short=false,facing=south,type=sticky]",
|
|
5354
|
+
"34:12": "minecraft:piston_head[short=false,facing=west,type=sticky]",
|
|
5355
|
+
"34:13": "minecraft:piston_head[short=false,facing=east,type=sticky]",
|
|
5356
|
+
"35:0": "minecraft:white_wool",
|
|
5357
|
+
"35:1": "minecraft:orange_wool",
|
|
5358
|
+
"35:2": "minecraft:magenta_wool",
|
|
5359
|
+
"35:3": "minecraft:light_blue_wool",
|
|
5360
|
+
"35:4": "minecraft:yellow_wool",
|
|
5361
|
+
"35:5": "minecraft:lime_wool",
|
|
5362
|
+
"35:6": "minecraft:pink_wool",
|
|
5363
|
+
"35:7": "minecraft:gray_wool",
|
|
5364
|
+
"35:8": "minecraft:light_gray_wool",
|
|
5365
|
+
"35:9": "minecraft:cyan_wool",
|
|
5366
|
+
"35:10": "minecraft:purple_wool",
|
|
5367
|
+
"35:11": "minecraft:blue_wool",
|
|
5368
|
+
"35:12": "minecraft:brown_wool",
|
|
5369
|
+
"35:13": "minecraft:green_wool",
|
|
5370
|
+
"35:14": "minecraft:red_wool",
|
|
5371
|
+
"35:15": "minecraft:black_wool",
|
|
5372
|
+
"36:0": "minecraft:moving_piston[facing=down,type=normal]",
|
|
5373
|
+
"36:1": "minecraft:moving_piston[facing=up,type=normal]",
|
|
5374
|
+
"36:2": "minecraft:moving_piston[facing=north,type=normal]",
|
|
5375
|
+
"36:3": "minecraft:moving_piston[facing=south,type=normal]",
|
|
5376
|
+
"36:4": "minecraft:moving_piston[facing=west,type=normal]",
|
|
5377
|
+
"36:5": "minecraft:moving_piston[facing=east,type=normal]",
|
|
5378
|
+
"36:8": "minecraft:moving_piston[facing=down,type=sticky]",
|
|
5379
|
+
"36:9": "minecraft:moving_piston[facing=up,type=sticky]",
|
|
5380
|
+
"36:10": "minecraft:moving_piston[facing=north,type=sticky]",
|
|
5381
|
+
"36:11": "minecraft:moving_piston[facing=south,type=sticky]",
|
|
5382
|
+
"36:12": "minecraft:moving_piston[facing=west,type=sticky]",
|
|
5383
|
+
"36:13": "minecraft:moving_piston[facing=east,type=sticky]",
|
|
5384
|
+
"37:0": "minecraft:dandelion",
|
|
5385
|
+
"38:0": "minecraft:poppy",
|
|
5386
|
+
"38:1": "minecraft:blue_orchid",
|
|
5387
|
+
"38:2": "minecraft:allium",
|
|
5388
|
+
"38:3": "minecraft:azure_bluet",
|
|
5389
|
+
"38:4": "minecraft:red_tulip",
|
|
5390
|
+
"38:5": "minecraft:orange_tulip",
|
|
5391
|
+
"38:6": "minecraft:white_tulip",
|
|
5392
|
+
"38:7": "minecraft:pink_tulip",
|
|
5393
|
+
"38:8": "minecraft:oxeye_daisy",
|
|
5394
|
+
"39:0": "minecraft:brown_mushroom",
|
|
5395
|
+
"40:0": "minecraft:red_mushroom",
|
|
5396
|
+
"41:0": "minecraft:gold_block",
|
|
5397
|
+
"42:0": "minecraft:iron_block",
|
|
5398
|
+
"43:0": "minecraft:stone_slab[type=double]",
|
|
5399
|
+
"43:1": "minecraft:sandstone_slab[type=double]",
|
|
5400
|
+
"43:2": "minecraft:petrified_oak_slab[type=double]",
|
|
5401
|
+
"43:3": "minecraft:cobblestone_slab[type=double]",
|
|
5402
|
+
"43:4": "minecraft:brick_slab[type=double]",
|
|
5403
|
+
"43:5": "minecraft:stone_brick_slab[type=double]",
|
|
5404
|
+
"43:6": "minecraft:nether_brick_slab[type=double]",
|
|
5405
|
+
"43:7": "minecraft:quartz_slab[type=double]",
|
|
5406
|
+
"43:8": "minecraft:smooth_stone",
|
|
5407
|
+
"43:9": "minecraft:smooth_sandstone",
|
|
5408
|
+
"43:10": "minecraft:petrified_oak_slab[type=double]",
|
|
5409
|
+
"43:11": "minecraft:cobblestone_slab[type=double]",
|
|
5410
|
+
"43:12": "minecraft:brick_slab[type=double]",
|
|
5411
|
+
"43:13": "minecraft:stone_brick_slab[type=double]",
|
|
5412
|
+
"43:14": "minecraft:nether_brick_slab[type=double]",
|
|
5413
|
+
"43:15": "minecraft:smooth_quartz",
|
|
5414
|
+
"44:0": "minecraft:stone_slab[type=bottom]",
|
|
5415
|
+
"44:1": "minecraft:sandstone_slab[type=bottom]",
|
|
5416
|
+
"44:2": "minecraft:petrified_oak_slab[type=bottom]",
|
|
5417
|
+
"44:3": "minecraft:cobblestone_slab[type=bottom]",
|
|
5418
|
+
"44:4": "minecraft:brick_slab[type=bottom]",
|
|
5419
|
+
"44:5": "minecraft:stone_brick_slab[type=bottom]",
|
|
5420
|
+
"44:6": "minecraft:nether_brick_slab[type=bottom]",
|
|
5421
|
+
"44:7": "minecraft:quartz_slab[type=bottom]",
|
|
5422
|
+
"44:8": "minecraft:stone_slab[type=top]",
|
|
5423
|
+
"44:9": "minecraft:sandstone_slab[type=top]",
|
|
5424
|
+
"44:10": "minecraft:petrified_oak_slab[type=top]",
|
|
5425
|
+
"44:11": "minecraft:cobblestone_slab[type=top]",
|
|
5426
|
+
"44:12": "minecraft:brick_slab[type=top]",
|
|
5427
|
+
"44:13": "minecraft:stone_brick_slab[type=top]",
|
|
5428
|
+
"44:14": "minecraft:nether_brick_slab[type=top]",
|
|
5429
|
+
"44:15": "minecraft:quartz_slab[type=top]",
|
|
5430
|
+
"45:0": "minecraft:bricks",
|
|
5431
|
+
"46:0": "minecraft:tnt[unstable=false]",
|
|
5432
|
+
"46:1": "minecraft:tnt[unstable=true]",
|
|
5433
|
+
"47:0": "minecraft:bookshelf",
|
|
5434
|
+
"48:0": "minecraft:mossy_cobblestone",
|
|
5435
|
+
"49:0": "minecraft:obsidian",
|
|
5436
|
+
"50:1": "minecraft:wall_torch[facing=east]",
|
|
5437
|
+
"50:2": "minecraft:wall_torch[facing=west]",
|
|
5438
|
+
"50:3": "minecraft:wall_torch[facing=south]",
|
|
5439
|
+
"50:4": "minecraft:wall_torch[facing=north]",
|
|
5440
|
+
"50:5": "minecraft:torch",
|
|
5441
|
+
"51:0": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=0]",
|
|
5442
|
+
"51:1": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=1]",
|
|
5443
|
+
"51:2": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=2]",
|
|
5444
|
+
"51:3": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=3]",
|
|
5445
|
+
"51:4": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=4]",
|
|
5446
|
+
"51:5": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=5]",
|
|
5447
|
+
"51:6": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=6]",
|
|
5448
|
+
"51:7": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=7]",
|
|
5449
|
+
"51:8": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=8]",
|
|
5450
|
+
"51:9": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=9]",
|
|
5451
|
+
"51:10": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=10]",
|
|
5452
|
+
"51:11": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=11]",
|
|
5453
|
+
"51:12": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=12]",
|
|
5454
|
+
"51:13": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=13]",
|
|
5455
|
+
"51:14": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=14]",
|
|
5456
|
+
"51:15": "minecraft:fire[east=false,south=false,north=false,west=false,up=false,age=15]",
|
|
5457
|
+
"52:0": "minecraft:spawner",
|
|
5458
|
+
"53:0": "minecraft:oak_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5459
|
+
"53:1": "minecraft:oak_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5460
|
+
"53:2": "minecraft:oak_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5461
|
+
"53:3": "minecraft:oak_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5462
|
+
"53:4": "minecraft:oak_stairs[half=top,shape=outer_right,facing=east]",
|
|
5463
|
+
"53:5": "minecraft:oak_stairs[half=top,shape=outer_right,facing=west]",
|
|
5464
|
+
"53:6": "minecraft:oak_stairs[half=top,shape=outer_right,facing=south]",
|
|
5465
|
+
"53:7": "minecraft:oak_stairs[half=top,shape=outer_right,facing=north]",
|
|
5466
|
+
"54:2": "minecraft:chest[facing=north,type=single]",
|
|
5467
|
+
"54:3": "minecraft:chest[facing=south,type=single]",
|
|
5468
|
+
"54:4": "minecraft:chest[facing=west,type=single]",
|
|
5469
|
+
"54:5": "minecraft:chest[facing=east,type=single]",
|
|
5470
|
+
"55:0": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=0]",
|
|
5471
|
+
"55:1": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=1]",
|
|
5472
|
+
"55:2": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=2]",
|
|
5473
|
+
"55:3": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=3]",
|
|
5474
|
+
"55:4": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=4]",
|
|
5475
|
+
"55:5": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=5]",
|
|
5476
|
+
"55:6": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=6]",
|
|
5477
|
+
"55:7": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=7]",
|
|
5478
|
+
"55:8": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=8]",
|
|
5479
|
+
"55:9": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=9]",
|
|
5480
|
+
"55:10": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=10]",
|
|
5481
|
+
"55:11": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=11]",
|
|
5482
|
+
"55:12": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=12]",
|
|
5483
|
+
"55:13": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=13]",
|
|
5484
|
+
"55:14": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=14]",
|
|
5485
|
+
"55:15": "minecraft:redstone_wire[east=none,south=none,north=none,west=none,power=15]",
|
|
5486
|
+
"56:0": "minecraft:diamond_ore",
|
|
5487
|
+
"57:0": "minecraft:diamond_block",
|
|
5488
|
+
"58:0": "minecraft:crafting_table",
|
|
5489
|
+
"59:0": "minecraft:wheat[age=0]",
|
|
5490
|
+
"59:1": "minecraft:wheat[age=1]",
|
|
5491
|
+
"59:2": "minecraft:wheat[age=2]",
|
|
5492
|
+
"59:3": "minecraft:wheat[age=3]",
|
|
5493
|
+
"59:4": "minecraft:wheat[age=4]",
|
|
5494
|
+
"59:5": "minecraft:wheat[age=5]",
|
|
5495
|
+
"59:6": "minecraft:wheat[age=6]",
|
|
5496
|
+
"59:7": "minecraft:wheat[age=7]",
|
|
5497
|
+
"60:0": "minecraft:farmland[moisture=0]",
|
|
5498
|
+
"60:1": "minecraft:farmland[moisture=1]",
|
|
5499
|
+
"60:2": "minecraft:farmland[moisture=2]",
|
|
5500
|
+
"60:3": "minecraft:farmland[moisture=3]",
|
|
5501
|
+
"60:4": "minecraft:farmland[moisture=4]",
|
|
5502
|
+
"60:5": "minecraft:farmland[moisture=5]",
|
|
5503
|
+
"60:6": "minecraft:farmland[moisture=6]",
|
|
5504
|
+
"60:7": "minecraft:farmland[moisture=7]",
|
|
5505
|
+
"61:2": "minecraft:furnace[facing=north,lit=false]",
|
|
5506
|
+
"61:3": "minecraft:furnace[facing=south,lit=false]",
|
|
5507
|
+
"61:4": "minecraft:furnace[facing=west,lit=false]",
|
|
5508
|
+
"61:5": "minecraft:furnace[facing=east,lit=false]",
|
|
5509
|
+
"62:2": "minecraft:furnace[facing=north,lit=true]",
|
|
5510
|
+
"62:3": "minecraft:furnace[facing=south,lit=true]",
|
|
5511
|
+
"62:4": "minecraft:furnace[facing=west,lit=true]",
|
|
5512
|
+
"62:5": "minecraft:furnace[facing=east,lit=true]",
|
|
5513
|
+
"63:0": "minecraft:oak_sign[rotation=0]",
|
|
5514
|
+
"63:1": "minecraft:oak_sign[rotation=1]",
|
|
5515
|
+
"63:2": "minecraft:oak_sign[rotation=2]",
|
|
5516
|
+
"63:3": "minecraft:oak_sign[rotation=3]",
|
|
5517
|
+
"63:4": "minecraft:oak_sign[rotation=4]",
|
|
5518
|
+
"63:5": "minecraft:oak_sign[rotation=5]",
|
|
5519
|
+
"63:6": "minecraft:oak_sign[rotation=6]",
|
|
5520
|
+
"63:7": "minecraft:oak_sign[rotation=7]",
|
|
5521
|
+
"63:8": "minecraft:oak_sign[rotation=8]",
|
|
5522
|
+
"63:9": "minecraft:oak_sign[rotation=9]",
|
|
5523
|
+
"63:10": "minecraft:oak_sign[rotation=10]",
|
|
5524
|
+
"63:11": "minecraft:oak_sign[rotation=11]",
|
|
5525
|
+
"63:12": "minecraft:oak_sign[rotation=12]",
|
|
5526
|
+
"63:13": "minecraft:oak_sign[rotation=13]",
|
|
5527
|
+
"63:14": "minecraft:oak_sign[rotation=14]",
|
|
5528
|
+
"63:15": "minecraft:oak_sign[rotation=15]",
|
|
5529
|
+
"64:0": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=east,open=false]",
|
|
5530
|
+
"64:1": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=south,open=false]",
|
|
5531
|
+
"64:2": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=west,open=false]",
|
|
5532
|
+
"64:3": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=north,open=false]",
|
|
5533
|
+
"64:4": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=east,open=true]",
|
|
5534
|
+
"64:5": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=south,open=true]",
|
|
5535
|
+
"64:6": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=west,open=true]",
|
|
5536
|
+
"64:7": "minecraft:oak_door[hinge=right,half=lower,powered=false,facing=north,open=true]",
|
|
5537
|
+
"64:8": "minecraft:oak_door[hinge=left,half=upper,powered=false,facing=east,open=false]",
|
|
5538
|
+
"64:9": "minecraft:oak_door[hinge=right,half=upper,powered=false,facing=east,open=false]",
|
|
5539
|
+
"64:10": "minecraft:oak_door[hinge=left,half=upper,powered=true,facing=east,open=false]",
|
|
5540
|
+
"64:11": "minecraft:oak_door[hinge=right,half=upper,powered=true,facing=east,open=false]",
|
|
5541
|
+
"65:2": "minecraft:ladder[facing=north]",
|
|
5542
|
+
"65:3": "minecraft:ladder[facing=south]",
|
|
5543
|
+
"65:4": "minecraft:ladder[facing=west]",
|
|
5544
|
+
"65:5": "minecraft:ladder[facing=east]",
|
|
5545
|
+
"66:0": "minecraft:rail[shape=north_south]",
|
|
5546
|
+
"66:1": "minecraft:rail[shape=east_west]",
|
|
5547
|
+
"66:2": "minecraft:rail[shape=ascending_east]",
|
|
5548
|
+
"66:3": "minecraft:rail[shape=ascending_west]",
|
|
5549
|
+
"66:4": "minecraft:rail[shape=ascending_north]",
|
|
5550
|
+
"66:5": "minecraft:rail[shape=ascending_south]",
|
|
5551
|
+
"66:6": "minecraft:rail[shape=south_east]",
|
|
5552
|
+
"66:7": "minecraft:rail[shape=south_west]",
|
|
5553
|
+
"66:8": "minecraft:rail[shape=north_west]",
|
|
5554
|
+
"66:9": "minecraft:rail[shape=north_east]",
|
|
5555
|
+
"67:0": "minecraft:cobblestone_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5556
|
+
"67:1": "minecraft:cobblestone_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5557
|
+
"67:2": "minecraft:cobblestone_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5558
|
+
"67:3": "minecraft:cobblestone_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5559
|
+
"67:4": "minecraft:cobblestone_stairs[half=top,shape=outer_right,facing=east]",
|
|
5560
|
+
"67:5": "minecraft:cobblestone_stairs[half=top,shape=outer_right,facing=west]",
|
|
5561
|
+
"67:6": "minecraft:cobblestone_stairs[half=top,shape=outer_right,facing=south]",
|
|
5562
|
+
"67:7": "minecraft:cobblestone_stairs[half=top,shape=outer_right,facing=north]",
|
|
5563
|
+
"68:2": "minecraft:oak_wall_sign[facing=north]",
|
|
5564
|
+
"68:3": "minecraft:oak_wall_sign[facing=south]",
|
|
5565
|
+
"68:4": "minecraft:oak_wall_sign[facing=west]",
|
|
5566
|
+
"68:5": "minecraft:oak_wall_sign[facing=east]",
|
|
5567
|
+
"69:0": "minecraft:lever[powered=false,facing=north,face=ceiling]",
|
|
5568
|
+
"69:1": "minecraft:lever[powered=false,facing=east,face=wall]",
|
|
5569
|
+
"69:2": "minecraft:lever[powered=false,facing=west,face=wall]",
|
|
5570
|
+
"69:3": "minecraft:lever[powered=false,facing=south,face=wall]",
|
|
5571
|
+
"69:4": "minecraft:lever[powered=false,facing=north,face=wall]",
|
|
5572
|
+
"69:5": "minecraft:lever[powered=false,facing=east,face=floor]",
|
|
5573
|
+
"69:6": "minecraft:lever[powered=false,facing=north,face=floor]",
|
|
5574
|
+
"69:7": "minecraft:lever[powered=false,facing=east,face=ceiling]",
|
|
5575
|
+
"69:8": "minecraft:lever[powered=true,facing=north,face=ceiling]",
|
|
5576
|
+
"69:9": "minecraft:lever[powered=true,facing=east,face=wall]",
|
|
5577
|
+
"69:10": "minecraft:lever[powered=true,facing=west,face=wall]",
|
|
5578
|
+
"69:11": "minecraft:lever[powered=true,facing=south,face=wall]",
|
|
5579
|
+
"69:12": "minecraft:lever[powered=true,facing=north,face=wall]",
|
|
5580
|
+
"69:13": "minecraft:lever[powered=true,facing=east,face=floor]",
|
|
5581
|
+
"69:14": "minecraft:lever[powered=true,facing=north,face=floor]",
|
|
5582
|
+
"69:15": "minecraft:lever[powered=true,facing=east,face=ceiling]",
|
|
5583
|
+
"70:0": "minecraft:stone_pressure_plate[powered=false]",
|
|
5584
|
+
"70:1": "minecraft:stone_pressure_plate[powered=true]",
|
|
5585
|
+
"71:0": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=east,open=false]",
|
|
5586
|
+
"71:1": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=south,open=false]",
|
|
5587
|
+
"71:2": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=west,open=false]",
|
|
5588
|
+
"71:3": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=north,open=false]",
|
|
5589
|
+
"71:4": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=east,open=true]",
|
|
5590
|
+
"71:5": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=south,open=true]",
|
|
5591
|
+
"71:6": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=west,open=true]",
|
|
5592
|
+
"71:7": "minecraft:iron_door[hinge=right,half=lower,powered=false,facing=north,open=true]",
|
|
5593
|
+
"71:8": "minecraft:iron_door[hinge=left,half=upper,powered=false,facing=east,open=false]",
|
|
5594
|
+
"71:9": "minecraft:iron_door[hinge=right,half=upper,powered=false,facing=east,open=false]",
|
|
5595
|
+
"71:10": "minecraft:iron_door[hinge=left,half=upper,powered=true,facing=east,open=false]",
|
|
5596
|
+
"71:11": "minecraft:iron_door[hinge=right,half=upper,powered=true,facing=east,open=false]",
|
|
5597
|
+
"72:0": "minecraft:oak_pressure_plate[powered=false]",
|
|
5598
|
+
"72:1": "minecraft:oak_pressure_plate[powered=true]",
|
|
5599
|
+
"73:0": "minecraft:redstone_ore[lit=false]",
|
|
5600
|
+
"74:0": "minecraft:redstone_ore[lit=true]",
|
|
5601
|
+
"75:1": "minecraft:redstone_wall_torch[facing=east,lit=false]",
|
|
5602
|
+
"75:2": "minecraft:redstone_wall_torch[facing=west,lit=false]",
|
|
5603
|
+
"75:3": "minecraft:redstone_wall_torch[facing=south,lit=false]",
|
|
5604
|
+
"75:4": "minecraft:redstone_wall_torch[facing=north,lit=false]",
|
|
5605
|
+
"75:5": "minecraft:redstone_torch[lit=false]",
|
|
5606
|
+
"76:1": "minecraft:redstone_wall_torch[facing=east,lit=true]",
|
|
5607
|
+
"76:2": "minecraft:redstone_wall_torch[facing=west,lit=true]",
|
|
5608
|
+
"76:3": "minecraft:redstone_wall_torch[facing=south,lit=true]",
|
|
5609
|
+
"76:4": "minecraft:redstone_wall_torch[facing=north,lit=true]",
|
|
5610
|
+
"76:5": "minecraft:redstone_torch[lit=true]",
|
|
5611
|
+
"77:0": "minecraft:stone_button[powered=false,facing=east,face=ceiling]",
|
|
5612
|
+
"77:1": "minecraft:stone_button[powered=false,facing=east,face=wall]",
|
|
5613
|
+
"77:2": "minecraft:stone_button[powered=false,facing=west,face=wall]",
|
|
5614
|
+
"77:3": "minecraft:stone_button[powered=false,facing=south,face=wall]",
|
|
5615
|
+
"77:4": "minecraft:stone_button[powered=false,facing=north,face=wall]",
|
|
5616
|
+
"77:5": "minecraft:stone_button[powered=false,facing=east,face=floor]",
|
|
5617
|
+
"77:8": "minecraft:stone_button[powered=true,facing=south,face=ceiling]",
|
|
5618
|
+
"77:9": "minecraft:stone_button[powered=true,facing=east,face=wall]",
|
|
5619
|
+
"77:10": "minecraft:stone_button[powered=true,facing=west,face=wall]",
|
|
5620
|
+
"77:11": "minecraft:stone_button[powered=true,facing=south,face=wall]",
|
|
5621
|
+
"77:12": "minecraft:stone_button[powered=true,facing=north,face=wall]",
|
|
5622
|
+
"77:13": "minecraft:stone_button[powered=true,facing=south,face=floor]",
|
|
5623
|
+
"78:0": "minecraft:snow[layers=1]",
|
|
5624
|
+
"78:1": "minecraft:snow[layers=2]",
|
|
5625
|
+
"78:2": "minecraft:snow[layers=3]",
|
|
5626
|
+
"78:3": "minecraft:snow[layers=4]",
|
|
5627
|
+
"78:4": "minecraft:snow[layers=5]",
|
|
5628
|
+
"78:5": "minecraft:snow[layers=6]",
|
|
5629
|
+
"78:6": "minecraft:snow[layers=7]",
|
|
5630
|
+
"78:7": "minecraft:snow[layers=8]",
|
|
5631
|
+
"79:0": "minecraft:ice",
|
|
5632
|
+
"80:0": "minecraft:snow_block",
|
|
5633
|
+
"81:0": "minecraft:cactus[age=0]",
|
|
5634
|
+
"81:1": "minecraft:cactus[age=1]",
|
|
5635
|
+
"81:2": "minecraft:cactus[age=2]",
|
|
5636
|
+
"81:3": "minecraft:cactus[age=3]",
|
|
5637
|
+
"81:4": "minecraft:cactus[age=4]",
|
|
5638
|
+
"81:5": "minecraft:cactus[age=5]",
|
|
5639
|
+
"81:6": "minecraft:cactus[age=6]",
|
|
5640
|
+
"81:7": "minecraft:cactus[age=7]",
|
|
5641
|
+
"81:8": "minecraft:cactus[age=8]",
|
|
5642
|
+
"81:9": "minecraft:cactus[age=9]",
|
|
5643
|
+
"81:10": "minecraft:cactus[age=10]",
|
|
5644
|
+
"81:11": "minecraft:cactus[age=11]",
|
|
5645
|
+
"81:12": "minecraft:cactus[age=12]",
|
|
5646
|
+
"81:13": "minecraft:cactus[age=13]",
|
|
5647
|
+
"81:14": "minecraft:cactus[age=14]",
|
|
5648
|
+
"81:15": "minecraft:cactus[age=15]",
|
|
5649
|
+
"82:0": "minecraft:clay",
|
|
5650
|
+
"83:0": "minecraft:sugar_cane[age=0]",
|
|
5651
|
+
"83:1": "minecraft:sugar_cane[age=1]",
|
|
5652
|
+
"83:2": "minecraft:sugar_cane[age=2]",
|
|
5653
|
+
"83:3": "minecraft:sugar_cane[age=3]",
|
|
5654
|
+
"83:4": "minecraft:sugar_cane[age=4]",
|
|
5655
|
+
"83:5": "minecraft:sugar_cane[age=5]",
|
|
5656
|
+
"83:6": "minecraft:sugar_cane[age=6]",
|
|
5657
|
+
"83:7": "minecraft:sugar_cane[age=7]",
|
|
5658
|
+
"83:8": "minecraft:sugar_cane[age=8]",
|
|
5659
|
+
"83:9": "minecraft:sugar_cane[age=9]",
|
|
5660
|
+
"83:10": "minecraft:sugar_cane[age=10]",
|
|
5661
|
+
"83:11": "minecraft:sugar_cane[age=11]",
|
|
5662
|
+
"83:12": "minecraft:sugar_cane[age=12]",
|
|
5663
|
+
"83:13": "minecraft:sugar_cane[age=13]",
|
|
5664
|
+
"83:14": "minecraft:sugar_cane[age=14]",
|
|
5665
|
+
"83:15": "minecraft:sugar_cane[age=15]",
|
|
5666
|
+
"84:0": "minecraft:jukebox[has_record=false]",
|
|
5667
|
+
"84:1": "minecraft:jukebox[has_record=true]",
|
|
5668
|
+
"85:0": "minecraft:oak_fence[east=false,south=false,north=false,west=false]",
|
|
5669
|
+
"86:0": "minecraft:carved_pumpkin[facing=south]",
|
|
5670
|
+
"86:1": "minecraft:carved_pumpkin[facing=west]",
|
|
5671
|
+
"86:2": "minecraft:carved_pumpkin[facing=north]",
|
|
5672
|
+
"86:3": "minecraft:carved_pumpkin[facing=east]",
|
|
5673
|
+
"87:0": "minecraft:netherrack",
|
|
5674
|
+
"88:0": "minecraft:soul_sand",
|
|
5675
|
+
"89:0": "minecraft:glowstone",
|
|
5676
|
+
"90:1": "minecraft:nether_portal[axis=x]",
|
|
5677
|
+
"90:2": "minecraft:nether_portal[axis=z]",
|
|
5678
|
+
"91:0": "minecraft:jack_o_lantern[facing=south]",
|
|
5679
|
+
"91:1": "minecraft:jack_o_lantern[facing=west]",
|
|
5680
|
+
"91:2": "minecraft:jack_o_lantern[facing=north]",
|
|
5681
|
+
"91:3": "minecraft:jack_o_lantern[facing=east]",
|
|
5682
|
+
"92:0": "minecraft:cake[bites=0]",
|
|
5683
|
+
"92:1": "minecraft:cake[bites=1]",
|
|
5684
|
+
"92:2": "minecraft:cake[bites=2]",
|
|
5685
|
+
"92:3": "minecraft:cake[bites=3]",
|
|
5686
|
+
"92:4": "minecraft:cake[bites=4]",
|
|
5687
|
+
"92:5": "minecraft:cake[bites=5]",
|
|
5688
|
+
"92:6": "minecraft:cake[bites=6]",
|
|
5689
|
+
"93:0": "minecraft:repeater[delay=1,facing=south,locked=false,powered=false]",
|
|
5690
|
+
"93:1": "minecraft:repeater[delay=1,facing=west,locked=false,powered=false]",
|
|
5691
|
+
"93:2": "minecraft:repeater[delay=1,facing=north,locked=false,powered=false]",
|
|
5692
|
+
"93:3": "minecraft:repeater[delay=1,facing=east,locked=false,powered=false]",
|
|
5693
|
+
"93:4": "minecraft:repeater[delay=2,facing=south,locked=false,powered=false]",
|
|
5694
|
+
"93:5": "minecraft:repeater[delay=2,facing=west,locked=false,powered=false]",
|
|
5695
|
+
"93:6": "minecraft:repeater[delay=2,facing=north,locked=false,powered=false]",
|
|
5696
|
+
"93:7": "minecraft:repeater[delay=2,facing=east,locked=false,powered=false]",
|
|
5697
|
+
"93:8": "minecraft:repeater[delay=3,facing=south,locked=false,powered=false]",
|
|
5698
|
+
"93:9": "minecraft:repeater[delay=3,facing=west,locked=false,powered=false]",
|
|
5699
|
+
"93:10": "minecraft:repeater[delay=3,facing=north,locked=false,powered=false]",
|
|
5700
|
+
"93:11": "minecraft:repeater[delay=3,facing=east,locked=false,powered=false]",
|
|
5701
|
+
"93:12": "minecraft:repeater[delay=4,facing=south,locked=false,powered=false]",
|
|
5702
|
+
"93:13": "minecraft:repeater[delay=4,facing=west,locked=false,powered=false]",
|
|
5703
|
+
"93:14": "minecraft:repeater[delay=4,facing=north,locked=false,powered=false]",
|
|
5704
|
+
"93:15": "minecraft:repeater[delay=4,facing=east,locked=false,powered=false]",
|
|
5705
|
+
"94:0": "minecraft:repeater[delay=1,facing=south,locked=false,powered=true]",
|
|
5706
|
+
"94:1": "minecraft:repeater[delay=1,facing=west,locked=false,powered=true]",
|
|
5707
|
+
"94:2": "minecraft:repeater[delay=1,facing=north,locked=false,powered=true]",
|
|
5708
|
+
"94:3": "minecraft:repeater[delay=1,facing=east,locked=false,powered=true]",
|
|
5709
|
+
"94:4": "minecraft:repeater[delay=2,facing=south,locked=false,powered=true]",
|
|
5710
|
+
"94:5": "minecraft:repeater[delay=2,facing=west,locked=false,powered=true]",
|
|
5711
|
+
"94:6": "minecraft:repeater[delay=2,facing=north,locked=false,powered=true]",
|
|
5712
|
+
"94:7": "minecraft:repeater[delay=2,facing=east,locked=false,powered=true]",
|
|
5713
|
+
"94:8": "minecraft:repeater[delay=3,facing=south,locked=false,powered=true]",
|
|
5714
|
+
"94:9": "minecraft:repeater[delay=3,facing=west,locked=false,powered=true]",
|
|
5715
|
+
"94:10": "minecraft:repeater[delay=3,facing=north,locked=false,powered=true]",
|
|
5716
|
+
"94:11": "minecraft:repeater[delay=3,facing=east,locked=false,powered=true]",
|
|
5717
|
+
"94:12": "minecraft:repeater[delay=4,facing=south,locked=false,powered=true]",
|
|
5718
|
+
"94:13": "minecraft:repeater[delay=4,facing=west,locked=false,powered=true]",
|
|
5719
|
+
"94:14": "minecraft:repeater[delay=4,facing=north,locked=false,powered=true]",
|
|
5720
|
+
"94:15": "minecraft:repeater[delay=4,facing=east,locked=false,powered=true]",
|
|
5721
|
+
"95:0": "minecraft:white_stained_glass",
|
|
5722
|
+
"95:1": "minecraft:orange_stained_glass",
|
|
5723
|
+
"95:2": "minecraft:magenta_stained_glass",
|
|
5724
|
+
"95:3": "minecraft:light_blue_stained_glass",
|
|
5725
|
+
"95:4": "minecraft:yellow_stained_glass",
|
|
5726
|
+
"95:5": "minecraft:lime_stained_glass",
|
|
5727
|
+
"95:6": "minecraft:pink_stained_glass",
|
|
5728
|
+
"95:7": "minecraft:gray_stained_glass",
|
|
5729
|
+
"95:8": "minecraft:light_gray_stained_glass",
|
|
5730
|
+
"95:9": "minecraft:cyan_stained_glass",
|
|
5731
|
+
"95:10": "minecraft:purple_stained_glass",
|
|
5732
|
+
"95:11": "minecraft:blue_stained_glass",
|
|
5733
|
+
"95:12": "minecraft:brown_stained_glass",
|
|
5734
|
+
"95:13": "minecraft:green_stained_glass",
|
|
5735
|
+
"95:14": "minecraft:red_stained_glass",
|
|
5736
|
+
"95:15": "minecraft:black_stained_glass",
|
|
5737
|
+
"96:0": "minecraft:oak_trapdoor[half=bottom,facing=north,open=false,powered=false]",
|
|
5738
|
+
"96:1": "minecraft:oak_trapdoor[half=bottom,facing=south,open=false,powered=false]",
|
|
5739
|
+
"96:2": "minecraft:oak_trapdoor[half=bottom,facing=west,open=false,powered=false]",
|
|
5740
|
+
"96:3": "minecraft:oak_trapdoor[half=bottom,facing=east,open=false,powered=false]",
|
|
5741
|
+
"96:4": "minecraft:oak_trapdoor[half=bottom,facing=north,open=true,powered=true]",
|
|
5742
|
+
"96:5": "minecraft:oak_trapdoor[half=bottom,facing=south,open=true,powered=true]",
|
|
5743
|
+
"96:6": "minecraft:oak_trapdoor[half=bottom,facing=west,open=true,powered=true]",
|
|
5744
|
+
"96:7": "minecraft:oak_trapdoor[half=bottom,facing=east,open=true,powered=true]",
|
|
5745
|
+
"96:8": "minecraft:oak_trapdoor[half=top,facing=north,open=false,powered=false]",
|
|
5746
|
+
"96:9": "minecraft:oak_trapdoor[half=top,facing=south,open=false,powered=false]",
|
|
5747
|
+
"96:10": "minecraft:oak_trapdoor[half=top,facing=west,open=false,powered=false]",
|
|
5748
|
+
"96:11": "minecraft:oak_trapdoor[half=top,facing=east,open=false,powered=false]",
|
|
5749
|
+
"96:12": "minecraft:oak_trapdoor[half=top,facing=north,open=true,powered=true]",
|
|
5750
|
+
"96:13": "minecraft:oak_trapdoor[half=top,facing=south,open=true,powered=true]",
|
|
5751
|
+
"96:14": "minecraft:oak_trapdoor[half=top,facing=west,open=true,powered=true]",
|
|
5752
|
+
"96:15": "minecraft:oak_trapdoor[half=top,facing=east,open=true,powered=true]",
|
|
5753
|
+
"97:0": "minecraft:infested_stone",
|
|
5754
|
+
"97:1": "minecraft:infested_cobblestone",
|
|
5755
|
+
"97:2": "minecraft:infested_stone_bricks",
|
|
5756
|
+
"97:3": "minecraft:infested_mossy_stone_bricks",
|
|
5757
|
+
"97:4": "minecraft:infested_cracked_stone_bricks",
|
|
5758
|
+
"97:5": "minecraft:infested_chiseled_stone_bricks",
|
|
5759
|
+
"98:0": "minecraft:stone_bricks",
|
|
5760
|
+
"98:1": "minecraft:mossy_stone_bricks",
|
|
5761
|
+
"98:2": "minecraft:cracked_stone_bricks",
|
|
5762
|
+
"98:3": "minecraft:chiseled_stone_bricks",
|
|
5763
|
+
"99:0": "minecraft:brown_mushroom_block[north=false,east=false,south=false,west=false,up=false,down=false]",
|
|
5764
|
+
"99:1": "minecraft:brown_mushroom_block[north=true,east=false,south=false,west=true,up=true,down=false]",
|
|
5765
|
+
"99:2": "minecraft:brown_mushroom_block[north=true,east=false,south=false,west=false,up=true,down=false]",
|
|
5766
|
+
"99:3": "minecraft:brown_mushroom_block[north=true,east=true,south=false,west=false,up=true,down=false]",
|
|
5767
|
+
"99:4": "minecraft:brown_mushroom_block[north=false,east=false,south=false,west=true,up=true,down=false]",
|
|
5768
|
+
"99:5": "minecraft:brown_mushroom_block[north=false,east=false,south=false,west=false,up=true,down=false]",
|
|
5769
|
+
"99:6": "minecraft:brown_mushroom_block[north=false,east=true,south=false,west=false,up=true,down=false]",
|
|
5770
|
+
"99:7": "minecraft:brown_mushroom_block[north=false,east=false,south=true,west=true,up=true,down=false]",
|
|
5771
|
+
"99:8": "minecraft:brown_mushroom_block[north=false,east=false,south=true,west=false,up=true,down=false]",
|
|
5772
|
+
"99:9": "minecraft:brown_mushroom_block[north=false,east=true,south=true,west=false,up=true,down=false]",
|
|
5773
|
+
"99:10": "minecraft:mushroom_stem[north=true,east=true,south=true,west=true,up=false,down=false]",
|
|
5774
|
+
"99:14": "minecraft:brown_mushroom_block[north=true,east=true,south=true,west=true,up=true,down=true]",
|
|
5775
|
+
"99:15": "minecraft:mushroom_stem[north=true,east=true,south=true,west=true,up=true,down=true]",
|
|
5776
|
+
"100:0": "minecraft:red_mushroom_block[north=false,east=false,south=false,west=false,up=false,down=false]",
|
|
5777
|
+
"100:1": "minecraft:red_mushroom_block[north=true,east=false,south=false,west=true,up=true,down=false]",
|
|
5778
|
+
"100:2": "minecraft:red_mushroom_block[north=true,east=false,south=false,west=false,up=true,down=false]",
|
|
5779
|
+
"100:3": "minecraft:red_mushroom_block[north=true,east=true,south=false,west=false,up=true,down=false]",
|
|
5780
|
+
"100:4": "minecraft:red_mushroom_block[north=false,east=false,south=false,west=true,up=true,down=false]",
|
|
5781
|
+
"100:5": "minecraft:red_mushroom_block[north=false,east=false,south=false,west=false,up=true,down=false]",
|
|
5782
|
+
"100:6": "minecraft:red_mushroom_block[north=false,east=true,south=false,west=false,up=true,down=false]",
|
|
5783
|
+
"100:7": "minecraft:red_mushroom_block[north=false,east=false,south=true,west=true,up=true,down=false]",
|
|
5784
|
+
"100:8": "minecraft:red_mushroom_block[north=false,east=false,south=true,west=false,up=true,down=false]",
|
|
5785
|
+
"100:9": "minecraft:red_mushroom_block[north=false,east=true,south=true,west=false,up=true,down=false]",
|
|
5786
|
+
"100:10": "minecraft:mushroom_stem[north=true,east=true,south=true,west=true,up=false,down=false]",
|
|
5787
|
+
"100:14": "minecraft:red_mushroom_block[north=true,east=true,south=true,west=true,up=true,down=true]",
|
|
5788
|
+
"100:15": "minecraft:mushroom_stem[north=true,east=true,south=true,west=true,up=true,down=true]",
|
|
5789
|
+
"101:0": "minecraft:iron_bars[east=false,south=false,north=false,west=false]",
|
|
5790
|
+
"102:0": "minecraft:glass_pane[east=false,south=false,north=false,west=false]",
|
|
5791
|
+
"103:0": "minecraft:melon",
|
|
5792
|
+
"104:0": "minecraft:pumpkin_stem[age=0]",
|
|
5793
|
+
"104:1": "minecraft:pumpkin_stem[age=1]",
|
|
5794
|
+
"104:2": "minecraft:pumpkin_stem[age=2]",
|
|
5795
|
+
"104:3": "minecraft:pumpkin_stem[age=3]",
|
|
5796
|
+
"104:4": "minecraft:pumpkin_stem[age=4]",
|
|
5797
|
+
"104:5": "minecraft:pumpkin_stem[age=5]",
|
|
5798
|
+
"104:6": "minecraft:pumpkin_stem[age=6]",
|
|
5799
|
+
"104:7": "minecraft:pumpkin_stem[age=7]",
|
|
5800
|
+
"105:0": "minecraft:melon_stem[age=0]",
|
|
5801
|
+
"105:1": "minecraft:melon_stem[age=1]",
|
|
5802
|
+
"105:2": "minecraft:melon_stem[age=2]",
|
|
5803
|
+
"105:3": "minecraft:melon_stem[age=3]",
|
|
5804
|
+
"105:4": "minecraft:melon_stem[age=4]",
|
|
5805
|
+
"105:5": "minecraft:melon_stem[age=5]",
|
|
5806
|
+
"105:6": "minecraft:melon_stem[age=6]",
|
|
5807
|
+
"105:7": "minecraft:melon_stem[age=7]",
|
|
5808
|
+
"106:0": "minecraft:vine[east=false,south=false,north=false,west=false,up=false]",
|
|
5809
|
+
"106:1": "minecraft:vine[east=false,south=true,north=false,west=false,up=false]",
|
|
5810
|
+
"106:2": "minecraft:vine[east=false,south=false,north=false,west=true,up=false]",
|
|
5811
|
+
"106:3": "minecraft:vine[east=false,south=true,north=false,west=true,up=false]",
|
|
5812
|
+
"106:4": "minecraft:vine[east=false,south=false,north=true,west=false,up=false]",
|
|
5813
|
+
"106:5": "minecraft:vine[east=false,south=true,north=true,west=false,up=false]",
|
|
5814
|
+
"106:6": "minecraft:vine[east=false,south=false,north=true,west=true,up=false]",
|
|
5815
|
+
"106:7": "minecraft:vine[east=false,south=true,north=true,west=true,up=false]",
|
|
5816
|
+
"106:8": "minecraft:vine[east=true,south=false,north=false,west=false,up=false]",
|
|
5817
|
+
"106:9": "minecraft:vine[east=true,south=true,north=false,west=false,up=false]",
|
|
5818
|
+
"106:10": "minecraft:vine[east=true,south=false,north=false,west=true,up=false]",
|
|
5819
|
+
"106:11": "minecraft:vine[east=true,south=true,north=false,west=true,up=false]",
|
|
5820
|
+
"106:12": "minecraft:vine[east=true,south=false,north=true,west=false,up=false]",
|
|
5821
|
+
"106:13": "minecraft:vine[east=true,south=true,north=true,west=false,up=false]",
|
|
5822
|
+
"106:14": "minecraft:vine[east=true,south=false,north=true,west=true,up=false]",
|
|
5823
|
+
"106:15": "minecraft:vine[east=true,south=true,north=true,west=true,up=false]",
|
|
5824
|
+
"107:0": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=south,open=false]",
|
|
5825
|
+
"107:1": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=west,open=false]",
|
|
5826
|
+
"107:2": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=north,open=false]",
|
|
5827
|
+
"107:3": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=east,open=false]",
|
|
5828
|
+
"107:4": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=south,open=true]",
|
|
5829
|
+
"107:5": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=west,open=true]",
|
|
5830
|
+
"107:6": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=north,open=true]",
|
|
5831
|
+
"107:7": "minecraft:oak_fence_gate[in_wall=false,powered=false,facing=east,open=true]",
|
|
5832
|
+
"107:8": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=south,open=false]",
|
|
5833
|
+
"107:9": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=west,open=false]",
|
|
5834
|
+
"107:10": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=north,open=false]",
|
|
5835
|
+
"107:11": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=east,open=false]",
|
|
5836
|
+
"107:12": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=south,open=true]",
|
|
5837
|
+
"107:13": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=west,open=true]",
|
|
5838
|
+
"107:14": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=north,open=true]",
|
|
5839
|
+
"107:15": "minecraft:oak_fence_gate[in_wall=false,powered=true,facing=east,open=true]",
|
|
5840
|
+
"108:0": "minecraft:brick_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5841
|
+
"108:1": "minecraft:brick_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5842
|
+
"108:2": "minecraft:brick_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5843
|
+
"108:3": "minecraft:brick_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5844
|
+
"108:4": "minecraft:brick_stairs[half=top,shape=outer_right,facing=east]",
|
|
5845
|
+
"108:5": "minecraft:brick_stairs[half=top,shape=outer_right,facing=west]",
|
|
5846
|
+
"108:6": "minecraft:brick_stairs[half=top,shape=outer_right,facing=south]",
|
|
5847
|
+
"108:7": "minecraft:brick_stairs[half=top,shape=outer_right,facing=north]",
|
|
5848
|
+
"109:0": "minecraft:stone_brick_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5849
|
+
"109:1": "minecraft:stone_brick_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5850
|
+
"109:2": "minecraft:stone_brick_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5851
|
+
"109:3": "minecraft:stone_brick_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5852
|
+
"109:4": "minecraft:stone_brick_stairs[half=top,shape=outer_right,facing=east]",
|
|
5853
|
+
"109:5": "minecraft:stone_brick_stairs[half=top,shape=outer_right,facing=west]",
|
|
5854
|
+
"109:6": "minecraft:stone_brick_stairs[half=top,shape=outer_right,facing=south]",
|
|
5855
|
+
"109:7": "minecraft:stone_brick_stairs[half=top,shape=outer_right,facing=north]",
|
|
5856
|
+
"110:0": "minecraft:mycelium[snowy=false]",
|
|
5857
|
+
"111:0": "minecraft:lily_pad",
|
|
5858
|
+
"112:0": "minecraft:nether_bricks",
|
|
5859
|
+
"113:0": "minecraft:nether_brick_fence[east=false,south=false,north=false,west=false]",
|
|
5860
|
+
"114:0": "minecraft:nether_brick_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5861
|
+
"114:1": "minecraft:nether_brick_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5862
|
+
"114:2": "minecraft:nether_brick_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5863
|
+
"114:3": "minecraft:nether_brick_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5864
|
+
"114:4": "minecraft:nether_brick_stairs[half=top,shape=outer_right,facing=east]",
|
|
5865
|
+
"114:5": "minecraft:nether_brick_stairs[half=top,shape=outer_right,facing=west]",
|
|
5866
|
+
"114:6": "minecraft:nether_brick_stairs[half=top,shape=outer_right,facing=south]",
|
|
5867
|
+
"114:7": "minecraft:nether_brick_stairs[half=top,shape=outer_right,facing=north]",
|
|
5868
|
+
"115:0": "minecraft:nether_wart[age=0]",
|
|
5869
|
+
"115:1": "minecraft:nether_wart[age=1]",
|
|
5870
|
+
"115:2": "minecraft:nether_wart[age=2]",
|
|
5871
|
+
"115:3": "minecraft:nether_wart[age=3]",
|
|
5872
|
+
"116:0": "minecraft:enchanting_table",
|
|
5873
|
+
"117:0": "minecraft:brewing_stand[has_bottle_0=false,has_bottle_1=false,has_bottle_2=false]",
|
|
5874
|
+
"117:1": "minecraft:brewing_stand[has_bottle_0=true,has_bottle_1=false,has_bottle_2=false]",
|
|
5875
|
+
"117:2": "minecraft:brewing_stand[has_bottle_0=false,has_bottle_1=true,has_bottle_2=false]",
|
|
5876
|
+
"117:3": "minecraft:brewing_stand[has_bottle_0=true,has_bottle_1=true,has_bottle_2=false]",
|
|
5877
|
+
"117:4": "minecraft:brewing_stand[has_bottle_0=false,has_bottle_1=false,has_bottle_2=true]",
|
|
5878
|
+
"117:5": "minecraft:brewing_stand[has_bottle_0=true,has_bottle_1=false,has_bottle_2=true]",
|
|
5879
|
+
"117:6": "minecraft:brewing_stand[has_bottle_0=false,has_bottle_1=true,has_bottle_2=true]",
|
|
5880
|
+
"117:7": "minecraft:brewing_stand[has_bottle_0=true,has_bottle_1=true,has_bottle_2=true]",
|
|
5881
|
+
"118:0": "minecraft:cauldron",
|
|
5882
|
+
"118:1": "minecraft:water_cauldron[level=1]",
|
|
5883
|
+
"118:2": "minecraft:water_cauldron[level=2]",
|
|
5884
|
+
"118:3": "minecraft:water_cauldron[level=3]",
|
|
5885
|
+
"119:0": "minecraft:end_portal",
|
|
5886
|
+
"120:0": "minecraft:end_portal_frame[eye=false,facing=south]",
|
|
5887
|
+
"120:1": "minecraft:end_portal_frame[eye=false,facing=west]",
|
|
5888
|
+
"120:2": "minecraft:end_portal_frame[eye=false,facing=north]",
|
|
5889
|
+
"120:3": "minecraft:end_portal_frame[eye=false,facing=east]",
|
|
5890
|
+
"120:4": "minecraft:end_portal_frame[eye=true,facing=south]",
|
|
5891
|
+
"120:5": "minecraft:end_portal_frame[eye=true,facing=west]",
|
|
5892
|
+
"120:6": "minecraft:end_portal_frame[eye=true,facing=north]",
|
|
5893
|
+
"120:7": "minecraft:end_portal_frame[eye=true,facing=east]",
|
|
5894
|
+
"121:0": "minecraft:end_stone",
|
|
5895
|
+
"122:0": "minecraft:dragon_egg",
|
|
5896
|
+
"123:0": "minecraft:redstone_lamp[lit=false]",
|
|
5897
|
+
"124:0": "minecraft:redstone_lamp[lit=true]",
|
|
5898
|
+
"125:0": "minecraft:oak_slab[type=double]",
|
|
5899
|
+
"125:1": "minecraft:spruce_slab[type=double]",
|
|
5900
|
+
"125:2": "minecraft:birch_slab[type=double]",
|
|
5901
|
+
"125:3": "minecraft:jungle_slab[type=double]",
|
|
5902
|
+
"125:4": "minecraft:acacia_slab[type=double]",
|
|
5903
|
+
"125:5": "minecraft:dark_oak_slab[type=double]",
|
|
5904
|
+
"126:0": "minecraft:oak_slab[type=bottom]",
|
|
5905
|
+
"126:1": "minecraft:spruce_slab[type=bottom]",
|
|
5906
|
+
"126:2": "minecraft:birch_slab[type=bottom]",
|
|
5907
|
+
"126:3": "minecraft:jungle_slab[type=bottom]",
|
|
5908
|
+
"126:4": "minecraft:acacia_slab[type=bottom]",
|
|
5909
|
+
"126:5": "minecraft:dark_oak_slab[type=bottom]",
|
|
5910
|
+
"126:8": "minecraft:oak_slab[type=top]",
|
|
5911
|
+
"126:9": "minecraft:spruce_slab[type=top]",
|
|
5912
|
+
"126:10": "minecraft:birch_slab[type=top]",
|
|
5913
|
+
"126:11": "minecraft:jungle_slab[type=top]",
|
|
5914
|
+
"126:12": "minecraft:acacia_slab[type=top]",
|
|
5915
|
+
"126:13": "minecraft:dark_oak_slab[type=top]",
|
|
5916
|
+
"127:0": "minecraft:cocoa[facing=south,age=0]",
|
|
5917
|
+
"127:1": "minecraft:cocoa[facing=west,age=0]",
|
|
5918
|
+
"127:2": "minecraft:cocoa[facing=north,age=0]",
|
|
5919
|
+
"127:3": "minecraft:cocoa[facing=east,age=0]",
|
|
5920
|
+
"127:4": "minecraft:cocoa[facing=south,age=1]",
|
|
5921
|
+
"127:5": "minecraft:cocoa[facing=west,age=1]",
|
|
5922
|
+
"127:6": "minecraft:cocoa[facing=north,age=1]",
|
|
5923
|
+
"127:7": "minecraft:cocoa[facing=east,age=1]",
|
|
5924
|
+
"127:8": "minecraft:cocoa[facing=south,age=2]",
|
|
5925
|
+
"127:9": "minecraft:cocoa[facing=west,age=2]",
|
|
5926
|
+
"127:10": "minecraft:cocoa[facing=north,age=2]",
|
|
5927
|
+
"127:11": "minecraft:cocoa[facing=east,age=2]",
|
|
5928
|
+
"128:0": "minecraft:sandstone_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5929
|
+
"128:1": "minecraft:sandstone_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5930
|
+
"128:2": "minecraft:sandstone_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5931
|
+
"128:3": "minecraft:sandstone_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5932
|
+
"128:4": "minecraft:sandstone_stairs[half=top,shape=outer_right,facing=east]",
|
|
5933
|
+
"128:5": "minecraft:sandstone_stairs[half=top,shape=outer_right,facing=west]",
|
|
5934
|
+
"128:6": "minecraft:sandstone_stairs[half=top,shape=outer_right,facing=south]",
|
|
5935
|
+
"128:7": "minecraft:sandstone_stairs[half=top,shape=outer_right,facing=north]",
|
|
5936
|
+
"129:0": "minecraft:emerald_ore",
|
|
5937
|
+
"130:2": "minecraft:ender_chest[facing=north]",
|
|
5938
|
+
"130:3": "minecraft:ender_chest[facing=south]",
|
|
5939
|
+
"130:4": "minecraft:ender_chest[facing=west]",
|
|
5940
|
+
"130:5": "minecraft:ender_chest[facing=east]",
|
|
5941
|
+
"131:0": "minecraft:tripwire_hook[powered=false,attached=false,facing=south]",
|
|
5942
|
+
"131:1": "minecraft:tripwire_hook[powered=false,attached=false,facing=west]",
|
|
5943
|
+
"131:2": "minecraft:tripwire_hook[powered=false,attached=false,facing=north]",
|
|
5944
|
+
"131:3": "minecraft:tripwire_hook[powered=false,attached=false,facing=east]",
|
|
5945
|
+
"131:4": "minecraft:tripwire_hook[powered=false,attached=true,facing=south]",
|
|
5946
|
+
"131:5": "minecraft:tripwire_hook[powered=false,attached=true,facing=west]",
|
|
5947
|
+
"131:6": "minecraft:tripwire_hook[powered=false,attached=true,facing=north]",
|
|
5948
|
+
"131:7": "minecraft:tripwire_hook[powered=false,attached=true,facing=east]",
|
|
5949
|
+
"131:8": "minecraft:tripwire_hook[powered=true,attached=false,facing=south]",
|
|
5950
|
+
"131:9": "minecraft:tripwire_hook[powered=true,attached=false,facing=west]",
|
|
5951
|
+
"131:10": "minecraft:tripwire_hook[powered=true,attached=false,facing=north]",
|
|
5952
|
+
"131:11": "minecraft:tripwire_hook[powered=true,attached=false,facing=east]",
|
|
5953
|
+
"131:12": "minecraft:tripwire_hook[powered=true,attached=true,facing=south]",
|
|
5954
|
+
"131:13": "minecraft:tripwire_hook[powered=true,attached=true,facing=west]",
|
|
5955
|
+
"131:14": "minecraft:tripwire_hook[powered=true,attached=true,facing=north]",
|
|
5956
|
+
"131:15": "minecraft:tripwire_hook[powered=true,attached=true,facing=east]",
|
|
5957
|
+
"132:0": "minecraft:tripwire[disarmed=false,east=false,powered=false,south=false,north=false,west=false,attached=false]",
|
|
5958
|
+
"132:1": "minecraft:tripwire[disarmed=false,east=false,powered=true,south=false,north=false,west=false,attached=false]",
|
|
5959
|
+
"132:4": "minecraft:tripwire[disarmed=false,east=false,powered=false,south=false,north=false,west=false,attached=true]",
|
|
5960
|
+
"132:5": "minecraft:tripwire[disarmed=false,east=false,powered=true,south=false,north=false,west=false,attached=true]",
|
|
5961
|
+
"132:8": "minecraft:tripwire[disarmed=true,east=false,powered=false,south=false,north=false,west=false,attached=false]",
|
|
5962
|
+
"132:9": "minecraft:tripwire[disarmed=true,east=false,powered=true,south=false,north=false,west=false,attached=false]",
|
|
5963
|
+
"132:12": "minecraft:tripwire[disarmed=true,east=false,powered=false,south=false,north=false,west=false,attached=true]",
|
|
5964
|
+
"132:13": "minecraft:tripwire[disarmed=true,east=false,powered=true,south=false,north=false,west=false,attached=true]",
|
|
5965
|
+
"133:0": "minecraft:emerald_block",
|
|
5966
|
+
"134:0": "minecraft:spruce_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5967
|
+
"134:1": "minecraft:spruce_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5968
|
+
"134:2": "minecraft:spruce_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5969
|
+
"134:3": "minecraft:spruce_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5970
|
+
"134:4": "minecraft:spruce_stairs[half=top,shape=outer_right,facing=east]",
|
|
5971
|
+
"134:5": "minecraft:spruce_stairs[half=top,shape=outer_right,facing=west]",
|
|
5972
|
+
"134:6": "minecraft:spruce_stairs[half=top,shape=outer_right,facing=south]",
|
|
5973
|
+
"134:7": "minecraft:spruce_stairs[half=top,shape=outer_right,facing=north]",
|
|
5974
|
+
"135:0": "minecraft:birch_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5975
|
+
"135:1": "minecraft:birch_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5976
|
+
"135:2": "minecraft:birch_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5977
|
+
"135:3": "minecraft:birch_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5978
|
+
"135:4": "minecraft:birch_stairs[half=top,shape=outer_right,facing=east]",
|
|
5979
|
+
"135:5": "minecraft:birch_stairs[half=top,shape=outer_right,facing=west]",
|
|
5980
|
+
"135:6": "minecraft:birch_stairs[half=top,shape=outer_right,facing=south]",
|
|
5981
|
+
"135:7": "minecraft:birch_stairs[half=top,shape=outer_right,facing=north]",
|
|
5982
|
+
"136:0": "minecraft:jungle_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
5983
|
+
"136:1": "minecraft:jungle_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
5984
|
+
"136:2": "minecraft:jungle_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
5985
|
+
"136:3": "minecraft:jungle_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
5986
|
+
"136:4": "minecraft:jungle_stairs[half=top,shape=outer_right,facing=east]",
|
|
5987
|
+
"136:5": "minecraft:jungle_stairs[half=top,shape=outer_right,facing=west]",
|
|
5988
|
+
"136:6": "minecraft:jungle_stairs[half=top,shape=outer_right,facing=south]",
|
|
5989
|
+
"136:7": "minecraft:jungle_stairs[half=top,shape=outer_right,facing=north]",
|
|
5990
|
+
"137:0": "minecraft:command_block[conditional=false,facing=down]",
|
|
5991
|
+
"137:1": "minecraft:command_block[conditional=false,facing=up]",
|
|
5992
|
+
"137:2": "minecraft:command_block[conditional=false,facing=north]",
|
|
5993
|
+
"137:3": "minecraft:command_block[conditional=false,facing=south]",
|
|
5994
|
+
"137:4": "minecraft:command_block[conditional=false,facing=west]",
|
|
5995
|
+
"137:5": "minecraft:command_block[conditional=false,facing=east]",
|
|
5996
|
+
"137:8": "minecraft:command_block[conditional=true,facing=down]",
|
|
5997
|
+
"137:9": "minecraft:command_block[conditional=true,facing=up]",
|
|
5998
|
+
"137:10": "minecraft:command_block[conditional=true,facing=north]",
|
|
5999
|
+
"137:11": "minecraft:command_block[conditional=true,facing=south]",
|
|
6000
|
+
"137:12": "minecraft:command_block[conditional=true,facing=west]",
|
|
6001
|
+
"137:13": "minecraft:command_block[conditional=true,facing=east]",
|
|
6002
|
+
"138:0": "minecraft:beacon",
|
|
6003
|
+
"139:0": "minecraft:cobblestone_wall[east=false,south=false,north=false,west=false,up=false]",
|
|
6004
|
+
"139:1": "minecraft:mossy_cobblestone_wall[east=false,south=false,north=false,west=false,up=false]",
|
|
6005
|
+
"140:0": "minecraft:flower_pot",
|
|
6006
|
+
"140:1": "minecraft:potted_poppy",
|
|
6007
|
+
"140:2": "minecraft:potted_dandelion",
|
|
6008
|
+
"140:3": "minecraft:potted_oak_sapling",
|
|
6009
|
+
"140:4": "minecraft:potted_spruce_sapling",
|
|
6010
|
+
"140:5": "minecraft:potted_birch_sapling",
|
|
6011
|
+
"140:6": "minecraft:potted_jungle_sapling",
|
|
6012
|
+
"140:7": "minecraft:potted_red_mushroom",
|
|
6013
|
+
"140:8": "minecraft:potted_brown_mushroom",
|
|
6014
|
+
"140:9": "minecraft:potted_cactus",
|
|
6015
|
+
"140:10": "minecraft:potted_dead_bush",
|
|
6016
|
+
"140:11": "minecraft:potted_fern",
|
|
6017
|
+
"140:12": "minecraft:potted_acacia_sapling",
|
|
6018
|
+
"140:13": "minecraft:potted_dark_oak_sapling",
|
|
6019
|
+
"140:14": "minecraft:potted_blue_orchid",
|
|
6020
|
+
"140:15": "minecraft:potted_allium",
|
|
6021
|
+
"141:0": "minecraft:carrots[age=0]",
|
|
6022
|
+
"141:1": "minecraft:carrots[age=1]",
|
|
6023
|
+
"141:2": "minecraft:carrots[age=2]",
|
|
6024
|
+
"141:3": "minecraft:carrots[age=3]",
|
|
6025
|
+
"141:4": "minecraft:carrots[age=4]",
|
|
6026
|
+
"141:5": "minecraft:carrots[age=5]",
|
|
6027
|
+
"141:6": "minecraft:carrots[age=6]",
|
|
6028
|
+
"141:7": "minecraft:carrots[age=7]",
|
|
6029
|
+
"142:0": "minecraft:potatoes[age=0]",
|
|
6030
|
+
"142:1": "minecraft:potatoes[age=1]",
|
|
6031
|
+
"142:2": "minecraft:potatoes[age=2]",
|
|
6032
|
+
"142:3": "minecraft:potatoes[age=3]",
|
|
6033
|
+
"142:4": "minecraft:potatoes[age=4]",
|
|
6034
|
+
"142:5": "minecraft:potatoes[age=5]",
|
|
6035
|
+
"142:6": "minecraft:potatoes[age=6]",
|
|
6036
|
+
"142:7": "minecraft:potatoes[age=7]",
|
|
6037
|
+
"143:0": "minecraft:oak_button[powered=false,facing=east,face=ceiling]",
|
|
6038
|
+
"143:1": "minecraft:oak_button[powered=false,facing=east,face=wall]",
|
|
6039
|
+
"143:2": "minecraft:oak_button[powered=false,facing=west,face=wall]",
|
|
6040
|
+
"143:3": "minecraft:oak_button[powered=false,facing=south,face=wall]",
|
|
6041
|
+
"143:4": "minecraft:oak_button[powered=false,facing=north,face=wall]",
|
|
6042
|
+
"143:5": "minecraft:oak_button[powered=false,facing=east,face=floor]",
|
|
6043
|
+
"143:8": "minecraft:oak_button[powered=true,facing=south,face=ceiling]",
|
|
6044
|
+
"143:9": "minecraft:oak_button[powered=true,facing=east,face=wall]",
|
|
6045
|
+
"143:10": "minecraft:oak_button[powered=true,facing=west,face=wall]",
|
|
6046
|
+
"143:11": "minecraft:oak_button[powered=true,facing=south,face=wall]",
|
|
6047
|
+
"143:12": "minecraft:oak_button[powered=true,facing=north,face=wall]",
|
|
6048
|
+
"143:13": "minecraft:oak_button[powered=true,facing=south,face=floor]",
|
|
6049
|
+
"144:0": "minecraft:skeleton_skull[rotation=0]",
|
|
6050
|
+
"144:1": "minecraft:skeleton_skull[rotation=4]",
|
|
6051
|
+
"144:2": "minecraft:skeleton_wall_skull[facing=north]",
|
|
6052
|
+
"144:3": "minecraft:skeleton_wall_skull[facing=south]",
|
|
6053
|
+
"144:4": "minecraft:skeleton_wall_skull[facing=west]",
|
|
6054
|
+
"144:5": "minecraft:skeleton_wall_skull[facing=east]",
|
|
6055
|
+
"144:8": "minecraft:skeleton_skull[rotation=8]",
|
|
6056
|
+
"144:9": "minecraft:skeleton_skull[rotation=12]",
|
|
6057
|
+
"144:10": "minecraft:skeleton_wall_skull[facing=north]",
|
|
6058
|
+
"144:11": "minecraft:skeleton_wall_skull[facing=south]",
|
|
6059
|
+
"144:12": "minecraft:skeleton_wall_skull[facing=west]",
|
|
6060
|
+
"144:13": "minecraft:skeleton_wall_skull[facing=east]",
|
|
6061
|
+
"145:0": "minecraft:anvil[facing=south]",
|
|
6062
|
+
"145:1": "minecraft:anvil[facing=west]",
|
|
6063
|
+
"145:2": "minecraft:anvil[facing=north]",
|
|
6064
|
+
"145:3": "minecraft:anvil[facing=east]",
|
|
6065
|
+
"145:4": "minecraft:chipped_anvil[facing=south]",
|
|
6066
|
+
"145:5": "minecraft:chipped_anvil[facing=west]",
|
|
6067
|
+
"145:6": "minecraft:chipped_anvil[facing=north]",
|
|
6068
|
+
"145:7": "minecraft:chipped_anvil[facing=east]",
|
|
6069
|
+
"145:8": "minecraft:damaged_anvil[facing=south]",
|
|
6070
|
+
"145:9": "minecraft:damaged_anvil[facing=west]",
|
|
6071
|
+
"145:10": "minecraft:damaged_anvil[facing=north]",
|
|
6072
|
+
"145:11": "minecraft:damaged_anvil[facing=east]",
|
|
6073
|
+
"146:2": "minecraft:trapped_chest[facing=north,type=single]",
|
|
6074
|
+
"146:3": "minecraft:trapped_chest[facing=south,type=single]",
|
|
6075
|
+
"146:4": "minecraft:trapped_chest[facing=west,type=single]",
|
|
6076
|
+
"146:5": "minecraft:trapped_chest[facing=east,type=single]",
|
|
6077
|
+
"147:0": "minecraft:light_weighted_pressure_plate[power=0]",
|
|
6078
|
+
"147:1": "minecraft:light_weighted_pressure_plate[power=1]",
|
|
6079
|
+
"147:2": "minecraft:light_weighted_pressure_plate[power=2]",
|
|
6080
|
+
"147:3": "minecraft:light_weighted_pressure_plate[power=3]",
|
|
6081
|
+
"147:4": "minecraft:light_weighted_pressure_plate[power=4]",
|
|
6082
|
+
"147:5": "minecraft:light_weighted_pressure_plate[power=5]",
|
|
6083
|
+
"147:6": "minecraft:light_weighted_pressure_plate[power=6]",
|
|
6084
|
+
"147:7": "minecraft:light_weighted_pressure_plate[power=7]",
|
|
6085
|
+
"147:8": "minecraft:light_weighted_pressure_plate[power=8]",
|
|
6086
|
+
"147:9": "minecraft:light_weighted_pressure_plate[power=9]",
|
|
6087
|
+
"147:10": "minecraft:light_weighted_pressure_plate[power=10]",
|
|
6088
|
+
"147:11": "minecraft:light_weighted_pressure_plate[power=11]",
|
|
6089
|
+
"147:12": "minecraft:light_weighted_pressure_plate[power=12]",
|
|
6090
|
+
"147:13": "minecraft:light_weighted_pressure_plate[power=13]",
|
|
6091
|
+
"147:14": "minecraft:light_weighted_pressure_plate[power=14]",
|
|
6092
|
+
"147:15": "minecraft:light_weighted_pressure_plate[power=15]",
|
|
6093
|
+
"148:0": "minecraft:heavy_weighted_pressure_plate[power=0]",
|
|
6094
|
+
"148:1": "minecraft:heavy_weighted_pressure_plate[power=1]",
|
|
6095
|
+
"148:2": "minecraft:heavy_weighted_pressure_plate[power=2]",
|
|
6096
|
+
"148:3": "minecraft:heavy_weighted_pressure_plate[power=3]",
|
|
6097
|
+
"148:4": "minecraft:heavy_weighted_pressure_plate[power=4]",
|
|
6098
|
+
"148:5": "minecraft:heavy_weighted_pressure_plate[power=5]",
|
|
6099
|
+
"148:6": "minecraft:heavy_weighted_pressure_plate[power=6]",
|
|
6100
|
+
"148:7": "minecraft:heavy_weighted_pressure_plate[power=7]",
|
|
6101
|
+
"148:8": "minecraft:heavy_weighted_pressure_plate[power=8]",
|
|
6102
|
+
"148:9": "minecraft:heavy_weighted_pressure_plate[power=9]",
|
|
6103
|
+
"148:10": "minecraft:heavy_weighted_pressure_plate[power=10]",
|
|
6104
|
+
"148:11": "minecraft:heavy_weighted_pressure_plate[power=11]",
|
|
6105
|
+
"148:12": "minecraft:heavy_weighted_pressure_plate[power=12]",
|
|
6106
|
+
"148:13": "minecraft:heavy_weighted_pressure_plate[power=13]",
|
|
6107
|
+
"148:14": "minecraft:heavy_weighted_pressure_plate[power=14]",
|
|
6108
|
+
"148:15": "minecraft:heavy_weighted_pressure_plate[power=15]",
|
|
6109
|
+
"149:0": "minecraft:comparator[mode=compare,powered=false,facing=south]",
|
|
6110
|
+
"149:1": "minecraft:comparator[mode=compare,powered=false,facing=west]",
|
|
6111
|
+
"149:2": "minecraft:comparator[mode=compare,powered=false,facing=north]",
|
|
6112
|
+
"149:3": "minecraft:comparator[mode=compare,powered=false,facing=east]",
|
|
6113
|
+
"149:4": "minecraft:comparator[mode=subtract,powered=false,facing=south]",
|
|
6114
|
+
"149:5": "minecraft:comparator[mode=subtract,powered=false,facing=west]",
|
|
6115
|
+
"149:6": "minecraft:comparator[mode=subtract,powered=false,facing=north]",
|
|
6116
|
+
"149:7": "minecraft:comparator[mode=subtract,powered=false,facing=east]",
|
|
6117
|
+
"149:8": "minecraft:comparator[mode=compare,powered=false,facing=south]",
|
|
6118
|
+
"149:9": "minecraft:comparator[mode=compare,powered=false,facing=west]",
|
|
6119
|
+
"149:10": "minecraft:comparator[mode=compare,powered=false,facing=north]",
|
|
6120
|
+
"149:11": "minecraft:comparator[mode=compare,powered=false,facing=east]",
|
|
6121
|
+
"149:12": "minecraft:comparator[mode=subtract,powered=false,facing=south]",
|
|
6122
|
+
"149:13": "minecraft:comparator[mode=subtract,powered=false,facing=west]",
|
|
6123
|
+
"149:14": "minecraft:comparator[mode=subtract,powered=false,facing=north]",
|
|
6124
|
+
"149:15": "minecraft:comparator[mode=subtract,powered=false,facing=east]",
|
|
6125
|
+
"150:0": "minecraft:comparator[mode=compare,powered=true,facing=south]",
|
|
6126
|
+
"150:1": "minecraft:comparator[mode=compare,powered=true,facing=west]",
|
|
6127
|
+
"150:2": "minecraft:comparator[mode=compare,powered=true,facing=north]",
|
|
6128
|
+
"150:3": "minecraft:comparator[mode=compare,powered=true,facing=east]",
|
|
6129
|
+
"150:4": "minecraft:comparator[mode=subtract,powered=true,facing=south]",
|
|
6130
|
+
"150:5": "minecraft:comparator[mode=subtract,powered=true,facing=west]",
|
|
6131
|
+
"150:6": "minecraft:comparator[mode=subtract,powered=true,facing=north]",
|
|
6132
|
+
"150:7": "minecraft:comparator[mode=subtract,powered=true,facing=east]",
|
|
6133
|
+
"150:8": "minecraft:comparator[mode=compare,powered=true,facing=south]",
|
|
6134
|
+
"150:9": "minecraft:comparator[mode=compare,powered=true,facing=west]",
|
|
6135
|
+
"150:10": "minecraft:comparator[mode=compare,powered=true,facing=north]",
|
|
6136
|
+
"150:11": "minecraft:comparator[mode=compare,powered=true,facing=east]",
|
|
6137
|
+
"150:12": "minecraft:comparator[mode=subtract,powered=true,facing=south]",
|
|
6138
|
+
"150:13": "minecraft:comparator[mode=subtract,powered=true,facing=west]",
|
|
6139
|
+
"150:14": "minecraft:comparator[mode=subtract,powered=true,facing=north]",
|
|
6140
|
+
"150:15": "minecraft:comparator[mode=subtract,powered=true,facing=east]",
|
|
6141
|
+
"151:0": "minecraft:daylight_detector[inverted=false,power=0]",
|
|
6142
|
+
"151:1": "minecraft:daylight_detector[inverted=false,power=1]",
|
|
6143
|
+
"151:2": "minecraft:daylight_detector[inverted=false,power=2]",
|
|
6144
|
+
"151:3": "minecraft:daylight_detector[inverted=false,power=3]",
|
|
6145
|
+
"151:4": "minecraft:daylight_detector[inverted=false,power=4]",
|
|
6146
|
+
"151:5": "minecraft:daylight_detector[inverted=false,power=5]",
|
|
6147
|
+
"151:6": "minecraft:daylight_detector[inverted=false,power=6]",
|
|
6148
|
+
"151:7": "minecraft:daylight_detector[inverted=false,power=7]",
|
|
6149
|
+
"151:8": "minecraft:daylight_detector[inverted=false,power=8]",
|
|
6150
|
+
"151:9": "minecraft:daylight_detector[inverted=false,power=9]",
|
|
6151
|
+
"151:10": "minecraft:daylight_detector[inverted=false,power=10]",
|
|
6152
|
+
"151:11": "minecraft:daylight_detector[inverted=false,power=11]",
|
|
6153
|
+
"151:12": "minecraft:daylight_detector[inverted=false,power=12]",
|
|
6154
|
+
"151:13": "minecraft:daylight_detector[inverted=false,power=13]",
|
|
6155
|
+
"151:14": "minecraft:daylight_detector[inverted=false,power=14]",
|
|
6156
|
+
"151:15": "minecraft:daylight_detector[inverted=false,power=15]",
|
|
6157
|
+
"152:0": "minecraft:redstone_block",
|
|
6158
|
+
"153:0": "minecraft:nether_quartz_ore",
|
|
6159
|
+
"154:0": "minecraft:hopper[facing=down,enabled=true]",
|
|
6160
|
+
"154:2": "minecraft:hopper[facing=north,enabled=true]",
|
|
6161
|
+
"154:3": "minecraft:hopper[facing=south,enabled=true]",
|
|
6162
|
+
"154:4": "minecraft:hopper[facing=west,enabled=true]",
|
|
6163
|
+
"154:5": "minecraft:hopper[facing=east,enabled=true]",
|
|
6164
|
+
"154:8": "minecraft:hopper[facing=down,enabled=false]",
|
|
6165
|
+
"154:10": "minecraft:hopper[facing=north,enabled=false]",
|
|
6166
|
+
"154:11": "minecraft:hopper[facing=south,enabled=false]",
|
|
6167
|
+
"154:12": "minecraft:hopper[facing=west,enabled=false]",
|
|
6168
|
+
"154:13": "minecraft:hopper[facing=east,enabled=false]",
|
|
6169
|
+
"155:0": "minecraft:quartz_block",
|
|
6170
|
+
"155:1": "minecraft:chiseled_quartz_block",
|
|
6171
|
+
"155:2": "minecraft:quartz_pillar[axis=y]",
|
|
6172
|
+
"155:3": "minecraft:quartz_pillar[axis=x]",
|
|
6173
|
+
"155:4": "minecraft:quartz_pillar[axis=z]",
|
|
6174
|
+
"155:6": "minecraft:quartz_pillar[axis=x]",
|
|
6175
|
+
"155:10": "minecraft:quartz_pillar[axis=z]",
|
|
6176
|
+
"156:0": "minecraft:quartz_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
6177
|
+
"156:1": "minecraft:quartz_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
6178
|
+
"156:2": "minecraft:quartz_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
6179
|
+
"156:3": "minecraft:quartz_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
6180
|
+
"156:4": "minecraft:quartz_stairs[half=top,shape=outer_right,facing=east]",
|
|
6181
|
+
"156:5": "minecraft:quartz_stairs[half=top,shape=outer_right,facing=west]",
|
|
6182
|
+
"156:6": "minecraft:quartz_stairs[half=top,shape=outer_right,facing=south]",
|
|
6183
|
+
"156:7": "minecraft:quartz_stairs[half=top,shape=outer_right,facing=north]",
|
|
6184
|
+
"157:0": "minecraft:activator_rail[shape=north_south,powered=false]",
|
|
6185
|
+
"157:1": "minecraft:activator_rail[shape=east_west,powered=false]",
|
|
6186
|
+
"157:2": "minecraft:activator_rail[shape=ascending_east,powered=false]",
|
|
6187
|
+
"157:3": "minecraft:activator_rail[shape=ascending_west,powered=false]",
|
|
6188
|
+
"157:4": "minecraft:activator_rail[shape=ascending_north,powered=false]",
|
|
6189
|
+
"157:5": "minecraft:activator_rail[shape=ascending_south,powered=false]",
|
|
6190
|
+
"157:8": "minecraft:activator_rail[shape=north_south,powered=true]",
|
|
6191
|
+
"157:9": "minecraft:activator_rail[shape=east_west,powered=true]",
|
|
6192
|
+
"157:10": "minecraft:activator_rail[shape=ascending_east,powered=true]",
|
|
6193
|
+
"157:11": "minecraft:activator_rail[shape=ascending_west,powered=true]",
|
|
6194
|
+
"157:12": "minecraft:activator_rail[shape=ascending_north,powered=true]",
|
|
6195
|
+
"157:13": "minecraft:activator_rail[shape=ascending_south,powered=true]",
|
|
6196
|
+
"158:0": "minecraft:dropper[triggered=false,facing=down]",
|
|
6197
|
+
"158:1": "minecraft:dropper[triggered=false,facing=up]",
|
|
6198
|
+
"158:2": "minecraft:dropper[triggered=false,facing=north]",
|
|
6199
|
+
"158:3": "minecraft:dropper[triggered=false,facing=south]",
|
|
6200
|
+
"158:4": "minecraft:dropper[triggered=false,facing=west]",
|
|
6201
|
+
"158:5": "minecraft:dropper[triggered=false,facing=east]",
|
|
6202
|
+
"158:8": "minecraft:dropper[triggered=true,facing=down]",
|
|
6203
|
+
"158:9": "minecraft:dropper[triggered=true,facing=up]",
|
|
6204
|
+
"158:10": "minecraft:dropper[triggered=true,facing=north]",
|
|
6205
|
+
"158:11": "minecraft:dropper[triggered=true,facing=south]",
|
|
6206
|
+
"158:12": "minecraft:dropper[triggered=true,facing=west]",
|
|
6207
|
+
"158:13": "minecraft:dropper[triggered=true,facing=east]",
|
|
6208
|
+
"159:0": "minecraft:white_terracotta",
|
|
6209
|
+
"159:1": "minecraft:orange_terracotta",
|
|
6210
|
+
"159:2": "minecraft:magenta_terracotta",
|
|
6211
|
+
"159:3": "minecraft:light_blue_terracotta",
|
|
6212
|
+
"159:4": "minecraft:yellow_terracotta",
|
|
6213
|
+
"159:5": "minecraft:lime_terracotta",
|
|
6214
|
+
"159:6": "minecraft:pink_terracotta",
|
|
6215
|
+
"159:7": "minecraft:gray_terracotta",
|
|
6216
|
+
"159:8": "minecraft:light_gray_terracotta",
|
|
6217
|
+
"159:9": "minecraft:cyan_terracotta",
|
|
6218
|
+
"159:10": "minecraft:purple_terracotta",
|
|
6219
|
+
"159:11": "minecraft:blue_terracotta",
|
|
6220
|
+
"159:12": "minecraft:brown_terracotta",
|
|
6221
|
+
"159:13": "minecraft:green_terracotta",
|
|
6222
|
+
"159:14": "minecraft:red_terracotta",
|
|
6223
|
+
"159:15": "minecraft:black_terracotta",
|
|
6224
|
+
"160:0": "minecraft:white_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6225
|
+
"160:1": "minecraft:orange_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6226
|
+
"160:2": "minecraft:magenta_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6227
|
+
"160:3": "minecraft:light_blue_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6228
|
+
"160:4": "minecraft:yellow_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6229
|
+
"160:5": "minecraft:lime_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6230
|
+
"160:6": "minecraft:pink_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6231
|
+
"160:7": "minecraft:gray_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6232
|
+
"160:8": "minecraft:light_gray_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6233
|
+
"160:9": "minecraft:cyan_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6234
|
+
"160:10": "minecraft:purple_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6235
|
+
"160:11": "minecraft:blue_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6236
|
+
"160:12": "minecraft:brown_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6237
|
+
"160:13": "minecraft:green_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6238
|
+
"160:14": "minecraft:red_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6239
|
+
"160:15": "minecraft:black_stained_glass_pane[east=false,south=false,north=false,west=false]",
|
|
6240
|
+
"161:0": "minecraft:acacia_leaves[persistent=false,distance=1]",
|
|
6241
|
+
"161:1": "minecraft:dark_oak_leaves[persistent=false,distance=1]",
|
|
6242
|
+
"161:4": "minecraft:acacia_leaves[persistent=true,distance=1]",
|
|
6243
|
+
"161:5": "minecraft:dark_oak_leaves[persistent=true,distance=1]",
|
|
6244
|
+
"161:8": "minecraft:acacia_leaves[persistent=false,distance=1]",
|
|
6245
|
+
"161:9": "minecraft:dark_oak_leaves[persistent=false,distance=1]",
|
|
6246
|
+
"161:12": "minecraft:acacia_leaves[persistent=true,distance=1]",
|
|
6247
|
+
"161:13": "minecraft:dark_oak_leaves[persistent=true,distance=1]",
|
|
6248
|
+
"162:0": "minecraft:acacia_log[axis=y]",
|
|
6249
|
+
"162:1": "minecraft:dark_oak_log[axis=y]",
|
|
6250
|
+
"162:4": "minecraft:acacia_log[axis=x]",
|
|
6251
|
+
"162:5": "minecraft:dark_oak_log[axis=x]",
|
|
6252
|
+
"162:8": "minecraft:acacia_log[axis=z]",
|
|
6253
|
+
"162:9": "minecraft:dark_oak_log[axis=z]",
|
|
6254
|
+
"162:12": "minecraft:acacia_wood",
|
|
6255
|
+
"162:13": "minecraft:dark_oak_wood",
|
|
6256
|
+
"163:0": "minecraft:acacia_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
6257
|
+
"163:1": "minecraft:acacia_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
6258
|
+
"163:2": "minecraft:acacia_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
6259
|
+
"163:3": "minecraft:acacia_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
6260
|
+
"163:4": "minecraft:acacia_stairs[half=top,shape=outer_right,facing=east]",
|
|
6261
|
+
"163:5": "minecraft:acacia_stairs[half=top,shape=outer_right,facing=west]",
|
|
6262
|
+
"163:6": "minecraft:acacia_stairs[half=top,shape=outer_right,facing=south]",
|
|
6263
|
+
"163:7": "minecraft:acacia_stairs[half=top,shape=outer_right,facing=north]",
|
|
6264
|
+
"164:0": "minecraft:dark_oak_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
6265
|
+
"164:1": "minecraft:dark_oak_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
6266
|
+
"164:2": "minecraft:dark_oak_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
6267
|
+
"164:3": "minecraft:dark_oak_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
6268
|
+
"164:4": "minecraft:dark_oak_stairs[half=top,shape=outer_right,facing=east]",
|
|
6269
|
+
"164:5": "minecraft:dark_oak_stairs[half=top,shape=outer_right,facing=west]",
|
|
6270
|
+
"164:6": "minecraft:dark_oak_stairs[half=top,shape=outer_right,facing=south]",
|
|
6271
|
+
"164:7": "minecraft:dark_oak_stairs[half=top,shape=outer_right,facing=north]",
|
|
6272
|
+
"165:0": "minecraft:slime_block",
|
|
6273
|
+
"166:0": "minecraft:barrier",
|
|
6274
|
+
"167:0": "minecraft:iron_trapdoor[half=bottom,facing=north,open=false]",
|
|
6275
|
+
"167:1": "minecraft:iron_trapdoor[half=bottom,facing=south,open=false]",
|
|
6276
|
+
"167:2": "minecraft:iron_trapdoor[half=bottom,facing=west,open=false]",
|
|
6277
|
+
"167:3": "minecraft:iron_trapdoor[half=bottom,facing=east,open=false]",
|
|
6278
|
+
"167:4": "minecraft:iron_trapdoor[half=bottom,facing=north,open=true]",
|
|
6279
|
+
"167:5": "minecraft:iron_trapdoor[half=bottom,facing=south,open=true]",
|
|
6280
|
+
"167:6": "minecraft:iron_trapdoor[half=bottom,facing=west,open=true]",
|
|
6281
|
+
"167:7": "minecraft:iron_trapdoor[half=bottom,facing=east,open=true]",
|
|
6282
|
+
"167:8": "minecraft:iron_trapdoor[half=top,facing=north,open=false]",
|
|
6283
|
+
"167:9": "minecraft:iron_trapdoor[half=top,facing=south,open=false]",
|
|
6284
|
+
"167:10": "minecraft:iron_trapdoor[half=top,facing=west,open=false]",
|
|
6285
|
+
"167:11": "minecraft:iron_trapdoor[half=top,facing=east,open=false]",
|
|
6286
|
+
"167:12": "minecraft:iron_trapdoor[half=top,facing=north,open=true]",
|
|
6287
|
+
"167:13": "minecraft:iron_trapdoor[half=top,facing=south,open=true]",
|
|
6288
|
+
"167:14": "minecraft:iron_trapdoor[half=top,facing=west,open=true]",
|
|
6289
|
+
"167:15": "minecraft:iron_trapdoor[half=top,facing=east,open=true]",
|
|
6290
|
+
"168:0": "minecraft:prismarine",
|
|
6291
|
+
"168:1": "minecraft:prismarine_bricks",
|
|
6292
|
+
"168:2": "minecraft:dark_prismarine",
|
|
6293
|
+
"169:0": "minecraft:sea_lantern",
|
|
6294
|
+
"170:0": "minecraft:hay_block[axis=y]",
|
|
6295
|
+
"170:4": "minecraft:hay_block[axis=x]",
|
|
6296
|
+
"170:8": "minecraft:hay_block[axis=z]",
|
|
6297
|
+
"171:0": "minecraft:white_carpet",
|
|
6298
|
+
"171:1": "minecraft:orange_carpet",
|
|
6299
|
+
"171:2": "minecraft:magenta_carpet",
|
|
6300
|
+
"171:3": "minecraft:light_blue_carpet",
|
|
6301
|
+
"171:4": "minecraft:yellow_carpet",
|
|
6302
|
+
"171:5": "minecraft:lime_carpet",
|
|
6303
|
+
"171:6": "minecraft:pink_carpet",
|
|
6304
|
+
"171:7": "minecraft:gray_carpet",
|
|
6305
|
+
"171:8": "minecraft:light_gray_carpet",
|
|
6306
|
+
"171:9": "minecraft:cyan_carpet",
|
|
6307
|
+
"171:10": "minecraft:purple_carpet",
|
|
6308
|
+
"171:11": "minecraft:blue_carpet",
|
|
6309
|
+
"171:12": "minecraft:brown_carpet",
|
|
6310
|
+
"171:13": "minecraft:green_carpet",
|
|
6311
|
+
"171:14": "minecraft:red_carpet",
|
|
6312
|
+
"171:15": "minecraft:black_carpet",
|
|
6313
|
+
"172:0": "minecraft:terracotta",
|
|
6314
|
+
"173:0": "minecraft:coal_block",
|
|
6315
|
+
"174:0": "minecraft:packed_ice",
|
|
6316
|
+
"175:0": "minecraft:sunflower[half=lower]",
|
|
6317
|
+
"175:1": "minecraft:lilac[half=lower]",
|
|
6318
|
+
"175:2": "minecraft:tall_grass[half=lower]",
|
|
6319
|
+
"175:3": "minecraft:large_fern[half=lower]",
|
|
6320
|
+
"175:4": "minecraft:rose_bush[half=lower]",
|
|
6321
|
+
"175:5": "minecraft:peony[half=lower]",
|
|
6322
|
+
"175:8": "minecraft:sunflower[half=upper]",
|
|
6323
|
+
"175:9": "minecraft:lilac[half=upper]",
|
|
6324
|
+
"175:10": "minecraft:tall_grass[half=upper]",
|
|
6325
|
+
"175:11": "minecraft:large_fern[half=upper]",
|
|
6326
|
+
"175:12": "minecraft:rose_bush[half=upper]",
|
|
6327
|
+
"175:13": "minecraft:peony[half=upper]",
|
|
6328
|
+
"176:0": "minecraft:white_banner[rotation=0]",
|
|
6329
|
+
"176:1": "minecraft:white_banner[rotation=1]",
|
|
6330
|
+
"176:2": "minecraft:white_banner[rotation=2]",
|
|
6331
|
+
"176:3": "minecraft:white_banner[rotation=3]",
|
|
6332
|
+
"176:4": "minecraft:white_banner[rotation=4]",
|
|
6333
|
+
"176:5": "minecraft:white_banner[rotation=5]",
|
|
6334
|
+
"176:6": "minecraft:white_banner[rotation=6]",
|
|
6335
|
+
"176:7": "minecraft:white_banner[rotation=7]",
|
|
6336
|
+
"176:8": "minecraft:white_banner[rotation=8]",
|
|
6337
|
+
"176:9": "minecraft:white_banner[rotation=9]",
|
|
6338
|
+
"176:10": "minecraft:white_banner[rotation=10]",
|
|
6339
|
+
"176:11": "minecraft:white_banner[rotation=11]",
|
|
6340
|
+
"176:12": "minecraft:white_banner[rotation=12]",
|
|
6341
|
+
"176:13": "minecraft:white_banner[rotation=13]",
|
|
6342
|
+
"176:14": "minecraft:white_banner[rotation=14]",
|
|
6343
|
+
"176:15": "minecraft:white_banner[rotation=15]",
|
|
6344
|
+
"177:2": "minecraft:white_wall_banner[facing=north]",
|
|
6345
|
+
"177:3": "minecraft:white_wall_banner[facing=south]",
|
|
6346
|
+
"177:4": "minecraft:white_wall_banner[facing=west]",
|
|
6347
|
+
"177:5": "minecraft:white_wall_banner[facing=east]",
|
|
6348
|
+
"178:0": "minecraft:daylight_detector[inverted=true,power=0]",
|
|
6349
|
+
"178:1": "minecraft:daylight_detector[inverted=true,power=1]",
|
|
6350
|
+
"178:2": "minecraft:daylight_detector[inverted=true,power=2]",
|
|
6351
|
+
"178:3": "minecraft:daylight_detector[inverted=true,power=3]",
|
|
6352
|
+
"178:4": "minecraft:daylight_detector[inverted=true,power=4]",
|
|
6353
|
+
"178:5": "minecraft:daylight_detector[inverted=true,power=5]",
|
|
6354
|
+
"178:6": "minecraft:daylight_detector[inverted=true,power=6]",
|
|
6355
|
+
"178:7": "minecraft:daylight_detector[inverted=true,power=7]",
|
|
6356
|
+
"178:8": "minecraft:daylight_detector[inverted=true,power=8]",
|
|
6357
|
+
"178:9": "minecraft:daylight_detector[inverted=true,power=9]",
|
|
6358
|
+
"178:10": "minecraft:daylight_detector[inverted=true,power=10]",
|
|
6359
|
+
"178:11": "minecraft:daylight_detector[inverted=true,power=11]",
|
|
6360
|
+
"178:12": "minecraft:daylight_detector[inverted=true,power=12]",
|
|
6361
|
+
"178:13": "minecraft:daylight_detector[inverted=true,power=13]",
|
|
6362
|
+
"178:14": "minecraft:daylight_detector[inverted=true,power=14]",
|
|
6363
|
+
"178:15": "minecraft:daylight_detector[inverted=true,power=15]",
|
|
6364
|
+
"179:0": "minecraft:red_sandstone",
|
|
6365
|
+
"179:1": "minecraft:chiseled_red_sandstone",
|
|
6366
|
+
"179:2": "minecraft:cut_red_sandstone",
|
|
6367
|
+
"180:0": "minecraft:red_sandstone_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
6368
|
+
"180:1": "minecraft:red_sandstone_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
6369
|
+
"180:2": "minecraft:red_sandstone_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
6370
|
+
"180:3": "minecraft:red_sandstone_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
6371
|
+
"180:4": "minecraft:red_sandstone_stairs[half=top,shape=outer_right,facing=east]",
|
|
6372
|
+
"180:5": "minecraft:red_sandstone_stairs[half=top,shape=outer_right,facing=west]",
|
|
6373
|
+
"180:6": "minecraft:red_sandstone_stairs[half=top,shape=outer_right,facing=south]",
|
|
6374
|
+
"180:7": "minecraft:red_sandstone_stairs[half=top,shape=outer_right,facing=north]",
|
|
6375
|
+
"181:0": "minecraft:red_sandstone_slab[type=double]",
|
|
6376
|
+
"181:8": "minecraft:smooth_red_sandstone",
|
|
6377
|
+
"182:0": "minecraft:red_sandstone_slab[type=bottom]",
|
|
6378
|
+
"182:8": "minecraft:red_sandstone_slab[type=top]",
|
|
6379
|
+
"183:0": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=south,open=false]",
|
|
6380
|
+
"183:1": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=west,open=false]",
|
|
6381
|
+
"183:2": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=north,open=false]",
|
|
6382
|
+
"183:3": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=east,open=false]",
|
|
6383
|
+
"183:4": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=south,open=true]",
|
|
6384
|
+
"183:5": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=west,open=true]",
|
|
6385
|
+
"183:6": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=north,open=true]",
|
|
6386
|
+
"183:7": "minecraft:spruce_fence_gate[in_wall=false,powered=false,facing=east,open=true]",
|
|
6387
|
+
"183:8": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=south,open=false]",
|
|
6388
|
+
"183:9": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=west,open=false]",
|
|
6389
|
+
"183:10": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=north,open=false]",
|
|
6390
|
+
"183:11": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=east,open=false]",
|
|
6391
|
+
"183:12": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=south,open=true]",
|
|
6392
|
+
"183:13": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=west,open=true]",
|
|
6393
|
+
"183:14": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=north,open=true]",
|
|
6394
|
+
"183:15": "minecraft:spruce_fence_gate[in_wall=false,powered=true,facing=east,open=true]",
|
|
6395
|
+
"184:0": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=south,open=false]",
|
|
6396
|
+
"184:1": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=west,open=false]",
|
|
6397
|
+
"184:2": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=north,open=false]",
|
|
6398
|
+
"184:3": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=east,open=false]",
|
|
6399
|
+
"184:4": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=south,open=true]",
|
|
6400
|
+
"184:5": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=west,open=true]",
|
|
6401
|
+
"184:6": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=north,open=true]",
|
|
6402
|
+
"184:7": "minecraft:birch_fence_gate[in_wall=false,powered=false,facing=east,open=true]",
|
|
6403
|
+
"184:8": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=south,open=false]",
|
|
6404
|
+
"184:9": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=west,open=false]",
|
|
6405
|
+
"184:10": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=north,open=false]",
|
|
6406
|
+
"184:11": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=east,open=false]",
|
|
6407
|
+
"184:12": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=south,open=true]",
|
|
6408
|
+
"184:13": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=west,open=true]",
|
|
6409
|
+
"184:14": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=north,open=true]",
|
|
6410
|
+
"184:15": "minecraft:birch_fence_gate[in_wall=false,powered=true,facing=east,open=true]",
|
|
6411
|
+
"185:0": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=south,open=false]",
|
|
6412
|
+
"185:1": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=west,open=false]",
|
|
6413
|
+
"185:2": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=north,open=false]",
|
|
6414
|
+
"185:3": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=east,open=false]",
|
|
6415
|
+
"185:4": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=south,open=true]",
|
|
6416
|
+
"185:5": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=west,open=true]",
|
|
6417
|
+
"185:6": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=north,open=true]",
|
|
6418
|
+
"185:7": "minecraft:jungle_fence_gate[in_wall=false,powered=false,facing=east,open=true]",
|
|
6419
|
+
"185:8": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=south,open=false]",
|
|
6420
|
+
"185:9": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=west,open=false]",
|
|
6421
|
+
"185:10": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=north,open=false]",
|
|
6422
|
+
"185:11": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=east,open=false]",
|
|
6423
|
+
"185:12": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=south,open=true]",
|
|
6424
|
+
"185:13": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=west,open=true]",
|
|
6425
|
+
"185:14": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=north,open=true]",
|
|
6426
|
+
"185:15": "minecraft:jungle_fence_gate[in_wall=false,powered=true,facing=east,open=true]",
|
|
6427
|
+
"186:0": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=south,open=false]",
|
|
6428
|
+
"186:1": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=west,open=false]",
|
|
6429
|
+
"186:2": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=north,open=false]",
|
|
6430
|
+
"186:3": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=east,open=false]",
|
|
6431
|
+
"186:4": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=south,open=true]",
|
|
6432
|
+
"186:5": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=west,open=true]",
|
|
6433
|
+
"186:6": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=north,open=true]",
|
|
6434
|
+
"186:7": "minecraft:dark_oak_fence_gate[in_wall=false,powered=false,facing=east,open=true]",
|
|
6435
|
+
"186:8": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=south,open=false]",
|
|
6436
|
+
"186:9": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=west,open=false]",
|
|
6437
|
+
"186:10": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=north,open=false]",
|
|
6438
|
+
"186:11": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=east,open=false]",
|
|
6439
|
+
"186:12": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=south,open=true]",
|
|
6440
|
+
"186:13": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=west,open=true]",
|
|
6441
|
+
"186:14": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=north,open=true]",
|
|
6442
|
+
"186:15": "minecraft:dark_oak_fence_gate[in_wall=false,powered=true,facing=east,open=true]",
|
|
6443
|
+
"187:0": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=south,open=false]",
|
|
6444
|
+
"187:1": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=west,open=false]",
|
|
6445
|
+
"187:2": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=north,open=false]",
|
|
6446
|
+
"187:3": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=east,open=false]",
|
|
6447
|
+
"187:4": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=south,open=true]",
|
|
6448
|
+
"187:5": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=west,open=true]",
|
|
6449
|
+
"187:6": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=north,open=true]",
|
|
6450
|
+
"187:7": "minecraft:acacia_fence_gate[in_wall=false,powered=false,facing=east,open=true]",
|
|
6451
|
+
"187:8": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=south,open=false]",
|
|
6452
|
+
"187:9": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=west,open=false]",
|
|
6453
|
+
"187:10": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=north,open=false]",
|
|
6454
|
+
"187:11": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=east,open=false]",
|
|
6455
|
+
"187:12": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=south,open=true]",
|
|
6456
|
+
"187:13": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=west,open=true]",
|
|
6457
|
+
"187:14": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=north,open=true]",
|
|
6458
|
+
"187:15": "minecraft:acacia_fence_gate[in_wall=false,powered=true,facing=east,open=true]",
|
|
6459
|
+
"188:0": "minecraft:spruce_fence[east=false,south=false,north=false,west=false]",
|
|
6460
|
+
"189:0": "minecraft:birch_fence[east=false,south=false,north=false,west=false]",
|
|
6461
|
+
"190:0": "minecraft:jungle_fence[east=false,south=false,north=false,west=false]",
|
|
6462
|
+
"191:0": "minecraft:dark_oak_fence[east=false,south=false,north=false,west=false]",
|
|
6463
|
+
"192:0": "minecraft:acacia_fence[east=false,south=false,north=false,west=false]",
|
|
6464
|
+
"193:0": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=east,open=false]",
|
|
6465
|
+
"193:1": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=south,open=false]",
|
|
6466
|
+
"193:2": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=west,open=false]",
|
|
6467
|
+
"193:3": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=north,open=false]",
|
|
6468
|
+
"193:4": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=east,open=true]",
|
|
6469
|
+
"193:5": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=south,open=true]",
|
|
6470
|
+
"193:6": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=west,open=true]",
|
|
6471
|
+
"193:7": "minecraft:spruce_door[hinge=right,half=lower,powered=false,facing=north,open=true]",
|
|
6472
|
+
"193:8": "minecraft:spruce_door[hinge=left,half=upper,powered=false,facing=east,open=false]",
|
|
6473
|
+
"193:9": "minecraft:spruce_door[hinge=right,half=upper,powered=false,facing=east,open=false]",
|
|
6474
|
+
"193:10": "minecraft:spruce_door[hinge=left,half=upper,powered=true,facing=east,open=false]",
|
|
6475
|
+
"193:11": "minecraft:spruce_door[hinge=right,half=upper,powered=true,facing=east,open=false]",
|
|
6476
|
+
"194:0": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=east,open=false]",
|
|
6477
|
+
"194:1": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=south,open=false]",
|
|
6478
|
+
"194:2": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=west,open=false]",
|
|
6479
|
+
"194:3": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=north,open=false]",
|
|
6480
|
+
"194:4": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=east,open=true]",
|
|
6481
|
+
"194:5": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=south,open=true]",
|
|
6482
|
+
"194:6": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=west,open=true]",
|
|
6483
|
+
"194:7": "minecraft:birch_door[hinge=right,half=lower,powered=false,facing=north,open=true]",
|
|
6484
|
+
"194:8": "minecraft:birch_door[hinge=left,half=upper,powered=false,facing=east,open=false]",
|
|
6485
|
+
"194:9": "minecraft:birch_door[hinge=right,half=upper,powered=false,facing=east,open=false]",
|
|
6486
|
+
"194:10": "minecraft:birch_door[hinge=left,half=upper,powered=true,facing=east,open=false]",
|
|
6487
|
+
"194:11": "minecraft:birch_door[hinge=right,half=upper,powered=true,facing=east,open=false]",
|
|
6488
|
+
"195:0": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=east,open=false]",
|
|
6489
|
+
"195:1": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=south,open=false]",
|
|
6490
|
+
"195:2": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=west,open=false]",
|
|
6491
|
+
"195:3": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=north,open=false]",
|
|
6492
|
+
"195:4": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=east,open=true]",
|
|
6493
|
+
"195:5": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=south,open=true]",
|
|
6494
|
+
"195:6": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=west,open=true]",
|
|
6495
|
+
"195:7": "minecraft:jungle_door[hinge=right,half=lower,powered=false,facing=north,open=true]",
|
|
6496
|
+
"195:8": "minecraft:jungle_door[hinge=left,half=upper,powered=false,facing=east,open=false]",
|
|
6497
|
+
"195:9": "minecraft:jungle_door[hinge=right,half=upper,powered=false,facing=east,open=false]",
|
|
6498
|
+
"195:10": "minecraft:jungle_door[hinge=left,half=upper,powered=true,facing=east,open=false]",
|
|
6499
|
+
"195:11": "minecraft:jungle_door[hinge=right,half=upper,powered=true,facing=east,open=false]",
|
|
6500
|
+
"196:0": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=east,open=false]",
|
|
6501
|
+
"196:1": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=south,open=false]",
|
|
6502
|
+
"196:2": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=west,open=false]",
|
|
6503
|
+
"196:3": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=north,open=false]",
|
|
6504
|
+
"196:4": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=east,open=true]",
|
|
6505
|
+
"196:5": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=south,open=true]",
|
|
6506
|
+
"196:6": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=west,open=true]",
|
|
6507
|
+
"196:7": "minecraft:acacia_door[hinge=right,half=lower,powered=false,facing=north,open=true]",
|
|
6508
|
+
"196:8": "minecraft:acacia_door[hinge=left,half=upper,powered=false,facing=east,open=false]",
|
|
6509
|
+
"196:9": "minecraft:acacia_door[hinge=right,half=upper,powered=false,facing=east,open=false]",
|
|
6510
|
+
"196:10": "minecraft:acacia_door[hinge=left,half=upper,powered=true,facing=east,open=false]",
|
|
6511
|
+
"196:11": "minecraft:acacia_door[hinge=right,half=upper,powered=true,facing=east,open=false]",
|
|
6512
|
+
"197:0": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=east,open=false]",
|
|
6513
|
+
"197:1": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=south,open=false]",
|
|
6514
|
+
"197:2": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=west,open=false]",
|
|
6515
|
+
"197:3": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=north,open=false]",
|
|
6516
|
+
"197:4": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=east,open=true]",
|
|
6517
|
+
"197:5": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=south,open=true]",
|
|
6518
|
+
"197:6": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=west,open=true]",
|
|
6519
|
+
"197:7": "minecraft:dark_oak_door[hinge=right,half=lower,powered=false,facing=north,open=true]",
|
|
6520
|
+
"197:8": "minecraft:dark_oak_door[hinge=left,half=upper,powered=false,facing=east,open=false]",
|
|
6521
|
+
"197:9": "minecraft:dark_oak_door[hinge=right,half=upper,powered=false,facing=east,open=false]",
|
|
6522
|
+
"197:10": "minecraft:dark_oak_door[hinge=left,half=upper,powered=true,facing=east,open=false]",
|
|
6523
|
+
"197:11": "minecraft:dark_oak_door[hinge=right,half=upper,powered=true,facing=east,open=false]",
|
|
6524
|
+
"198:0": "minecraft:end_rod[facing=down]",
|
|
6525
|
+
"198:1": "minecraft:end_rod[facing=up]",
|
|
6526
|
+
"198:2": "minecraft:end_rod[facing=north]",
|
|
6527
|
+
"198:3": "minecraft:end_rod[facing=south]",
|
|
6528
|
+
"198:4": "minecraft:end_rod[facing=west]",
|
|
6529
|
+
"198:5": "minecraft:end_rod[facing=east]",
|
|
6530
|
+
"199:0": "minecraft:chorus_plant[east=false,south=false,north=false,west=false,up=false,down=false]",
|
|
6531
|
+
"200:0": "minecraft:chorus_flower[age=0]",
|
|
6532
|
+
"200:1": "minecraft:chorus_flower[age=1]",
|
|
6533
|
+
"200:2": "minecraft:chorus_flower[age=2]",
|
|
6534
|
+
"200:3": "minecraft:chorus_flower[age=3]",
|
|
6535
|
+
"200:4": "minecraft:chorus_flower[age=4]",
|
|
6536
|
+
"200:5": "minecraft:chorus_flower[age=5]",
|
|
6537
|
+
"201:0": "minecraft:purpur_block",
|
|
6538
|
+
"202:0": "minecraft:purpur_pillar[axis=y]",
|
|
6539
|
+
"202:4": "minecraft:purpur_pillar[axis=x]",
|
|
6540
|
+
"202:8": "minecraft:purpur_pillar[axis=z]",
|
|
6541
|
+
"203:0": "minecraft:purpur_stairs[half=bottom,shape=outer_right,facing=east]",
|
|
6542
|
+
"203:1": "minecraft:purpur_stairs[half=bottom,shape=outer_right,facing=west]",
|
|
6543
|
+
"203:2": "minecraft:purpur_stairs[half=bottom,shape=outer_right,facing=south]",
|
|
6544
|
+
"203:3": "minecraft:purpur_stairs[half=bottom,shape=outer_right,facing=north]",
|
|
6545
|
+
"203:4": "minecraft:purpur_stairs[half=top,shape=outer_right,facing=east]",
|
|
6546
|
+
"203:5": "minecraft:purpur_stairs[half=top,shape=outer_right,facing=west]",
|
|
6547
|
+
"203:6": "minecraft:purpur_stairs[half=top,shape=outer_right,facing=south]",
|
|
6548
|
+
"203:7": "minecraft:purpur_stairs[half=top,shape=outer_right,facing=north]",
|
|
6549
|
+
"204:0": "minecraft:purpur_slab[type=double]",
|
|
6550
|
+
"205:0": "minecraft:purpur_slab[type=bottom]",
|
|
6551
|
+
"205:8": "minecraft:purpur_slab[type=top]",
|
|
6552
|
+
"206:0": "minecraft:end_stone_bricks",
|
|
6553
|
+
"207:0": "minecraft:beetroots[age=0]",
|
|
6554
|
+
"207:1": "minecraft:beetroots[age=1]",
|
|
6555
|
+
"207:2": "minecraft:beetroots[age=2]",
|
|
6556
|
+
"207:3": "minecraft:beetroots[age=3]",
|
|
6557
|
+
"208:0": "minecraft:dirt_path",
|
|
6558
|
+
"209:0": "minecraft:end_gateway",
|
|
6559
|
+
"210:0": "minecraft:repeating_command_block[conditional=false,facing=down]",
|
|
6560
|
+
"210:1": "minecraft:repeating_command_block[conditional=false,facing=up]",
|
|
6561
|
+
"210:2": "minecraft:repeating_command_block[conditional=false,facing=north]",
|
|
6562
|
+
"210:3": "minecraft:repeating_command_block[conditional=false,facing=south]",
|
|
6563
|
+
"210:4": "minecraft:repeating_command_block[conditional=false,facing=west]",
|
|
6564
|
+
"210:5": "minecraft:repeating_command_block[conditional=false,facing=east]",
|
|
6565
|
+
"210:8": "minecraft:repeating_command_block[conditional=true,facing=down]",
|
|
6566
|
+
"210:9": "minecraft:repeating_command_block[conditional=true,facing=up]",
|
|
6567
|
+
"210:10": "minecraft:repeating_command_block[conditional=true,facing=north]",
|
|
6568
|
+
"210:11": "minecraft:repeating_command_block[conditional=true,facing=south]",
|
|
6569
|
+
"210:12": "minecraft:repeating_command_block[conditional=true,facing=west]",
|
|
6570
|
+
"210:13": "minecraft:repeating_command_block[conditional=true,facing=east]",
|
|
6571
|
+
"211:0": "minecraft:chain_command_block[conditional=false,facing=down]",
|
|
6572
|
+
"211:1": "minecraft:chain_command_block[conditional=false,facing=up]",
|
|
6573
|
+
"211:2": "minecraft:chain_command_block[conditional=false,facing=north]",
|
|
6574
|
+
"211:3": "minecraft:chain_command_block[conditional=false,facing=south]",
|
|
6575
|
+
"211:4": "minecraft:chain_command_block[conditional=false,facing=west]",
|
|
6576
|
+
"211:5": "minecraft:chain_command_block[conditional=false,facing=east]",
|
|
6577
|
+
"211:8": "minecraft:chain_command_block[conditional=true,facing=down]",
|
|
6578
|
+
"211:9": "minecraft:chain_command_block[conditional=true,facing=up]",
|
|
6579
|
+
"211:10": "minecraft:chain_command_block[conditional=true,facing=north]",
|
|
6580
|
+
"211:11": "minecraft:chain_command_block[conditional=true,facing=south]",
|
|
6581
|
+
"211:12": "minecraft:chain_command_block[conditional=true,facing=west]",
|
|
6582
|
+
"211:13": "minecraft:chain_command_block[conditional=true,facing=east]",
|
|
6583
|
+
"212:0": "minecraft:frosted_ice[age=0]",
|
|
6584
|
+
"212:1": "minecraft:frosted_ice[age=1]",
|
|
6585
|
+
"212:2": "minecraft:frosted_ice[age=2]",
|
|
6586
|
+
"212:3": "minecraft:frosted_ice[age=3]",
|
|
6587
|
+
"213:0": "minecraft:magma_block",
|
|
6588
|
+
"214:0": "minecraft:nether_wart_block",
|
|
6589
|
+
"215:0": "minecraft:red_nether_bricks",
|
|
6590
|
+
"216:0": "minecraft:bone_block[axis=y]",
|
|
6591
|
+
"216:4": "minecraft:bone_block[axis=x]",
|
|
6592
|
+
"216:8": "minecraft:bone_block[axis=z]",
|
|
6593
|
+
"217:0": "minecraft:structure_void",
|
|
6594
|
+
"218:0": "minecraft:observer[powered=false,facing=down]",
|
|
6595
|
+
"218:1": "minecraft:observer[powered=false,facing=up]",
|
|
6596
|
+
"218:2": "minecraft:observer[powered=false,facing=north]",
|
|
6597
|
+
"218:3": "minecraft:observer[powered=false,facing=south]",
|
|
6598
|
+
"218:4": "minecraft:observer[powered=false,facing=west]",
|
|
6599
|
+
"218:5": "minecraft:observer[powered=false,facing=east]",
|
|
6600
|
+
"218:8": "minecraft:observer[powered=true,facing=down]",
|
|
6601
|
+
"218:9": "minecraft:observer[powered=true,facing=up]",
|
|
6602
|
+
"218:10": "minecraft:observer[powered=true,facing=north]",
|
|
6603
|
+
"218:11": "minecraft:observer[powered=true,facing=south]",
|
|
6604
|
+
"218:12": "minecraft:observer[powered=true,facing=west]",
|
|
6605
|
+
"218:13": "minecraft:observer[powered=true,facing=east]",
|
|
6606
|
+
"219:0": "minecraft:white_shulker_box[facing=down]",
|
|
6607
|
+
"219:1": "minecraft:white_shulker_box[facing=up]",
|
|
6608
|
+
"219:2": "minecraft:white_shulker_box[facing=north]",
|
|
6609
|
+
"219:3": "minecraft:white_shulker_box[facing=south]",
|
|
6610
|
+
"219:4": "minecraft:white_shulker_box[facing=west]",
|
|
6611
|
+
"219:5": "minecraft:white_shulker_box[facing=east]",
|
|
6612
|
+
"220:0": "minecraft:orange_shulker_box[facing=down]",
|
|
6613
|
+
"220:1": "minecraft:orange_shulker_box[facing=up]",
|
|
6614
|
+
"220:2": "minecraft:orange_shulker_box[facing=north]",
|
|
6615
|
+
"220:3": "minecraft:orange_shulker_box[facing=south]",
|
|
6616
|
+
"220:4": "minecraft:orange_shulker_box[facing=west]",
|
|
6617
|
+
"220:5": "minecraft:orange_shulker_box[facing=east]",
|
|
6618
|
+
"221:0": "minecraft:magenta_shulker_box[facing=down]",
|
|
6619
|
+
"221:1": "minecraft:magenta_shulker_box[facing=up]",
|
|
6620
|
+
"221:2": "minecraft:magenta_shulker_box[facing=north]",
|
|
6621
|
+
"221:3": "minecraft:magenta_shulker_box[facing=south]",
|
|
6622
|
+
"221:4": "minecraft:magenta_shulker_box[facing=west]",
|
|
6623
|
+
"221:5": "minecraft:magenta_shulker_box[facing=east]",
|
|
6624
|
+
"222:0": "minecraft:light_blue_shulker_box[facing=down]",
|
|
6625
|
+
"222:1": "minecraft:light_blue_shulker_box[facing=up]",
|
|
6626
|
+
"222:2": "minecraft:light_blue_shulker_box[facing=north]",
|
|
6627
|
+
"222:3": "minecraft:light_blue_shulker_box[facing=south]",
|
|
6628
|
+
"222:4": "minecraft:light_blue_shulker_box[facing=west]",
|
|
6629
|
+
"222:5": "minecraft:light_blue_shulker_box[facing=east]",
|
|
6630
|
+
"223:0": "minecraft:yellow_shulker_box[facing=down]",
|
|
6631
|
+
"223:1": "minecraft:yellow_shulker_box[facing=up]",
|
|
6632
|
+
"223:2": "minecraft:yellow_shulker_box[facing=north]",
|
|
6633
|
+
"223:3": "minecraft:yellow_shulker_box[facing=south]",
|
|
6634
|
+
"223:4": "minecraft:yellow_shulker_box[facing=west]",
|
|
6635
|
+
"223:5": "minecraft:yellow_shulker_box[facing=east]",
|
|
6636
|
+
"224:0": "minecraft:lime_shulker_box[facing=down]",
|
|
6637
|
+
"224:1": "minecraft:lime_shulker_box[facing=up]",
|
|
6638
|
+
"224:2": "minecraft:lime_shulker_box[facing=north]",
|
|
6639
|
+
"224:3": "minecraft:lime_shulker_box[facing=south]",
|
|
6640
|
+
"224:4": "minecraft:lime_shulker_box[facing=west]",
|
|
6641
|
+
"224:5": "minecraft:lime_shulker_box[facing=east]",
|
|
6642
|
+
"225:0": "minecraft:pink_shulker_box[facing=down]",
|
|
6643
|
+
"225:1": "minecraft:pink_shulker_box[facing=up]",
|
|
6644
|
+
"225:2": "minecraft:pink_shulker_box[facing=north]",
|
|
6645
|
+
"225:3": "minecraft:pink_shulker_box[facing=south]",
|
|
6646
|
+
"225:4": "minecraft:pink_shulker_box[facing=west]",
|
|
6647
|
+
"225:5": "minecraft:pink_shulker_box[facing=east]",
|
|
6648
|
+
"226:0": "minecraft:gray_shulker_box[facing=down]",
|
|
6649
|
+
"226:1": "minecraft:gray_shulker_box[facing=up]",
|
|
6650
|
+
"226:2": "minecraft:gray_shulker_box[facing=north]",
|
|
6651
|
+
"226:3": "minecraft:gray_shulker_box[facing=south]",
|
|
6652
|
+
"226:4": "minecraft:gray_shulker_box[facing=west]",
|
|
6653
|
+
"226:5": "minecraft:gray_shulker_box[facing=east]",
|
|
6654
|
+
"227:0": "minecraft:light_gray_shulker_box[facing=down]",
|
|
6655
|
+
"227:1": "minecraft:light_gray_shulker_box[facing=up]",
|
|
6656
|
+
"227:2": "minecraft:light_gray_shulker_box[facing=north]",
|
|
6657
|
+
"227:3": "minecraft:light_gray_shulker_box[facing=south]",
|
|
6658
|
+
"227:4": "minecraft:light_gray_shulker_box[facing=west]",
|
|
6659
|
+
"227:5": "minecraft:light_gray_shulker_box[facing=east]",
|
|
6660
|
+
"228:0": "minecraft:cyan_shulker_box[facing=down]",
|
|
6661
|
+
"228:1": "minecraft:cyan_shulker_box[facing=up]",
|
|
6662
|
+
"228:2": "minecraft:cyan_shulker_box[facing=north]",
|
|
6663
|
+
"228:3": "minecraft:cyan_shulker_box[facing=south]",
|
|
6664
|
+
"228:4": "minecraft:cyan_shulker_box[facing=west]",
|
|
6665
|
+
"228:5": "minecraft:cyan_shulker_box[facing=east]",
|
|
6666
|
+
"229:0": "minecraft:purple_shulker_box[facing=down]",
|
|
6667
|
+
"229:1": "minecraft:purple_shulker_box[facing=up]",
|
|
6668
|
+
"229:2": "minecraft:purple_shulker_box[facing=north]",
|
|
6669
|
+
"229:3": "minecraft:purple_shulker_box[facing=south]",
|
|
6670
|
+
"229:4": "minecraft:purple_shulker_box[facing=west]",
|
|
6671
|
+
"229:5": "minecraft:purple_shulker_box[facing=east]",
|
|
6672
|
+
"230:0": "minecraft:blue_shulker_box[facing=down]",
|
|
6673
|
+
"230:1": "minecraft:blue_shulker_box[facing=up]",
|
|
6674
|
+
"230:2": "minecraft:blue_shulker_box[facing=north]",
|
|
6675
|
+
"230:3": "minecraft:blue_shulker_box[facing=south]",
|
|
6676
|
+
"230:4": "minecraft:blue_shulker_box[facing=west]",
|
|
6677
|
+
"230:5": "minecraft:blue_shulker_box[facing=east]",
|
|
6678
|
+
"231:0": "minecraft:brown_shulker_box[facing=down]",
|
|
6679
|
+
"231:1": "minecraft:brown_shulker_box[facing=up]",
|
|
6680
|
+
"231:2": "minecraft:brown_shulker_box[facing=north]",
|
|
6681
|
+
"231:3": "minecraft:brown_shulker_box[facing=south]",
|
|
6682
|
+
"231:4": "minecraft:brown_shulker_box[facing=west]",
|
|
6683
|
+
"231:5": "minecraft:brown_shulker_box[facing=east]",
|
|
6684
|
+
"232:0": "minecraft:green_shulker_box[facing=down]",
|
|
6685
|
+
"232:1": "minecraft:green_shulker_box[facing=up]",
|
|
6686
|
+
"232:2": "minecraft:green_shulker_box[facing=north]",
|
|
6687
|
+
"232:3": "minecraft:green_shulker_box[facing=south]",
|
|
6688
|
+
"232:4": "minecraft:green_shulker_box[facing=west]",
|
|
6689
|
+
"232:5": "minecraft:green_shulker_box[facing=east]",
|
|
6690
|
+
"233:0": "minecraft:red_shulker_box[facing=down]",
|
|
6691
|
+
"233:1": "minecraft:red_shulker_box[facing=up]",
|
|
6692
|
+
"233:2": "minecraft:red_shulker_box[facing=north]",
|
|
6693
|
+
"233:3": "minecraft:red_shulker_box[facing=south]",
|
|
6694
|
+
"233:4": "minecraft:red_shulker_box[facing=west]",
|
|
6695
|
+
"233:5": "minecraft:red_shulker_box[facing=east]",
|
|
6696
|
+
"234:0": "minecraft:black_shulker_box[facing=down]",
|
|
6697
|
+
"234:1": "minecraft:black_shulker_box[facing=up]",
|
|
6698
|
+
"234:2": "minecraft:black_shulker_box[facing=north]",
|
|
6699
|
+
"234:3": "minecraft:black_shulker_box[facing=south]",
|
|
6700
|
+
"234:4": "minecraft:black_shulker_box[facing=west]",
|
|
6701
|
+
"234:5": "minecraft:black_shulker_box[facing=east]",
|
|
6702
|
+
"235:0": "minecraft:white_glazed_terracotta[facing=south]",
|
|
6703
|
+
"235:1": "minecraft:white_glazed_terracotta[facing=west]",
|
|
6704
|
+
"235:2": "minecraft:white_glazed_terracotta[facing=north]",
|
|
6705
|
+
"235:3": "minecraft:white_glazed_terracotta[facing=east]",
|
|
6706
|
+
"236:0": "minecraft:orange_glazed_terracotta[facing=south]",
|
|
6707
|
+
"236:1": "minecraft:orange_glazed_terracotta[facing=west]",
|
|
6708
|
+
"236:2": "minecraft:orange_glazed_terracotta[facing=north]",
|
|
6709
|
+
"236:3": "minecraft:orange_glazed_terracotta[facing=east]",
|
|
6710
|
+
"237:0": "minecraft:magenta_glazed_terracotta[facing=south]",
|
|
6711
|
+
"237:1": "minecraft:magenta_glazed_terracotta[facing=west]",
|
|
6712
|
+
"237:2": "minecraft:magenta_glazed_terracotta[facing=north]",
|
|
6713
|
+
"237:3": "minecraft:magenta_glazed_terracotta[facing=east]",
|
|
6714
|
+
"238:0": "minecraft:light_blue_glazed_terracotta[facing=south]",
|
|
6715
|
+
"238:1": "minecraft:light_blue_glazed_terracotta[facing=west]",
|
|
6716
|
+
"238:2": "minecraft:light_blue_glazed_terracotta[facing=north]",
|
|
6717
|
+
"238:3": "minecraft:light_blue_glazed_terracotta[facing=east]",
|
|
6718
|
+
"239:0": "minecraft:yellow_glazed_terracotta[facing=south]",
|
|
6719
|
+
"239:1": "minecraft:yellow_glazed_terracotta[facing=west]",
|
|
6720
|
+
"239:2": "minecraft:yellow_glazed_terracotta[facing=north]",
|
|
6721
|
+
"239:3": "minecraft:yellow_glazed_terracotta[facing=east]",
|
|
6722
|
+
"240:0": "minecraft:lime_glazed_terracotta[facing=south]",
|
|
6723
|
+
"240:1": "minecraft:lime_glazed_terracotta[facing=west]",
|
|
6724
|
+
"240:2": "minecraft:lime_glazed_terracotta[facing=north]",
|
|
6725
|
+
"240:3": "minecraft:lime_glazed_terracotta[facing=east]",
|
|
6726
|
+
"241:0": "minecraft:pink_glazed_terracotta[facing=south]",
|
|
6727
|
+
"241:1": "minecraft:pink_glazed_terracotta[facing=west]",
|
|
6728
|
+
"241:2": "minecraft:pink_glazed_terracotta[facing=north]",
|
|
6729
|
+
"241:3": "minecraft:pink_glazed_terracotta[facing=east]",
|
|
6730
|
+
"242:0": "minecraft:gray_glazed_terracotta[facing=south]",
|
|
6731
|
+
"242:1": "minecraft:gray_glazed_terracotta[facing=west]",
|
|
6732
|
+
"242:2": "minecraft:gray_glazed_terracotta[facing=north]",
|
|
6733
|
+
"242:3": "minecraft:gray_glazed_terracotta[facing=east]",
|
|
6734
|
+
"243:0": "minecraft:light_gray_glazed_terracotta[facing=south]",
|
|
6735
|
+
"243:1": "minecraft:light_gray_glazed_terracotta[facing=west]",
|
|
6736
|
+
"243:2": "minecraft:light_gray_glazed_terracotta[facing=north]",
|
|
6737
|
+
"243:3": "minecraft:light_gray_glazed_terracotta[facing=east]",
|
|
6738
|
+
"244:0": "minecraft:cyan_glazed_terracotta[facing=south]",
|
|
6739
|
+
"244:1": "minecraft:cyan_glazed_terracotta[facing=west]",
|
|
6740
|
+
"244:2": "minecraft:cyan_glazed_terracotta[facing=north]",
|
|
6741
|
+
"244:3": "minecraft:cyan_glazed_terracotta[facing=east]",
|
|
6742
|
+
"245:0": "minecraft:purple_glazed_terracotta[facing=south]",
|
|
6743
|
+
"245:1": "minecraft:purple_glazed_terracotta[facing=west]",
|
|
6744
|
+
"245:2": "minecraft:purple_glazed_terracotta[facing=north]",
|
|
6745
|
+
"245:3": "minecraft:purple_glazed_terracotta[facing=east]",
|
|
6746
|
+
"246:0": "minecraft:blue_glazed_terracotta[facing=south]",
|
|
6747
|
+
"246:1": "minecraft:blue_glazed_terracotta[facing=west]",
|
|
6748
|
+
"246:2": "minecraft:blue_glazed_terracotta[facing=north]",
|
|
6749
|
+
"246:3": "minecraft:blue_glazed_terracotta[facing=east]",
|
|
6750
|
+
"247:0": "minecraft:brown_glazed_terracotta[facing=south]",
|
|
6751
|
+
"247:1": "minecraft:brown_glazed_terracotta[facing=west]",
|
|
6752
|
+
"247:2": "minecraft:brown_glazed_terracotta[facing=north]",
|
|
6753
|
+
"247:3": "minecraft:brown_glazed_terracotta[facing=east]",
|
|
6754
|
+
"248:0": "minecraft:green_glazed_terracotta[facing=south]",
|
|
6755
|
+
"248:1": "minecraft:green_glazed_terracotta[facing=west]",
|
|
6756
|
+
"248:2": "minecraft:green_glazed_terracotta[facing=north]",
|
|
6757
|
+
"248:3": "minecraft:green_glazed_terracotta[facing=east]",
|
|
6758
|
+
"249:0": "minecraft:red_glazed_terracotta[facing=south]",
|
|
6759
|
+
"249:1": "minecraft:red_glazed_terracotta[facing=west]",
|
|
6760
|
+
"249:2": "minecraft:red_glazed_terracotta[facing=north]",
|
|
6761
|
+
"249:3": "minecraft:red_glazed_terracotta[facing=east]",
|
|
6762
|
+
"250:0": "minecraft:black_glazed_terracotta[facing=south]",
|
|
6763
|
+
"250:1": "minecraft:black_glazed_terracotta[facing=west]",
|
|
6764
|
+
"250:2": "minecraft:black_glazed_terracotta[facing=north]",
|
|
6765
|
+
"250:3": "minecraft:black_glazed_terracotta[facing=east]",
|
|
6766
|
+
"251:0": "minecraft:white_concrete",
|
|
6767
|
+
"251:1": "minecraft:orange_concrete",
|
|
6768
|
+
"251:2": "minecraft:magenta_concrete",
|
|
6769
|
+
"251:3": "minecraft:light_blue_concrete",
|
|
6770
|
+
"251:4": "minecraft:yellow_concrete",
|
|
6771
|
+
"251:5": "minecraft:lime_concrete",
|
|
6772
|
+
"251:6": "minecraft:pink_concrete",
|
|
6773
|
+
"251:7": "minecraft:gray_concrete",
|
|
6774
|
+
"251:8": "minecraft:light_gray_concrete",
|
|
6775
|
+
"251:9": "minecraft:cyan_concrete",
|
|
6776
|
+
"251:10": "minecraft:purple_concrete",
|
|
6777
|
+
"251:11": "minecraft:blue_concrete",
|
|
6778
|
+
"251:12": "minecraft:brown_concrete",
|
|
6779
|
+
"251:13": "minecraft:green_concrete",
|
|
6780
|
+
"251:14": "minecraft:red_concrete",
|
|
6781
|
+
"251:15": "minecraft:black_concrete",
|
|
6782
|
+
"252:0": "minecraft:white_concrete_powder",
|
|
6783
|
+
"252:1": "minecraft:orange_concrete_powder",
|
|
6784
|
+
"252:2": "minecraft:magenta_concrete_powder",
|
|
6785
|
+
"252:3": "minecraft:light_blue_concrete_powder",
|
|
6786
|
+
"252:4": "minecraft:yellow_concrete_powder",
|
|
6787
|
+
"252:5": "minecraft:lime_concrete_powder",
|
|
6788
|
+
"252:6": "minecraft:pink_concrete_powder",
|
|
6789
|
+
"252:7": "minecraft:gray_concrete_powder",
|
|
6790
|
+
"252:8": "minecraft:light_gray_concrete_powder",
|
|
6791
|
+
"252:9": "minecraft:cyan_concrete_powder",
|
|
6792
|
+
"252:10": "minecraft:purple_concrete_powder",
|
|
6793
|
+
"252:11": "minecraft:blue_concrete_powder",
|
|
6794
|
+
"252:12": "minecraft:brown_concrete_powder",
|
|
6795
|
+
"252:13": "minecraft:green_concrete_powder",
|
|
6796
|
+
"252:14": "minecraft:red_concrete_powder",
|
|
6797
|
+
"252:15": "minecraft:black_concrete_powder",
|
|
6798
|
+
"255:0": "minecraft:structure_block[mode=save]",
|
|
6799
|
+
"255:1": "minecraft:structure_block[mode=load]",
|
|
6800
|
+
"255:2": "minecraft:structure_block[mode=corner]",
|
|
6801
|
+
"255:3": "minecraft:structure_block[mode=data]"
|
|
6802
|
+
}
|
|
6803
|
+
};
|
|
6804
|
+
|
|
4989
6805
|
// src/model/multiblock/SchematicParser.ts
|
|
4990
6806
|
var SchematicParser = class {
|
|
4991
|
-
static async parse() {
|
|
4992
|
-
|
|
6807
|
+
static async parse(nbt) {
|
|
6808
|
+
const tags = nbt.value;
|
|
6809
|
+
if (tags.Materials?.type !== "string" || tags.Materials.value !== "Alpha") {
|
|
6810
|
+
throw new MineRenderError("Schematic Materials must be Alpha");
|
|
6811
|
+
}
|
|
6812
|
+
const size = ["Width", "Height", "Length"].map((name) => {
|
|
6813
|
+
const tag = tags[name];
|
|
6814
|
+
if (tag?.type !== "short" || !Number.isInteger(tag.value) || tag.value <= 0 || tag.value > 32767) {
|
|
6815
|
+
throw new MineRenderError(`Schematic ${name} must be a positive short`);
|
|
6816
|
+
}
|
|
6817
|
+
return tag.value;
|
|
6818
|
+
});
|
|
6819
|
+
const [width, height, length] = size;
|
|
6820
|
+
const volume = width * height * length;
|
|
6821
|
+
const ids = tags.Blocks;
|
|
6822
|
+
const data = tags.Data;
|
|
6823
|
+
if (ids?.type !== "byteArray" || data?.type !== "byteArray" || !Array.isArray(ids.value) || !Array.isArray(data.value) || ids.value.length !== volume || data.value.length !== volume) {
|
|
6824
|
+
throw new MineRenderError(`Schematic Blocks and Data must contain ${volume} bytes`);
|
|
6825
|
+
}
|
|
6826
|
+
const addBlocks = tags.AddBlocks;
|
|
6827
|
+
if (addBlocks && (addBlocks.type !== "byteArray" || !Array.isArray(addBlocks.value))) {
|
|
6828
|
+
throw new MineRenderError("Schematic AddBlocks must be a byte array");
|
|
6829
|
+
}
|
|
6830
|
+
const tileEntities = /* @__PURE__ */ new Map();
|
|
6831
|
+
for (const tile of compoundList(tags, "TileEntities")) {
|
|
6832
|
+
const position = ["x", "y", "z"].map((axis, i) => {
|
|
6833
|
+
const coordinate = tile[axis];
|
|
6834
|
+
if (coordinate?.type !== "int" || !Number.isInteger(coordinate.value) || coordinate.value < 0 || coordinate.value >= size[i]) {
|
|
6835
|
+
throw new MineRenderError("Schematic TileEntities position is outside its dimensions");
|
|
6836
|
+
}
|
|
6837
|
+
return coordinate.value;
|
|
6838
|
+
});
|
|
6839
|
+
const [x, y, z] = position;
|
|
6840
|
+
tileEntities.set((y * length + z) * width + x, { type: "compound", value: tile });
|
|
6841
|
+
}
|
|
6842
|
+
const blocks = [];
|
|
6843
|
+
const mapping = legacyBlocks_default.blocks;
|
|
6844
|
+
for (let index = 0; index < volume; index++) {
|
|
6845
|
+
const packed = addBlocks?.value[index >> 1] ?? 0;
|
|
6846
|
+
const high = packed >> (index & 1) * 4 & 15;
|
|
6847
|
+
const id = high << 8 | ids.value[index] & 255;
|
|
6848
|
+
const metadata = data.value[index] & 255;
|
|
6849
|
+
const mapped = mapping[`${id}:${metadata}`];
|
|
6850
|
+
if (!mapped) throw new MineRenderError(`Unsupported legacy block ${id}:${metadata} at schematic index ${index}`);
|
|
6851
|
+
const [type, state] = mapped.split("[");
|
|
6852
|
+
if (type === "minecraft:air") continue;
|
|
6853
|
+
const properties = {};
|
|
6854
|
+
if (state) {
|
|
6855
|
+
for (const property of state.slice(0, -1).split(",")) {
|
|
6856
|
+
const [key, value] = property.split("=");
|
|
6857
|
+
properties[key] = value;
|
|
6858
|
+
}
|
|
6859
|
+
}
|
|
6860
|
+
blocks.push({
|
|
6861
|
+
type,
|
|
6862
|
+
properties,
|
|
6863
|
+
position: [index % width, Math.floor(index / (width * length)), Math.floor(index / width) % length],
|
|
6864
|
+
nbt: tileEntities.get(index)
|
|
6865
|
+
});
|
|
6866
|
+
}
|
|
6867
|
+
const entities = compoundList(tags, "Entities").map((entity) => {
|
|
6868
|
+
const pos = entity.Pos;
|
|
6869
|
+
if (pos?.type !== "list" || pos.value.type !== "double" || pos.value.value.length !== 3 || !pos.value.value.every(Number.isFinite)) {
|
|
6870
|
+
throw new MineRenderError("Schematic entity Pos must contain three doubles");
|
|
6871
|
+
}
|
|
6872
|
+
return { position: [...pos.value.value], nbt: { type: "compound", value: entity } };
|
|
6873
|
+
});
|
|
6874
|
+
const dataVersion = tags.DataVersion;
|
|
6875
|
+
if (dataVersion && (dataVersion.type !== "int" || !Number.isInteger(dataVersion.value))) {
|
|
6876
|
+
throw new MineRenderError("Schematic DataVersion must be an int");
|
|
6877
|
+
}
|
|
6878
|
+
return { size, blocks, entities, dataVersion: dataVersion?.value };
|
|
4993
6879
|
}
|
|
4994
6880
|
};
|
|
6881
|
+
function compoundList(tags, name) {
|
|
6882
|
+
const tag = tags[name];
|
|
6883
|
+
if (!tag) return [];
|
|
6884
|
+
if (tag.type === "list" && Array.isArray(tag.value.value)) {
|
|
6885
|
+
if (tag.value.value.length === 0) return [];
|
|
6886
|
+
if (tag.value.type === "compound") return tag.value.value;
|
|
6887
|
+
}
|
|
6888
|
+
throw new MineRenderError(`Schematic ${name} must be a compound list`);
|
|
6889
|
+
}
|
|
4995
6890
|
|
|
4996
6891
|
// src/model/multiblock/StructureParser.ts
|
|
4997
6892
|
var StructureParser = class {
|
|
@@ -5001,13 +6896,16 @@ var StructureParser = class {
|
|
|
5001
6896
|
if ("palette" in nbt) {
|
|
5002
6897
|
palette = nbt.palette;
|
|
5003
6898
|
} else if ("palettes" in nbt) {
|
|
5004
|
-
|
|
6899
|
+
const selected = nbt.palettes.value.value[paletteIndex ?? 0];
|
|
6900
|
+
if (!selected) throw new MineRenderError(`Structure palette ${paletteIndex ?? 0} does not exist`);
|
|
6901
|
+
palette = { type: "list", value: selected };
|
|
5005
6902
|
} else {
|
|
5006
6903
|
throw new MineRenderError("Structure does not have palette(s)");
|
|
5007
6904
|
}
|
|
5008
6905
|
const blocks = nbt.blocks.value.value.map((block) => {
|
|
5009
6906
|
const state = palette.value.value[block.state.value];
|
|
5010
|
-
if (state.
|
|
6907
|
+
if (!state) throw new MineRenderError(`Structure palette index ${block.state.value} does not exist`);
|
|
6908
|
+
if (["minecraft:air", "minecraft:cave_air", "minecraft:void_air"].includes(state.Name.value)) return void 0;
|
|
5011
6909
|
const props = {};
|
|
5012
6910
|
for (let k in state.Properties?.value) {
|
|
5013
6911
|
props[k] = state.Properties.value[k].value;
|
|
@@ -5021,13 +6919,19 @@ var StructureParser = class {
|
|
|
5021
6919
|
}).filter((m) => typeof m !== "undefined");
|
|
5022
6920
|
return {
|
|
5023
6921
|
blocks,
|
|
5024
|
-
size: nbt.size.value.value
|
|
6922
|
+
size: nbt.size.value.value,
|
|
6923
|
+
dataVersion: nbt.DataVersion?.value,
|
|
6924
|
+
entities: (nbt.entities?.value.value ?? []).map((entity) => ({
|
|
6925
|
+
position: entity.pos.value.value,
|
|
6926
|
+
blockPosition: entity.blockPos.value.value,
|
|
6927
|
+
nbt: entity.nbt
|
|
6928
|
+
}))
|
|
5025
6929
|
};
|
|
5026
6930
|
}
|
|
5027
6931
|
};
|
|
5028
6932
|
|
|
5029
6933
|
// src/renderer/MineRenderScene.ts
|
|
5030
|
-
var
|
|
6934
|
+
var import_three21 = require("three");
|
|
5031
6935
|
var import_ts_deepmerge8 = __toESM(require_dist());
|
|
5032
6936
|
|
|
5033
6937
|
// src/skin/SkinPart.ts
|
|
@@ -5752,7 +7656,7 @@ var slimSkinGeometries = {
|
|
|
5752
7656
|
var import_ts_deepmerge7 = __toESM(require_dist());
|
|
5753
7657
|
|
|
5754
7658
|
// src/skin/SkinTextures.ts
|
|
5755
|
-
var
|
|
7659
|
+
var import_three20 = require("three");
|
|
5756
7660
|
|
|
5757
7661
|
// src/skin/SkinImage.ts
|
|
5758
7662
|
var SkinImage = class {
|
|
@@ -5829,11 +7733,11 @@ var SkinTextures = class {
|
|
|
5829
7733
|
});
|
|
5830
7734
|
}
|
|
5831
7735
|
static createMaterial(pixels, width, height, transparent = true) {
|
|
5832
|
-
const texture = Textures.initTextureProps(new
|
|
5833
|
-
texture.colorSpace =
|
|
7736
|
+
const texture = Textures.initTextureProps(new import_three20.DataTexture(pixels, width, height));
|
|
7737
|
+
texture.colorSpace = import_three20.SRGBColorSpace;
|
|
5834
7738
|
texture.flipY = true;
|
|
5835
7739
|
texture.needsUpdate = true;
|
|
5836
|
-
return new
|
|
7740
|
+
return new import_three20.MeshBasicMaterial({ map: texture, transparent, side: transparent ? import_three20.DoubleSide : import_three20.FrontSide, alphaTest: transparent ? 0.1 : 0 });
|
|
5837
7741
|
}
|
|
5838
7742
|
static isSlim(image, scale) {
|
|
5839
7743
|
for (const [x, y] of [[46, 52], [54, 20]]) {
|
|
@@ -6060,7 +7964,7 @@ var SkinObject = class extends SceneObject {
|
|
|
6060
7964
|
};
|
|
6061
7965
|
|
|
6062
7966
|
// src/renderer/MineRenderScene.ts
|
|
6063
|
-
var _MineRenderScene = class _MineRenderScene extends
|
|
7967
|
+
var _MineRenderScene = class _MineRenderScene extends import_three21.Scene {
|
|
6064
7968
|
constructor(options) {
|
|
6065
7969
|
super();
|
|
6066
7970
|
this.isMineRenderScene = true;
|
|
@@ -6133,11 +8037,12 @@ var _MineRenderScene = class _MineRenderScene extends import_three20.Scene {
|
|
|
6133
8037
|
console.log("instanceMeshes + key");
|
|
6134
8038
|
let key = asset.key.serialize();
|
|
6135
8039
|
if (isModelObject(obj)) {
|
|
6136
|
-
const { displayPosition, uvLockRotation, tints } = obj.options;
|
|
8040
|
+
const { displayPosition, uvLockRotation, tints, cullMask } = obj.options;
|
|
6137
8041
|
if (displayPosition) key += `|display:${displayPosition}`;
|
|
6138
8042
|
if (uvLockRotation) key += `|uvlock:${uvLockRotation.join(",")}`;
|
|
6139
8043
|
const palette = Object.entries(tints ?? {}).sort(([a], [b]) => Number(a) - Number(b));
|
|
6140
8044
|
if (palette.length) key += `|tints:${JSON.stringify(palette)}`;
|
|
8045
|
+
if (cullMask) key += `|cull:${cullMask}`;
|
|
6141
8046
|
}
|
|
6142
8047
|
return this.instanceManager.getOrCreate(key, async () => {
|
|
6143
8048
|
obj.scene = this;
|
|
@@ -6183,17 +8088,17 @@ function isMineRenderScene(obj) {
|
|
|
6183
8088
|
}
|
|
6184
8089
|
|
|
6185
8090
|
// src/renderer/Renderer.ts
|
|
6186
|
-
var
|
|
8091
|
+
var import_three23 = require("three");
|
|
6187
8092
|
var import_ts_deepmerge9 = __toESM(require_dist());
|
|
6188
8093
|
var import_stats = __toESM(require("stats.js"));
|
|
6189
8094
|
var import_postprocessing = require("postprocessing");
|
|
6190
8095
|
|
|
6191
8096
|
// src/three/OrbitControls.js
|
|
6192
|
-
var
|
|
8097
|
+
var import_three22 = require("three");
|
|
6193
8098
|
var _changeEvent = { type: "change" };
|
|
6194
8099
|
var _startEvent = { type: "start" };
|
|
6195
8100
|
var _endEvent = { type: "end" };
|
|
6196
|
-
var OrbitControls = class extends
|
|
8101
|
+
var OrbitControls = class extends import_three22.EventDispatcher {
|
|
6197
8102
|
constructor(object, domElement) {
|
|
6198
8103
|
super();
|
|
6199
8104
|
if (domElement === void 0) console.warn('THREE.OrbitControls: The second parameter "domElement" is now mandatory.');
|
|
@@ -6202,7 +8107,7 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6202
8107
|
this.domElement = domElement;
|
|
6203
8108
|
this.domElement.style.touchAction = "none";
|
|
6204
8109
|
this.enabled = true;
|
|
6205
|
-
this.target = new
|
|
8110
|
+
this.target = new import_three22.Vector3();
|
|
6206
8111
|
this.minDistance = 0;
|
|
6207
8112
|
this.maxDistance = Infinity;
|
|
6208
8113
|
this.minZoom = 0;
|
|
@@ -6224,8 +8129,8 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6224
8129
|
this.autoRotate = false;
|
|
6225
8130
|
this.autoRotateSpeed = 2;
|
|
6226
8131
|
this.keys = { LEFT: "ArrowLeft", UP: "ArrowUp", RIGHT: "ArrowRight", BOTTOM: "ArrowDown" };
|
|
6227
|
-
this.mouseButtons = { LEFT:
|
|
6228
|
-
this.touches = { ONE:
|
|
8132
|
+
this.mouseButtons = { LEFT: import_three22.MOUSE.ROTATE, MIDDLE: import_three22.MOUSE.DOLLY, RIGHT: import_three22.MOUSE.PAN };
|
|
8133
|
+
this.touches = { ONE: import_three22.TOUCH.ROTATE, TWO: import_three22.TOUCH.DOLLY_PAN };
|
|
6229
8134
|
this.target0 = this.target.clone();
|
|
6230
8135
|
this.position0 = this.object.position.clone();
|
|
6231
8136
|
this.zoom0 = this.object.zoom;
|
|
@@ -6254,11 +8159,11 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6254
8159
|
state = STATE.NONE;
|
|
6255
8160
|
};
|
|
6256
8161
|
this.update = function() {
|
|
6257
|
-
const offset = new
|
|
6258
|
-
const quat = new
|
|
8162
|
+
const offset = new import_three22.Vector3();
|
|
8163
|
+
const quat = new import_three22.Quaternion().setFromUnitVectors(object.up, new import_three22.Vector3(0, 1, 0));
|
|
6259
8164
|
const quatInverse = quat.clone().invert();
|
|
6260
|
-
const lastPosition = new
|
|
6261
|
-
const lastQuaternion = new
|
|
8165
|
+
const lastPosition = new import_three22.Vector3();
|
|
8166
|
+
const lastQuaternion = new import_three22.Quaternion();
|
|
6262
8167
|
const twoPI = 2 * Math.PI;
|
|
6263
8168
|
return function update() {
|
|
6264
8169
|
const position = scope.object.position;
|
|
@@ -6344,20 +8249,20 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6344
8249
|
};
|
|
6345
8250
|
let state = STATE.NONE;
|
|
6346
8251
|
const EPS = 1e-6;
|
|
6347
|
-
const spherical = new
|
|
6348
|
-
const sphericalDelta = new
|
|
8252
|
+
const spherical = new import_three22.Spherical();
|
|
8253
|
+
const sphericalDelta = new import_three22.Spherical();
|
|
6349
8254
|
let scale = 1;
|
|
6350
|
-
const panOffset = new
|
|
8255
|
+
const panOffset = new import_three22.Vector3();
|
|
6351
8256
|
let zoomChanged = false;
|
|
6352
|
-
const rotateStart = new
|
|
6353
|
-
const rotateEnd = new
|
|
6354
|
-
const rotateDelta = new
|
|
6355
|
-
const panStart = new
|
|
6356
|
-
const panEnd = new
|
|
6357
|
-
const panDelta = new
|
|
6358
|
-
const dollyStart = new
|
|
6359
|
-
const dollyEnd = new
|
|
6360
|
-
const dollyDelta = new
|
|
8257
|
+
const rotateStart = new import_three22.Vector2();
|
|
8258
|
+
const rotateEnd = new import_three22.Vector2();
|
|
8259
|
+
const rotateDelta = new import_three22.Vector2();
|
|
8260
|
+
const panStart = new import_three22.Vector2();
|
|
8261
|
+
const panEnd = new import_three22.Vector2();
|
|
8262
|
+
const panDelta = new import_three22.Vector2();
|
|
8263
|
+
const dollyStart = new import_three22.Vector2();
|
|
8264
|
+
const dollyEnd = new import_three22.Vector2();
|
|
8265
|
+
const dollyDelta = new import_three22.Vector2();
|
|
6361
8266
|
const pointers = [];
|
|
6362
8267
|
const pointerPositions = {};
|
|
6363
8268
|
function getAutoRotationAngle() {
|
|
@@ -6373,7 +8278,7 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6373
8278
|
sphericalDelta.phi -= angle;
|
|
6374
8279
|
}
|
|
6375
8280
|
const panLeft = function() {
|
|
6376
|
-
const v = new
|
|
8281
|
+
const v = new import_three22.Vector3();
|
|
6377
8282
|
return function panLeft2(distance, objectMatrix) {
|
|
6378
8283
|
v.setFromMatrixColumn(objectMatrix, 0);
|
|
6379
8284
|
v.multiplyScalar(-distance);
|
|
@@ -6381,7 +8286,7 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6381
8286
|
};
|
|
6382
8287
|
}();
|
|
6383
8288
|
const panUp = function() {
|
|
6384
|
-
const v = new
|
|
8289
|
+
const v = new import_three22.Vector3();
|
|
6385
8290
|
return function panUp2(distance, objectMatrix) {
|
|
6386
8291
|
if (scope.screenSpacePanning === true) {
|
|
6387
8292
|
v.setFromMatrixColumn(objectMatrix, 1);
|
|
@@ -6394,7 +8299,7 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6394
8299
|
};
|
|
6395
8300
|
}();
|
|
6396
8301
|
const pan = function() {
|
|
6397
|
-
const offset = new
|
|
8302
|
+
const offset = new import_three22.Vector3();
|
|
6398
8303
|
return function pan2(deltaX, deltaY) {
|
|
6399
8304
|
const element = scope.domElement;
|
|
6400
8305
|
if (scope.object.isPerspectiveCamera) {
|
|
@@ -6643,12 +8548,12 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6643
8548
|
mouseAction = -1;
|
|
6644
8549
|
}
|
|
6645
8550
|
switch (mouseAction) {
|
|
6646
|
-
case
|
|
8551
|
+
case import_three22.MOUSE.DOLLY:
|
|
6647
8552
|
if (scope.enableZoom === false) return;
|
|
6648
8553
|
handleMouseDownDolly(event);
|
|
6649
8554
|
state = STATE.DOLLY;
|
|
6650
8555
|
break;
|
|
6651
|
-
case
|
|
8556
|
+
case import_three22.MOUSE.ROTATE:
|
|
6652
8557
|
if (event.ctrlKey || event.metaKey || event.shiftKey) {
|
|
6653
8558
|
if (scope.enablePan === false) return;
|
|
6654
8559
|
handleMouseDownPan(event);
|
|
@@ -6659,7 +8564,7 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6659
8564
|
state = STATE.ROTATE;
|
|
6660
8565
|
}
|
|
6661
8566
|
break;
|
|
6662
|
-
case
|
|
8567
|
+
case import_three22.MOUSE.PAN:
|
|
6663
8568
|
if (event.ctrlKey || event.metaKey || event.shiftKey) {
|
|
6664
8569
|
if (scope.enableRotate === false) return;
|
|
6665
8570
|
handleMouseDownRotate(event);
|
|
@@ -6715,12 +8620,12 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6715
8620
|
switch (pointers.length) {
|
|
6716
8621
|
case 1:
|
|
6717
8622
|
switch (scope.touches.ONE) {
|
|
6718
|
-
case
|
|
8623
|
+
case import_three22.TOUCH.ROTATE:
|
|
6719
8624
|
if (scope.enableRotate === false) return;
|
|
6720
8625
|
handleTouchStartRotate();
|
|
6721
8626
|
state = STATE.TOUCH_ROTATE;
|
|
6722
8627
|
break;
|
|
6723
|
-
case
|
|
8628
|
+
case import_three22.TOUCH.PAN:
|
|
6724
8629
|
if (scope.enablePan === false) return;
|
|
6725
8630
|
handleTouchStartPan();
|
|
6726
8631
|
state = STATE.TOUCH_PAN;
|
|
@@ -6731,12 +8636,12 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6731
8636
|
break;
|
|
6732
8637
|
case 2:
|
|
6733
8638
|
switch (scope.touches.TWO) {
|
|
6734
|
-
case
|
|
8639
|
+
case import_three22.TOUCH.DOLLY_PAN:
|
|
6735
8640
|
if (scope.enableZoom === false && scope.enablePan === false) return;
|
|
6736
8641
|
handleTouchStartDollyPan();
|
|
6737
8642
|
state = STATE.TOUCH_DOLLY_PAN;
|
|
6738
8643
|
break;
|
|
6739
|
-
case
|
|
8644
|
+
case import_three22.TOUCH.DOLLY_ROTATE:
|
|
6740
8645
|
if (scope.enableZoom === false && scope.enableRotate === false) return;
|
|
6741
8646
|
handleTouchStartDollyRotate();
|
|
6742
8647
|
state = STATE.TOUCH_DOLLY_ROTATE;
|
|
@@ -6803,7 +8708,7 @@ var OrbitControls = class extends import_three21.EventDispatcher {
|
|
|
6803
8708
|
function trackPointer(event) {
|
|
6804
8709
|
let position = pointerPositions[event.pointerId];
|
|
6805
8710
|
if (position === void 0) {
|
|
6806
|
-
position = new
|
|
8711
|
+
position = new import_three22.Vector2();
|
|
6807
8712
|
pointerPositions[event.pointerId] = position;
|
|
6808
8713
|
}
|
|
6809
8714
|
position.set(event.pageX, event.pageY);
|
|
@@ -6823,10 +8728,10 @@ var MapControls = class extends OrbitControls {
|
|
|
6823
8728
|
constructor(object, domElement) {
|
|
6824
8729
|
super(object, domElement);
|
|
6825
8730
|
this.screenSpacePanning = false;
|
|
6826
|
-
this.mouseButtons.LEFT =
|
|
6827
|
-
this.mouseButtons.RIGHT =
|
|
6828
|
-
this.touches.ONE =
|
|
6829
|
-
this.touches.TWO =
|
|
8731
|
+
this.mouseButtons.LEFT = import_three22.MOUSE.PAN;
|
|
8732
|
+
this.mouseButtons.RIGHT = import_three22.MOUSE.ROTATE;
|
|
8733
|
+
this.touches.ONE = import_three22.TOUCH.PAN;
|
|
8734
|
+
this.touches.TWO = import_three22.TOUCH.DOLLY_ROTATE;
|
|
6830
8735
|
}
|
|
6831
8736
|
};
|
|
6832
8737
|
|
|
@@ -6863,14 +8768,14 @@ var _Renderer = class _Renderer {
|
|
|
6863
8768
|
switch (this.options.camera.type) {
|
|
6864
8769
|
case "perspective":
|
|
6865
8770
|
default:
|
|
6866
|
-
return new
|
|
8771
|
+
return new import_three23.PerspectiveCamera(
|
|
6867
8772
|
this.options.camera.perspective.fov,
|
|
6868
8773
|
this.options.camera.perspective.aspect ?? this.viewWidth / this.viewHeight,
|
|
6869
8774
|
this.options.camera.near,
|
|
6870
8775
|
this.options.camera.far
|
|
6871
8776
|
);
|
|
6872
8777
|
case "orthographic":
|
|
6873
|
-
return new
|
|
8778
|
+
return new import_three23.OrthographicCamera(
|
|
6874
8779
|
this.options.camera.orthographic.left ?? this.viewWidth / -2,
|
|
6875
8780
|
this.options.camera.orthographic.right ?? this.viewWidth / 2,
|
|
6876
8781
|
this.options.camera.orthographic.top ?? this.viewHeight / 2,
|
|
@@ -6881,7 +8786,7 @@ var _Renderer = class _Renderer {
|
|
|
6881
8786
|
}
|
|
6882
8787
|
}
|
|
6883
8788
|
createRenderer() {
|
|
6884
|
-
const renderer = new
|
|
8789
|
+
const renderer = new import_three23.WebGLRenderer({
|
|
6885
8790
|
antialias: this.options.render.antialias,
|
|
6886
8791
|
alpha: true,
|
|
6887
8792
|
powerPreference: "high-performance",
|
|
@@ -6889,8 +8794,8 @@ var _Renderer = class _Renderer {
|
|
|
6889
8794
|
});
|
|
6890
8795
|
renderer.setClearColor(0, 0);
|
|
6891
8796
|
renderer.shadowMap.enabled = true;
|
|
6892
|
-
renderer.shadowMap.type =
|
|
6893
|
-
renderer.outputColorSpace =
|
|
8797
|
+
renderer.shadowMap.type = import_three23.PCFSoftShadowMap;
|
|
8798
|
+
renderer.outputColorSpace = import_three23.SRGBColorSpace;
|
|
6894
8799
|
renderer.setSize(this.viewWidth, this.viewHeight);
|
|
6895
8800
|
return renderer;
|
|
6896
8801
|
}
|
|
@@ -6924,20 +8829,20 @@ var _Renderer = class _Renderer {
|
|
|
6924
8829
|
window["__THREE_DEVTOOLS__"].dispatchEvent(new CustomEvent("observe", { detail: this.scene }));
|
|
6925
8830
|
}
|
|
6926
8831
|
if (this.options.debug.grid) {
|
|
6927
|
-
const gridHelper = new
|
|
8832
|
+
const gridHelper = new import_three23.GridHelper(128, 16);
|
|
6928
8833
|
this._debugHelpers.push(gridHelper);
|
|
6929
8834
|
this.scene.add(gridHelper);
|
|
6930
|
-
const gridHelper2 = new
|
|
8835
|
+
const gridHelper2 = new import_three23.GridHelper(128, 16);
|
|
6931
8836
|
this._debugHelpers.push(gridHelper2);
|
|
6932
8837
|
gridHelper2.rotation.x = 90 * (Math.PI / 180);
|
|
6933
8838
|
this.scene.add(gridHelper2);
|
|
6934
|
-
const gridHelper3 = new
|
|
8839
|
+
const gridHelper3 = new import_three23.GridHelper(128, 16);
|
|
6935
8840
|
this._debugHelpers.push(gridHelper3);
|
|
6936
8841
|
gridHelper3.rotation.z = 90 * (Math.PI / 180);
|
|
6937
8842
|
this.scene.add(gridHelper3);
|
|
6938
8843
|
}
|
|
6939
8844
|
if (this.options.debug.axes) {
|
|
6940
|
-
const axesHelper = new
|
|
8845
|
+
const axesHelper = new import_three23.AxesHelper(64);
|
|
6941
8846
|
this._debugHelpers.push(axesHelper);
|
|
6942
8847
|
this.scene.add(axesHelper);
|
|
6943
8848
|
}
|
|
@@ -7141,8 +9046,8 @@ _Renderer.DEFAULT_OPTIONS = (0, import_ts_deepmerge9.default)({}, {
|
|
|
7141
9046
|
top: void 0,
|
|
7142
9047
|
bottom: void 0
|
|
7143
9048
|
},
|
|
7144
|
-
position: new
|
|
7145
|
-
lookingAt: new
|
|
9049
|
+
position: new import_three23.Vector3(50, 50, 50),
|
|
9050
|
+
lookingAt: new import_three23.Vector3(0, 0, 0)
|
|
7146
9051
|
},
|
|
7147
9052
|
render: {
|
|
7148
9053
|
fpsLimit: 60,
|
|
@@ -7329,9 +9234,6 @@ var Skins = class {
|
|
|
7329
9234
|
//</editor-fold>
|
|
7330
9235
|
};
|
|
7331
9236
|
|
|
7332
|
-
// src/world/Chunk.ts
|
|
7333
|
-
var import_three25 = require("three");
|
|
7334
|
-
|
|
7335
9237
|
// src/world/ChunkData.ts
|
|
7336
9238
|
var ChunkData = class _ChunkData {
|
|
7337
9239
|
constructor() {
|
|
@@ -7413,29 +9315,204 @@ var ChunkData = class _ChunkData {
|
|
|
7413
9315
|
}
|
|
7414
9316
|
};
|
|
7415
9317
|
|
|
9318
|
+
// src/world/AnvilParser.ts
|
|
9319
|
+
var AnvilParser = class {
|
|
9320
|
+
static getChunkList(data) {
|
|
9321
|
+
return this.locations(this.bytes(data)).map(({ x, z }) => ({ x, z }));
|
|
9322
|
+
}
|
|
9323
|
+
static async parse(data) {
|
|
9324
|
+
const bytes = this.bytes(data);
|
|
9325
|
+
const chunks = [];
|
|
9326
|
+
for (const location of this.locations(bytes)) chunks.push(await this.readChunk(bytes, location));
|
|
9327
|
+
return { chunks };
|
|
9328
|
+
}
|
|
9329
|
+
static async parseChunk(data, localX, localZ) {
|
|
9330
|
+
if (![localX, localZ].every((value) => Number.isInteger(value) && value >= 0 && value < 32)) {
|
|
9331
|
+
throw new RangeError("Region-local chunk coordinates must be integers from 0 to 31");
|
|
9332
|
+
}
|
|
9333
|
+
const bytes = this.bytes(data);
|
|
9334
|
+
const location = this.locations(bytes).find(({ x, z }) => x === localX && z === localZ);
|
|
9335
|
+
return location ? this.readChunk(bytes, location) : void 0;
|
|
9336
|
+
}
|
|
9337
|
+
static bytes(data) {
|
|
9338
|
+
return data instanceof Uint8Array ? data : new Uint8Array(data);
|
|
9339
|
+
}
|
|
9340
|
+
static locations(data) {
|
|
9341
|
+
if (data.byteLength < 8192) throw new MineRenderError("Anvil region header is truncated");
|
|
9342
|
+
const view = new DataView(data.buffer, data.byteOffset, data.byteLength);
|
|
9343
|
+
const locations = [];
|
|
9344
|
+
for (let index = 0; index < 1024; index++) {
|
|
9345
|
+
const entry = view.getUint32(index * 4);
|
|
9346
|
+
if (entry === 0) continue;
|
|
9347
|
+
const sector = entry >>> 8;
|
|
9348
|
+
const count = entry & 255;
|
|
9349
|
+
if (sector < 2 || count === 0 || (sector + count) * 4096 > data.byteLength) {
|
|
9350
|
+
throw new MineRenderError(`Invalid Anvil sector allocation at chunk ${index % 32},${Math.floor(index / 32)}`);
|
|
9351
|
+
}
|
|
9352
|
+
const offset = sector * 4096;
|
|
9353
|
+
const length = view.getUint32(offset);
|
|
9354
|
+
if (length < 1 || length + 4 > count * 4096) {
|
|
9355
|
+
throw new MineRenderError(`Invalid Anvil chunk payload length at sector ${sector}`);
|
|
9356
|
+
}
|
|
9357
|
+
locations.push({ x: index % 32, z: Math.floor(index / 32), offset, length });
|
|
9358
|
+
}
|
|
9359
|
+
return locations;
|
|
9360
|
+
}
|
|
9361
|
+
static async readChunk(data, location) {
|
|
9362
|
+
const compression = data[location.offset + 4];
|
|
9363
|
+
if (compression & 128) throw new MineRenderError("External Anvil .mcc chunks are not supported");
|
|
9364
|
+
if (compression !== 1 && compression !== 2 && compression !== 3) {
|
|
9365
|
+
throw new MineRenderError(`Unsupported Anvil compression ${compression}${compression === 4 ? " (LZ4)" : ""}`);
|
|
9366
|
+
}
|
|
9367
|
+
let payload = data.subarray(location.offset + 5, location.offset + 4 + location.length);
|
|
9368
|
+
if (compression !== 3) {
|
|
9369
|
+
const stream = new Blob([payload]).stream().pipeThrough(new DecompressionStream(compression === 1 ? "gzip" : "deflate"));
|
|
9370
|
+
payload = new Uint8Array(await new Response(stream).arrayBuffer());
|
|
9371
|
+
}
|
|
9372
|
+
const nbt = await NBTHelper.fromBuffer(payload, "big");
|
|
9373
|
+
const root = nbt.value;
|
|
9374
|
+
const level = root.Level?.type === "compound" ? root.Level.value : root;
|
|
9375
|
+
const dataVersion = root.DataVersion?.type === "int" ? root.DataVersion.value : void 0;
|
|
9376
|
+
const chunk = {
|
|
9377
|
+
x: this.integer(level.xPos, "xPos"),
|
|
9378
|
+
z: this.integer(level.zPos, "zPos"),
|
|
9379
|
+
dataVersion,
|
|
9380
|
+
sections: []
|
|
9381
|
+
};
|
|
9382
|
+
if ((chunk.x % 32 + 32) % 32 !== location.x || (chunk.z % 32 + 32) % 32 !== location.z) {
|
|
9383
|
+
throw new MineRenderError("Anvil chunk coordinates do not match its region location");
|
|
9384
|
+
}
|
|
9385
|
+
for (const section of this.compounds(level.sections ?? level.Sections, "sections")) {
|
|
9386
|
+
const y = this.integer(section.Y, "section Y");
|
|
9387
|
+
if (section.Blocks || section.Data || section.Add) {
|
|
9388
|
+
throw new MineRenderError("Numeric Anvil block IDs before Minecraft 1.13 are not supported");
|
|
9389
|
+
}
|
|
9390
|
+
if (section.block_states && section.block_states.type !== "compound") {
|
|
9391
|
+
throw new MineRenderError("Anvil block_states must be a compound");
|
|
9392
|
+
}
|
|
9393
|
+
const modern = section.block_states?.type === "compound" ? section.block_states.value : void 0;
|
|
9394
|
+
const paletteTag = modern ? modern.palette : section.Palette;
|
|
9395
|
+
const palette = paletteTag?.type === "list" && paletteTag.value.type === "string" ? paletteTag.value.value : this.compounds(paletteTag, "block palette");
|
|
9396
|
+
const data2 = new ChunkData();
|
|
9397
|
+
if (palette.length) {
|
|
9398
|
+
const states = palette.map((entry) => this.block(entry));
|
|
9399
|
+
const indices = this.unpack(modern ? modern.data : section.BlockStates, states.length, !!modern, dataVersion);
|
|
9400
|
+
for (let index = 0; index < 4096; index++) {
|
|
9401
|
+
const state = states[indices[index]];
|
|
9402
|
+
if (!state) throw new MineRenderError(`Anvil palette index ${indices[index]} is out of range`);
|
|
9403
|
+
if (!ChunkData.isAir(state)) data2.set(index, state);
|
|
9404
|
+
}
|
|
9405
|
+
} else if (modern || section.Palette || section.BlockStates) {
|
|
9406
|
+
throw new MineRenderError("Anvil section has block states without a palette");
|
|
9407
|
+
}
|
|
9408
|
+
if (chunk.sections.some((section2) => section2.y === y)) throw new MineRenderError(`Duplicate Anvil section Y ${y}`);
|
|
9409
|
+
chunk.sections.push({ y, data: data2 });
|
|
9410
|
+
}
|
|
9411
|
+
for (const entry of this.compounds(level.block_entities ?? level.TileEntities, "block entities")) {
|
|
9412
|
+
const x = this.integer(entry.x, "block entity x") - chunk.x * 16;
|
|
9413
|
+
const y = this.integer(entry.y, "block entity y");
|
|
9414
|
+
const z = this.integer(entry.z, "block entity z") - chunk.z * 16;
|
|
9415
|
+
const sectionY = Math.floor(y / 16);
|
|
9416
|
+
const section = chunk.sections.find((section2) => section2.y === sectionY);
|
|
9417
|
+
if (!section || x < 0 || x >= 16 || z < 0 || z >= 16) continue;
|
|
9418
|
+
const index = x + z * 16 + (y - sectionY * 16) * 256;
|
|
9419
|
+
const block = section.data.get(index);
|
|
9420
|
+
if (block) section.data.set(index, { ...block, nbt: { type: "compound", value: entry } });
|
|
9421
|
+
}
|
|
9422
|
+
const entities = this.compounds(level.entities ?? level.Entities, "entities");
|
|
9423
|
+
if (entities.length) {
|
|
9424
|
+
chunk.entities = entities.map((value) => {
|
|
9425
|
+
const position = value.Pos;
|
|
9426
|
+
if (position?.type !== "list" || position.value.type !== "double" || position.value.value.length !== 3 || !position.value.value.every(Number.isFinite)) {
|
|
9427
|
+
throw new MineRenderError("Anvil entity Pos must contain three coordinates");
|
|
9428
|
+
}
|
|
9429
|
+
return { position: [...position.value.value], nbt: { type: "compound", value } };
|
|
9430
|
+
});
|
|
9431
|
+
}
|
|
9432
|
+
return chunk;
|
|
9433
|
+
}
|
|
9434
|
+
static compounds(tag, name) {
|
|
9435
|
+
if (!tag) return [];
|
|
9436
|
+
if (tag.type !== "list" || tag.value.type !== "compound" && tag.value.value.length !== 0) {
|
|
9437
|
+
throw new MineRenderError(`Anvil ${name} must be a compound list`);
|
|
9438
|
+
}
|
|
9439
|
+
return tag.value.value;
|
|
9440
|
+
}
|
|
9441
|
+
static integer(tag, name) {
|
|
9442
|
+
if (!tag || typeof tag.value !== "number" || !Number.isInteger(tag.value)) {
|
|
9443
|
+
throw new MineRenderError(`Anvil ${name} must be an integer`);
|
|
9444
|
+
}
|
|
9445
|
+
return tag.value;
|
|
9446
|
+
}
|
|
9447
|
+
static block(entry) {
|
|
9448
|
+
if (typeof entry === "string") entry = { id: { type: "string", value: entry } };
|
|
9449
|
+
if (Object.keys(entry).length === 1 && entry[""]?.type === "string") entry = { id: entry[""] };
|
|
9450
|
+
const name = entry.id ?? entry.Name;
|
|
9451
|
+
const properties = entry.properties ?? entry.Properties;
|
|
9452
|
+
if (name?.type !== "string" || !name.value) throw new MineRenderError("Anvil palette entry has no block name");
|
|
9453
|
+
const block = { type: name.value };
|
|
9454
|
+
if (properties?.type === "compound") {
|
|
9455
|
+
block.properties = {};
|
|
9456
|
+
for (const [key, value] of Object.entries(properties.value)) {
|
|
9457
|
+
if (value?.type !== "string") throw new MineRenderError("Anvil block properties must be strings");
|
|
9458
|
+
block.properties[key] = value.value;
|
|
9459
|
+
}
|
|
9460
|
+
}
|
|
9461
|
+
return block;
|
|
9462
|
+
}
|
|
9463
|
+
static unpack(tag, paletteSize, modern, dataVersion) {
|
|
9464
|
+
const indices = new Uint16Array(4096);
|
|
9465
|
+
if (paletteSize === 1 && (!tag || tag.type === "longArray" && tag.value.length === 0)) return indices;
|
|
9466
|
+
if (tag?.type !== "longArray") throw new MineRenderError("Anvil section is missing its block-state long array");
|
|
9467
|
+
const bits = Math.max(4, Math.ceil(Math.log2(paletteSize)));
|
|
9468
|
+
if (paletteSize > 4096) throw new MineRenderError("Anvil block palette exceeds 4096 entries");
|
|
9469
|
+
if (!modern && dataVersion === void 0 && 64 % bits !== 0) {
|
|
9470
|
+
throw new MineRenderError("Anvil DataVersion is required to decode this block-state layout");
|
|
9471
|
+
}
|
|
9472
|
+
const padded = modern || (dataVersion ?? 0) >= 2527;
|
|
9473
|
+
const perLong = Math.floor(64 / bits);
|
|
9474
|
+
const expected = padded ? Math.ceil(4096 / perLong) : Math.ceil(4096 * bits / 64);
|
|
9475
|
+
if (tag.value.length !== expected) throw new MineRenderError(`Invalid Anvil block-state array length: expected ${expected}`);
|
|
9476
|
+
const words = tag.value.map(([high, low]) => BigInt(high >>> 0) << 32n | BigInt(low >>> 0));
|
|
9477
|
+
const mask = (1n << BigInt(bits)) - 1n;
|
|
9478
|
+
for (let index = 0; index < 4096; index++) {
|
|
9479
|
+
const word = padded ? Math.floor(index / perLong) : Math.floor(index * bits / 64);
|
|
9480
|
+
const shift = padded ? index % perLong * bits : index * bits % 64;
|
|
9481
|
+
let value = words[word] >> BigInt(shift);
|
|
9482
|
+
if (!padded && shift + bits > 64) value |= words[word + 1] << BigInt(64 - shift);
|
|
9483
|
+
indices[index] = Number(value & mask);
|
|
9484
|
+
}
|
|
9485
|
+
return indices;
|
|
9486
|
+
}
|
|
9487
|
+
};
|
|
9488
|
+
|
|
9489
|
+
// src/world/Chunk.ts
|
|
9490
|
+
var import_three26 = require("three");
|
|
9491
|
+
|
|
7416
9492
|
// src/world/MineRenderWorld.ts
|
|
7417
|
-
var
|
|
9493
|
+
var import_three25 = require("three");
|
|
7418
9494
|
var MineRenderWorld = class {
|
|
7419
9495
|
constructor(scene) {
|
|
7420
9496
|
this._chunks = /* @__PURE__ */ new Map();
|
|
9497
|
+
this.pendingCulling = /* @__PURE__ */ new Map();
|
|
7421
9498
|
this.scene = scene;
|
|
7422
9499
|
}
|
|
7423
9500
|
getBlockAt(posOrX, y, z) {
|
|
7424
9501
|
if (typeof posOrX == "number") {
|
|
7425
|
-
return this.getBlockAt(new
|
|
9502
|
+
return this.getBlockAt(new import_three25.Vector3(posOrX, y, z));
|
|
7426
9503
|
}
|
|
7427
9504
|
if (isTripleArray(posOrX)) {
|
|
7428
|
-
return this.getBlockAt(new
|
|
9505
|
+
return this.getBlockAt(new import_three25.Vector3(posOrX[0], posOrX[1], posOrX[2]));
|
|
7429
9506
|
}
|
|
7430
9507
|
this.validatePosBounds(posOrX);
|
|
7431
9508
|
return this.getChunkAt(posOrX)?.getBlockAt(posOrX);
|
|
7432
9509
|
}
|
|
7433
9510
|
async setBlockAt(posOrX, yOrBlock, z, block) {
|
|
7434
9511
|
if (typeof posOrX == "number") {
|
|
7435
|
-
return this.setBlockAt(new
|
|
9512
|
+
return this.setBlockAt(new import_three25.Vector3(posOrX, yOrBlock, z), block);
|
|
7436
9513
|
}
|
|
7437
9514
|
if (isTripleArray(posOrX)) {
|
|
7438
|
-
return this.setBlockAt(new
|
|
9515
|
+
return this.setBlockAt(new import_three25.Vector3(posOrX[0], posOrX[1], posOrX[2]), yOrBlock);
|
|
7439
9516
|
}
|
|
7440
9517
|
this.validatePosBounds(posOrX);
|
|
7441
9518
|
const value = yOrBlock;
|
|
@@ -7477,17 +9554,78 @@ var MineRenderWorld = class {
|
|
|
7477
9554
|
if (!executor) queue.stop();
|
|
7478
9555
|
}
|
|
7479
9556
|
}
|
|
9557
|
+
/** Replaces one chunk column's blocks. Entity NBT remains available on the parsed chunk. */
|
|
9558
|
+
async placeChunk(chunk, executor) {
|
|
9559
|
+
const previous = [...this._chunks.entries()].filter(([, section]) => section.x === chunk.x && section.z === chunk.z);
|
|
9560
|
+
for (const [key, section] of previous) {
|
|
9561
|
+
this._chunks.delete(key);
|
|
9562
|
+
await section.dispose();
|
|
9563
|
+
}
|
|
9564
|
+
for (const section of chunk.sections) {
|
|
9565
|
+
const blocks = [];
|
|
9566
|
+
for (let index = 0; index < 4096; index++) {
|
|
9567
|
+
const block = section.data.get(index);
|
|
9568
|
+
if (block) blocks.push({
|
|
9569
|
+
...block,
|
|
9570
|
+
position: [
|
|
9571
|
+
chunk.x * 16 + index % 16,
|
|
9572
|
+
section.y * 16 + Math.floor(index / 256),
|
|
9573
|
+
chunk.z * 16 + Math.floor(index / 16) % 16
|
|
9574
|
+
]
|
|
9575
|
+
});
|
|
9576
|
+
}
|
|
9577
|
+
await this.placeMultiBlock({ size: [16, 16, 16], blocks }, true, executor);
|
|
9578
|
+
}
|
|
9579
|
+
}
|
|
7480
9580
|
async clear() {
|
|
7481
|
-
|
|
9581
|
+
await this.culling;
|
|
9582
|
+
const chunks = [...this._chunks.values()];
|
|
9583
|
+
this._chunks.clear();
|
|
9584
|
+
for (const chunk of chunks) {
|
|
7482
9585
|
await chunk.dispose();
|
|
7483
9586
|
}
|
|
7484
|
-
|
|
9587
|
+
}
|
|
9588
|
+
updateCulling(positions) {
|
|
9589
|
+
for (const pos of positions) {
|
|
9590
|
+
this.pendingCulling.set(pos.toArray().join(","), pos.clone());
|
|
9591
|
+
for (const offset of CUBE_FACE_OFFSETS) {
|
|
9592
|
+
const neighbor = pos.clone().add(new import_three25.Vector3(...offset));
|
|
9593
|
+
this.pendingCulling.set(neighbor.toArray().join(","), neighbor);
|
|
9594
|
+
}
|
|
9595
|
+
}
|
|
9596
|
+
return this.culling ?? (this.culling = Promise.resolve().then(async () => {
|
|
9597
|
+
try {
|
|
9598
|
+
while (this.pendingCulling.size) {
|
|
9599
|
+
const batch = [...this.pendingCulling.values()];
|
|
9600
|
+
this.pendingCulling.clear();
|
|
9601
|
+
for (const pos of batch) {
|
|
9602
|
+
const block = this.getBlockAt(pos)?.object;
|
|
9603
|
+
if (!block) continue;
|
|
9604
|
+
let mask = 0;
|
|
9605
|
+
for (const [face, offset] of CUBE_FACE_OFFSETS.entries()) {
|
|
9606
|
+
if (this.getBlockAt(pos.clone().add(new import_three25.Vector3(...offset)))?.object.isOccluding) {
|
|
9607
|
+
mask |= 1 << face;
|
|
9608
|
+
}
|
|
9609
|
+
}
|
|
9610
|
+
await block.setCullMask(mask);
|
|
9611
|
+
}
|
|
9612
|
+
}
|
|
9613
|
+
} finally {
|
|
9614
|
+
this.culling = void 0;
|
|
9615
|
+
}
|
|
9616
|
+
}));
|
|
7485
9617
|
}
|
|
7486
9618
|
getOrCreateChunkAt(pos) {
|
|
7487
9619
|
const key = this.worldPosToChunkKey(pos);
|
|
7488
9620
|
let chunk = this._chunks.get(key);
|
|
7489
9621
|
if (typeof chunk === "undefined") {
|
|
7490
|
-
chunk = new Chunk(
|
|
9622
|
+
chunk = new Chunk(
|
|
9623
|
+
this.scene,
|
|
9624
|
+
Math.floor(pos.x / 16),
|
|
9625
|
+
Math.floor(pos.y / 16),
|
|
9626
|
+
Math.floor(pos.z / 16),
|
|
9627
|
+
(positions) => this.updateCulling(positions)
|
|
9628
|
+
);
|
|
7491
9629
|
this._chunks.set(key, chunk);
|
|
7492
9630
|
}
|
|
7493
9631
|
return chunk;
|
|
@@ -7496,14 +9634,14 @@ var MineRenderWorld = class {
|
|
|
7496
9634
|
return this._chunks.get(this.worldPosToChunkKey(pos));
|
|
7497
9635
|
}
|
|
7498
9636
|
static worldToScenePosition(pos) {
|
|
7499
|
-
return new
|
|
9637
|
+
return new import_three25.Vector3(
|
|
7500
9638
|
pos.x * 16,
|
|
7501
9639
|
pos.y * 16,
|
|
7502
9640
|
pos.z * 16
|
|
7503
9641
|
);
|
|
7504
9642
|
}
|
|
7505
9643
|
static sceneToWorldPosition(pos) {
|
|
7506
|
-
return new
|
|
9644
|
+
return new import_three25.Vector3(
|
|
7507
9645
|
pos.x / 16,
|
|
7508
9646
|
pos.y / 16,
|
|
7509
9647
|
pos.z / 16
|
|
@@ -7524,7 +9662,8 @@ var MineRenderWorld = class {
|
|
|
7524
9662
|
|
|
7525
9663
|
// src/world/Chunk.ts
|
|
7526
9664
|
var Chunk = class _Chunk {
|
|
7527
|
-
constructor(scene, x, y, z) {
|
|
9665
|
+
constructor(scene, x, y, z, onBlocksChanged) {
|
|
9666
|
+
this.onBlocksChanged = onBlocksChanged;
|
|
7528
9667
|
this.data = new ChunkData();
|
|
7529
9668
|
this.renderedBlocks = /* @__PURE__ */ new Map();
|
|
7530
9669
|
this.scene = scene;
|
|
@@ -7534,10 +9673,10 @@ var Chunk = class _Chunk {
|
|
|
7534
9673
|
}
|
|
7535
9674
|
getBlockAt(posOrX, y, z) {
|
|
7536
9675
|
if (typeof posOrX == "number") {
|
|
7537
|
-
return this.getBlockAt(new
|
|
9676
|
+
return this.getBlockAt(new import_three26.Vector3(posOrX, y, z));
|
|
7538
9677
|
}
|
|
7539
9678
|
if (isTripleArray(posOrX)) {
|
|
7540
|
-
return this.getBlockAt(new
|
|
9679
|
+
return this.getBlockAt(new import_three26.Vector3(posOrX[0], posOrX[1], posOrX[2]));
|
|
7541
9680
|
}
|
|
7542
9681
|
const pos = this.worldPosToChunkPos(posOrX);
|
|
7543
9682
|
const index = _Chunk.chunkPosToBlockIndex(pos);
|
|
@@ -7545,10 +9684,10 @@ var Chunk = class _Chunk {
|
|
|
7545
9684
|
}
|
|
7546
9685
|
async setBlockAt(posOrX, yOrBlock, z, block) {
|
|
7547
9686
|
if (typeof posOrX == "number") {
|
|
7548
|
-
return this.setBlockAt(new
|
|
9687
|
+
return this.setBlockAt(new import_three26.Vector3(posOrX, yOrBlock, z), block);
|
|
7549
9688
|
}
|
|
7550
9689
|
if (isTripleArray(posOrX)) {
|
|
7551
|
-
return this.setBlockAt(new
|
|
9690
|
+
return this.setBlockAt(new import_three26.Vector3(posOrX[0], posOrX[1], posOrX[2]), yOrBlock);
|
|
7552
9691
|
}
|
|
7553
9692
|
const worldPos = posOrX;
|
|
7554
9693
|
const pos = this.worldPosToChunkPos(worldPos);
|
|
@@ -7567,10 +9706,10 @@ var Chunk = class _Chunk {
|
|
|
7567
9706
|
const readBlock = this.data.snapshot(index);
|
|
7568
9707
|
this.renderedBlocks.get(index)?.object.removeFromScene();
|
|
7569
9708
|
this.renderedBlocks.delete(index);
|
|
7570
|
-
if (!readBlock) return void 0;
|
|
7571
|
-
const stored = readBlock();
|
|
7572
9709
|
let object;
|
|
7573
9710
|
try {
|
|
9711
|
+
if (!readBlock) return void 0;
|
|
9712
|
+
const stored = readBlock();
|
|
7574
9713
|
const blockState = await BlockStates.get(AssetKey.parse("blockstates", stored.type));
|
|
7575
9714
|
if (!blockState) {
|
|
7576
9715
|
this.data.set(index, void 0);
|
|
@@ -7592,12 +9731,18 @@ var Chunk = class _Chunk {
|
|
|
7592
9731
|
this.data.set(index, void 0);
|
|
7593
9732
|
object?.removeFromScene();
|
|
7594
9733
|
throw error;
|
|
9734
|
+
} finally {
|
|
9735
|
+
await this.onBlocksChanged?.([worldPos]);
|
|
7595
9736
|
}
|
|
7596
9737
|
}
|
|
7597
9738
|
async clear() {
|
|
9739
|
+
const positions = [...this.renderedBlocks.keys()].map((index) => this.chunkPosToWorldPos(
|
|
9740
|
+
new import_three26.Vector3(index % 16, Math.floor(index / 256), Math.floor(index / 16) % 16)
|
|
9741
|
+
));
|
|
7598
9742
|
for (const info of this.renderedBlocks.values()) info.object.removeFromScene();
|
|
7599
9743
|
this.renderedBlocks.clear();
|
|
7600
9744
|
this.data.clear();
|
|
9745
|
+
await this.onBlocksChanged?.(positions);
|
|
7601
9746
|
}
|
|
7602
9747
|
async dispose() {
|
|
7603
9748
|
await this.clear();
|
|
@@ -7612,14 +9757,14 @@ var Chunk = class _Chunk {
|
|
|
7612
9757
|
return pos.y * 16 * 16 + pos.z * 16 + pos.x;
|
|
7613
9758
|
}
|
|
7614
9759
|
worldPosToChunkPos(pos) {
|
|
7615
|
-
return new
|
|
9760
|
+
return new import_three26.Vector3(
|
|
7616
9761
|
pos.x - this.x * 16,
|
|
7617
9762
|
pos.y - this.y * 16,
|
|
7618
9763
|
pos.z - this.z * 16
|
|
7619
9764
|
);
|
|
7620
9765
|
}
|
|
7621
9766
|
chunkPosToWorldPos(pos) {
|
|
7622
|
-
return new
|
|
9767
|
+
return new import_three26.Vector3(
|
|
7623
9768
|
this.x * 16 + pos.x,
|
|
7624
9769
|
this.y * 16 + pos.y,
|
|
7625
9770
|
this.z * 16 + pos.z
|